PostgreSQL:带有 TCP 连接的 SSL
Posted
技术标签:
【中文标题】PostgreSQL:带有 TCP 连接的 SSL【英文标题】:PostgreSQL : SSL with TCP connections 【发布时间】:2013-11-06 15:11:32 【问题描述】:我正在尝试为 PostgreSQL 配置 SSL 通信。 我有一个自签名证书,我正在按照 URL“http://www.postgresql.org/docs/9.2/static/ssl-tcp.html”中指定的这些说明进行操作。
当我使用自签名证书配置 SSL 时,根据文档,服务器将在启动时提示输入(私钥的密码)密码。 我的 PostgreSQL 作为 Windows 服务安装。所以,我希望我的服务在没有任何用户干预的情况下启动。有没有办法配置私钥密码,让我的数据库服务正常启动。
【问题讨论】:
您是否尝试从证书中删除密码? 是的,如果我们使用没有密码的证书作为私钥,postgresql 可以正常启动。但是,我使用的是 Java 的 Keytool,它不允许你生成没有密码的证书。 OpenSSL 将允许您这样做,但我尽可能不想使用 3rd 方库。 【参考方案1】:即使有可能,这也是个坏主意。通过将密钥和密码放在服务器进程可以看到的地方,您几乎不会获得额外的安全性。这会增加一种虚假的安全感,并增加发生坏事的可能性。
如果您的工具不会为您提供无密码密钥,请使用其他工具。
【讨论】:
以上是关于PostgreSQL:带有 TCP 连接的 SSL的主要内容,如果未能解决你的问题,请参考以下文章
无法使用 PostgreSQL JDBC 驱动程序通过 SSL 连接
带有 SSL 证书的 Net.TCP 是不是可以在 Internet 上使用
使用 TCP 的 App Engine PostgreSQL 连接错误
mod_proxy,mod_ssl,带有 SSLProxyEngine 到内部 F5...内部 F5 向 apache 发送 TCP RESET