公式サイト
32.1. Database Connection Control Functions
32.1. データベース接続制御関数
32.18. SSL Support
32.18. SSLサポート
SSL接続する
sslmode
require
SSL接続のみ試行し、ルートCAファイルが存在する場合は、verify-caが指定されときと同じ方法で証明書を検証する。
$ psql 'postgres://<username>:<password>@<host>:<port>/<database>?sslmode=require'
verify-ca
SSL接続のみ試行し、サーバー証明書が信頼できる認証局(CA)によって発行されていることを確認する。
$ psql 'postgres://<username>:<password>@<host>:<port>/<database>?sslmode=verify-ca'
verify-full
SSL接続のみ試行し、サーバー証明書が信頼できるCAによって発行され、要求されたサーバーのホスト名が証明書のホスト名と一致することを確認する。
$ psql 'postgres://<username>:<password>@<host>:<port>/<database>?sslmode=verify-full'
接続モードの確認
SSL接続が有効であれば、接続した際にSSL接続の暗号化形式などが表示される。
$ psql postgres://<username>:<password>@<host>:<port>/<database>
psql (9.6.1)
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
Type "help" for help.
xxxxx=>