我在开发环境中有 3 个分片服务器、3 个配置服务器和 1 个 mongos 服务器的集群。我希望 Mongo 组件之间的通信强制使用 TLS,而应用程序和 mongos 之间的通信则作为非 TLS。因此,我仅在分片和配置中启用 requireTLS 模式,并在 mongos 服务器中启用 preferTLS 模式,因此与 mongos 通信的应用程序不需要提供任何 TLS 证书。我已启用设置,集群当前在开发中运行良好。但是我在 mongos 日志中收到一条日志消息,这是什么意思?这在技术上正确吗,requireTLS(mongod) + PreferredTLS(mongos)?
日志
SSL 模式设置为“首选”并且未使用与远程的连接 SSL
我查看了我的 MongoDB,日志显示:
{
"t": { "$date": "2024-02-14T11:57:37.397+01:00" },
"s": "I",
"c": "NETWORK",
"id": 23838,
"ctx": "conn69",
"msg": "SSL mode is set to 'preferred' and connection to remote is not using SSL.",
"attr": {
"connectionId": 69,
"remote": "10.192.241.225:45516"
}
}
但这只是一个信息(
"s": "I"
)。是的,日志消息“连接到远程...”有点误导。应该是“来自远程的连接”或“传入的连接”更好
除非您使用 x.509 证书来验证客户端,否则
net.tls.allowConnectionsWithoutCertificates: false
不需要 net.tls.CAFile
参数。
另一方面,设置
net.tls.CAFile
不会破坏任何东西。