Примусити клієнтів PostgreSQL використовувати SSL?


29

Я налаштував ssl = onв postgresql.conf(і встановлений сертифікат Etcetera). Чи гарантує це, що всі клієнти завжди підключатимуться через SSL?

(Тобто ssl = onце робить неможливим з'єднання без шифрування SSL?)

Чи є інші способи гарантувати, що всі клієнти завжди підключаються через SSL / TLS?

З повагою, KajMagnus

Відповіді:


27

ssl = on дозволяє лише використовувати SSL.

Щоб усі клієнти використовували SSL, додайте hostsslрядки pg_hba.conf, наприклад,

hostssl  all  all  0.0.0.0/0  md5

і видаліть усі hostрядки. (Ну, можливо, збережіть їх localhost.)


У мене встановлені всі налаштування в postgresql.confі pg_hba.conf. Однак я все ще можу зв'язатись sslmode=disable. наприклад, psql "sslmode = відключити хост = localhost dbname = тест" Я щось тут пропустив?
Енді Альдо

@AndyAldo Для аналізу цього потрібно було б переглянути всю конфігурацію. Це поза сферою.
Пітер Ейзентраут

13

Ні, це просто дозволяє використовувати SSL. Вам також потрібно внести відповідні зміни у файл pg_hga.conf .


2
О, я, мабуть, неправильно прочитав документи: я вважав, що hostsslвимагає від клієнта надати свій власний сертифікат SSL, але тепер я помітив, що існує certметод автентифікації, який я можу вказати в pg_hga.conf.
KajMagnus

(Дякую, я відповім на вашу відповідь пізніше, коли у мене будуть потрібні 15
повторів
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.