我在 PostgreSQL 数据库上启用了 SSL,并使用pg_hba.conf
以下行强制执行它:
hostssl all all 0.0.0.0/0 md5
从 PostgreSQL 连接日志和通过 tcpdump 捕获的网络流量来看,似乎正在建立 SSL 连接:
2024-10-20 10:12:16.140 UTC [63] LOG: connection authenticated: identity="user" method=md5 (/etc/postgresql/pg_hba.conf:136)
2024-10-20 10:12:16.140 UTC [63] LOG: connection authorized: user=user database=db SSL enabled (protocol=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384, bits=256)
然而,由于 Dovecot 和 PostgreSQL 运行在不同的机器上,并且证书及其 CA 在 Dovecot 机器上不受信任,我预计连接到 PostgreSQL 的 Dovecot 会标记自签名证书的问题,但没有出现任何投诉。这让我相信证书没有得到适当的验证,使连接容易受到 MITM(中间人)等攻击。
我是否缺少额外的配置或步骤来强制执行证书验证?如何确保连接安全并且证书得到正确验证?