Я хочу подключиться к моей базе данных Postgres 8.3 с помощью SSL от моего клиента XP с помощью OpenSSL. Это прекрасно работает без SSL. Когда я пробую использовать SSL (без сертификата клиента), я получаю сообщение об ошибке:
error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure
Я выполнил инструкции из руководства Postgres для SSL, включая создание самозаверяющего сертификата. В моем pg_hba.conf есть строка:
host dbname loginname 123.45.67.89/32 md5
Версия OpenSSL на сервере - 0.9.8g, а на клиенте - 0.9.8j. Буду признателен за любые предложения по отслеживанию проблемы.
Редактировать:
Раскомментированные строки из postgresql.conf:
data_directory = '/var/ebs0/postgres/main'
hba_file = '/etc/postgresql/8.3/main/pg_hba.conf'
ident_file = '/etc/postgresql/8.3/main/pg_ident.conf'
external_pid_file = '/var/run/postgresql/8.3-main.pid'
listen_addresses = '*'
port = 5432 max_connections = 100
unix_socket_directory = '/var/run/postgresql'
ssl = true
shared_buffers = 24MB
Я предполагаю, что вы пытаетесь передать ssl соединению, которое этого не ожидает. Вы можете попробовать использовать hostssl, а не host, но для вас будет полезнее показать ваш файл postgresql.conf, в котором должны быть указаны ваши параметры конфигурации SSL.