【发布时间】:2012-12-10 21:56:38
【问题描述】:
我正在尝试为 PostgreSQL 服务器配置 ssl 证书。我在数据目录中创建了证书文件(server.crt)和密钥(server.key),并将参数 SSL 更新为“on”以启用安全连接。
我只希望服务器在客户端使用服务器证书进行身份验证,而不需要服务器端客户端的真实性。我使用 psql 作为客户端来连接和执行命令。
我正在使用 PostgreSQL 8.4 和 Linux。我尝试使用以下命令连接到启用 SSL 的服务器
psql "postgresql://localhost:2345/postgres?sslmode=require"
但我得到了
psql: invalid connection option "postgresql://localhost:2345/postgres?sslmode"
这里做错了什么?我尝试连接到启用 SSL 模式的服务器的方式是否正确?只验证服务器而不验证客户端可以吗?
【问题讨论】:
-
打算使用端口 2345 而不是默认的 5432?
-
是的。这是配置的端口。
-
如果您希望连接安全免受 MITM 攻击,请使用
sslmode=verify-full,而不仅仅是require。
标签: postgresql ssl ssl-certificate postgresql-8.4