Roo*_*lem 6 postgresql ssl pgbouncer
我有三台服务器,其中两台运行 postgres 9.5.3,第三台运行 pgbouncer 1.7.2。
我可以通过 pgbouncer 访问两个 postgresql 实例之一,一切都很完美。其他 postgresql 服务器,我们称之为 P1 不在我的控制之下,我必须使用 ssl 连接,因此它得到了,因此以下行被添加到该服务器 pga_hba.conf
hostssl all all ###.###.###.###/32 md5
Run Code Online (Sandbox Code Playgroud)
我可以使用 psql 从 pgbouncer 服务器连接到 P1,没有任何问题。但是当我通过 pgbouncer 连接到 P1 时,我收到此错误消息
psql: ERROR: no pg_hba.conf entry for host "XXX.XXX.XXX.XXX", user "myuser", database "mydb", SSL off
Run Code Online (Sandbox Code Playgroud)
这是我的 pgbouncer.ini
[databases]
my_database = host=xxx.xxx.xxx.xxxx port=5432 dbname=mydb user=myuser password=mypassword client_encoding='UTF8'
[pgbouncer]
listen_addr = *
listen_port = 5432
auth_type = md5
auth_file = /etc/pgbouncer/userlist.txt
logfile = /var/log/postgresql/pgbouncer.log
pidfile = /var/run/postgresql/pgbouncer.pid
admin_users = rms_admin
pool_mode = session
server_reset_query = DISCARD ALL
server_check_query = select 1
default_pool_size = 40
stats_period=300
log_pooler_errors = 1
Run Code Online (Sandbox Code Playgroud)
我尝试将sslmode=require添加到 my_database 的连接字符串上,并与ignore_startup_parameters结合使用,但这导致 pgbouncer log 中出现以下错误。
ERROR skipping database my_database because of unknown parameter in connstring: sslmode
Run Code Online (Sandbox Code Playgroud)
我怎样才能让 pgbouncer 建立一个 ssl 连接?
pgbouncer 和服务器之间的 TLS 不是通过连接字符串启用的,而是通过 启用的server_tls_sslmode,默认情况下禁用。
它至少应设置为,并且可能还需要prefer一些其他参数,具体取决于另一端的 TLS 配置。server_tls_*
有关所有详细信息,请参阅https://pgbouncer.github.io/config.html#tls-settings 。
| 归档时间: |
|
| 查看次数: |
7714 次 |
| 最近记录: |