Anda mungkin ingin memeriksa apakah klien lambat melakukan enkripsi SSL atau tidak. Ini terjadi secara default ketika sudah diatur di server dan klien telah dikompilasi dengan dukungan SSL.
Untuk kueri yang mengambil data dalam jumlah besar, perbedaan waktunya signifikan. Juga beberapa distribusi Linux seperti Debian/Ubuntu memiliki SSL secara default, bahkan untuk koneksi TCP melalui localhost.
Sebagai contoh, inilah perbedaan waktu untuk kueri yang mengambil 1,5 juta baris dengan berat total 64Mbyte, dengan cache hangat.
Tanpa enkripsi:
$ psql "host=localhost dbname=mlists sslmode=disable" Password: psql (9.1.7, server 9.1.9) Type "help" for help. mlists=> \timing Timing is on. mlists=> \o /dev/null mlists=> select subject from mail; Time: 1672.258 ms
Dengan enkripsi:
$ psql "host=localhost dbname=mlists" Password: psql (9.1.7, server 9.1.9) SSL connection (cipher: DHE-RSA-AES256-SHA, bits: 256) Type "help" for help. mlists=> \o /dev/null mlists=> \timing Timing is on. mlists=> select subject from mail; Time: 7017.935 ms
Untuk menonaktifkannya secara global, seseorang dapat menyetel SSL=off
di postgresql.conf
.
Untuk menonaktifkannya untuk rentang alamat klien tertentu, tambahkan entri di pg_hba.conf
dengan hostnossl
di bidang pertama sebelum host
yang lebih umum entri.
Untuk mematikan jika dari sisi klien, itu tergantung pada bagaimana driver mengekspos sslmode
parameter koneksi. Jika tidak, PGSSLMODE
variabel lingkungan dapat digunakan jika driver diimplementasikan di atas libpq
.
Adapun koneksi melalui soket domain Unix (local
), SSL tidak pernah digunakan dengan mereka.