我有一个 Nginx/Gunicorn/Django Web 服务器和 PostgreSQL 数据库服务器,我只想使用 SSL 访问它们。我已经从证书颁发机构购买、安装并配置了 Web 服务器上的证书,因此现在我的用户只能通过 HTTPS 访问我的网站,并且一切正常。现在我想通过 SSL 在我的 Web 服务器和数据库服务器之间实现安全的双向通信。由于与我的数据库服务器通信的唯一机器是我的 Web 服务器,从安全角度来看,使用 openssl 命令(“自签名”)生成我自己的私钥和证书可以吗?还是我应该从 letsencrypt.org 等网站获取免费的?
答案1
只要签名者值得信任,使用自签名证书本身并没有什么问题。您应该像管理任何证书一样小心管理密钥。由于没有链,因此确定证书是否已更改可能会更加困难,但无论如何,这仍然是您应该注意的事情。
如果您需要注意任何证书检查,这将有助于了解您正在使用的数据库服务器。
Postgres 澄清后进行编辑:
我没有使用 Postgres,但看起来你不会遇到任何问题。下面是有关如何设置的文档链接。