Сценарий: аутентификация PostgreSQL Server

Развернуть все | Свернуть все

Рекомендуется использовать TLS-сертификат для аутентификации сервера PostgreSQL. Вы можете использовать сертификат доверенного центра сертификации (CA) или самоподписанный сертификат.

Сервер администрирования поддерживает как одностороннюю, так и двустороннюю SSL-аутентификацию для PostgreSQL.

Аутентификация сервера PostgreSQL состоит из следующих этапов:

  1. Генерация сертификата для сервера PostgreSQL

    Выполните следующие команды:

    openssl req -new -x509 -days 365 -nodes -text -out psql.crt -keyout psql.key -subj "/CN=psql"

    chmod og-rwx psql.key

  2. Генерация сертификата для Сервера администрирования

    Выполните следующие команды. Значение CN должно соответствовать имени пользователя, который подключается к PostgreSQL от имени Сервера администрирования. По умолчанию имя пользователя – postgres.

    openssl req -new -x509 -days 365 -nodes -text -out postgres.crt -keyout postgres.key -subj "/CN=postgres"

    chmod og-rwx postgres.key

  3. Настройка аутентификации клиентского сертификата

    Измените pg_hba.conf следующим образом:

    hostssl mydb myuser 192.168.1.0/16 scram-sha-256

    Убедитесь, что в pg_hba.conf нет записи, начинающейся с host.

  4. Задание сертификата PostgreSQL

    Односторонняя SSL-аутентификация

    Двусторонняя SSL-аутентификация

  5. Перезапуск демона PostgreSQL

    Выполните следующую команду:

    systemctl restart postgresql-14.service

  6. Задание флага сервера для Сервера администрирования

    Односторонняя SSL-аутентификация

    Двусторонняя SSL-аутентификация

  7. Перезапуск службы Сервера администрирования
В начало