在EC2内部为MongoDB启用TLS

oxf4rvwz  于 2022-10-04  发布在  Go
关注(0)|答案(1)|浏览(238)

我在AWS EC2示例中使用在docker内部运行的MongoDB。
我可以使用EC2示例的IP地址:mongosh "mongodb://<publicIp>:27017"直接连接到我的MongoDB。
由于此连接不安全,我想为MongoDB连接启用TLS加密。
你能告诉我怎么做吗?我可以在启用TLS的情况下将我的域用于MongoDB端点吗?
(例如:db.example.com:27017而不是<public ip>:27017)谢谢。

ibrsph3r

ibrsph3r1#

您需要遵循the documentation for configuring TLS on Mongodb。具体来说,在您的MongoDB配置中添加以下内容:

net:
   ssl:
      mode: requireSSL
      PEMKeyFile: /etc/ssl/mongodb.pem

客户端还必须使用TLS进行连接:

mongosh --ssl --host db.example.com --sslCAFile /etc/ssl/caToValidateServerCertificates.pem

请注意文档中的以下陈述:

从MongoDB 4.2开始,在进行SAN比较时,MongoDB支持比较DNS名称或IP地址。在之前的版本中,MongoDB只支持比较DNS名称。

因此,只要它在TLS证书的SAN中,您就可以使用DNS名称或IP地址。

相关问题