PostgreSQLのwithssl

PostgresqlのサポートSSL証明書は、どこで通常の状況下では、サーバとクライアントの間でPostgreSQLのデータ伝送はクリアテキストで送信され、これは、特定のセキュリティリスクを持っていること。

暗号化はサービス終了OpenSSLがインストールされた後、あなたはopensslのコマンドを使用することができるためには、データの暗号化と復号化用の秘密鍵と証明書のペアを生成する必要がある場合は、設定ファイルには、マイナーな変更することができます。

 

1.利用OpenSSLが秘密鍵と証明書を生成するには、達成するためのシェルスクリプトを書くことができます。

OpenSSLのREQ -nodes -new -text -subj "/ C = CH / ST =上海/ L =済南/ O = HighGo / CN = tbing"アウトserver.req 
OpenSSLのRSA -in privkey.pemアウト./server。キー
opensslのREQ -x509 -in server.req -text -key ./server.key -out ./server.crt 
CPサーバー。* $ PGD​​ATA /../ data5433 / 
chmodの600 $ PGD​​ATA /../ data5433 /サーバー。キー$ PGD​​ATA /../ data5433 /をserver.crt

スクリプトファイルを実行する前に、環境変数の良いデータディレクトリを定義するノート。server.keyの秘密鍵と証明書をserver.crt:スクリプトを実行した後は、データディレクトリ内の2つのファイルを検索します。これらの2つのキーがそれ以外の場合は、データベースが起動しません、シェルスクリプトのパーミッションを変更する必要があります。

2. [変更postgresql.conf設定ファイル、オープンSSL接続。

SSL =上                               
のssl_ciphers = 'HIGH:MEDIUM:+ 3DES:!aNULL'                                        
ssl_prefer_server_ciphers =上        
ssl_ecdh_curve = 'prime256v1'          
たssl_cert_file = 'をserver.crt'           
ssl_key_fileの= 'server.keyの'

 hostssl 3.修正pg_hba.confのプロファイルが接続されています。

hostsslすべてすべて0.0.0.0/0 md5の

4有効な構成

pg_load_confを選択します();

5データベース、暗号化されたディスプレイに接続

[postgresの@ kbj-DB-1〜] $ psqlの-p5433 -hlocalhost -Upostgreadm -dpdb 
ユーザーktccadmin用パスワード:  
psqlの(11.4)
SSL接続(プロトコル:TLSv1.2、暗号:ECDHE-RSA-AES256-GCM-SHA384、ビット:256、圧縮:オフ)
の助けを入力し、「ヘルプ」。

6 Etherealの表示

暗号化前:

tcpdumpの-t -s 0 -c 20 のIP ホスト172.17.16.12 172.17.16.9、ポート5433 -w ./potgresql-ssl_4.cap

clipboard.png

暗号化:

clipboard1.png

spacer.gif



おすすめ

転載: blog.51cto.com/snowhill/2478010