Memaksa klien PostgreSQL untuk menggunakan SSL?

29

Saya telah dikonfigurasi ssl = ondi postgresql.conf(dan memasang sebagainya sertifikat). Apakah ini memastikan bahwa semua klien akan selalu terhubung melalui SSL?

(Yaitu apakah ssl = onitu membuat tidak mungkin untuk terhubung tanpa enkripsi SSL?)

Adakah cara lain untuk memastikan bahwa semua klien selalu terhubung melalui SSL / TLS?

Salam, KajMagnus

KajMagnus
sumber

Jawaban:

27

ssl = on hanya memungkinkan kemungkinan menggunakan SSL.

Untuk memastikan bahwa semua klien menggunakan SSL, tambahkan hostsslbaris pg_hba.conf, misalnya,

hostssl  all  all  0.0.0.0/0  md5

dan hapus semua hostbaris. (Yah, mungkin simpan yang itu localhost.)

Peter Eisentraut
sumber
Saya telah mengatur semua pengaturan di postgresql.confdan pg_hba.conf. Namun saya masih dapat terhubung dengan sslmode=disable. mis. psql "sslmode = disable host = localhost dbname = test" Apakah saya ketinggalan sesuatu di sini?
Andy Aldo
@AndyAldo One perlu melihat seluruh konfigurasi untuk menganalisisnya. Itu di luar jangkauan di sini.
Peter Eisentraut
13

Tidak, itu hanya memungkinkan penggunaan SSL. Anda juga perlu membuat perubahan yang sesuai pada file pg_hga.conf Anda .

gsiems
sumber
2
Oh, saya pasti salah membaca dokumen: Saya pikir hostsslmengharuskan klien untuk memberikan sertifikat SSL sendiri, tetapi sekarang saya perhatikan bahwa ada certmetode otentikasi yang dapat saya tentukan di pg_hga.conf.
KajMagnus
(Terima kasih, saya akan mengangkat jawaban Anda nanti ketika saya memiliki 15 rep yang diperlukan.)
KajMagnus