我根据MongoDB官方网站上的说明创建了证书,但是它不能正常工作。
我有一套复制件和自签名证书。
我需要对复制成员之间的通信进行完全加密。如何正确设置这些副本成员?如何输入MongoDB外壳呢?
我根据说明在mongod.conf中创建了证书:
sslMode = requireSSL
sslPEMKeyFile = /etc/ssl/mongo.pem ...然后尝试添加参数:
sslCAFile = /etc/ssl/mongo.crt并试图进入:
mongo --ssl --sslPEMKeyFile /etc/ssl/mongo.pem --sslCAFile /etc/ssl/mongo.pem or
mongo --ssl --sslPEMKeyFile /etc/ssl/mongo.pem --sslCAFile /etc/ssl/mongo.crt 我知道错误- The server certificate does not match the host name.
如果我使用客户端证书,那么错误:SSL peer certificate validation failed:self signed certificate。
蒙神服务已经启动并运行。Mongo版本- 3.0.2。CentOS6.5 x64.
我浏览了很多链接,但没有找到一个可行的解决方案。
如果可能的话,你能告诉我步骤吗?
发布于 2015-06-25 09:52:59
创建自签名证书时,需要在“公共名称”字段中使用有效的主机名,例如:
通用名称(例如,您的名称或服务器主机名) []:host.domain.com
如果要使用域证书,则需要将“主机”更改为"*",例如:
通用名称(例如,您的名称或服务器主机名) []:*.domain.com
发布于 2016-11-17 15:17:54
可以强制mongo忽略与allowInvalidHostnames 配置选项不匹配的证书主机名。
net.ssl.allowInvalidHostnames类型:布尔值默认值:Version3.0中的False。当net.ssl.allowInvalidHostnames为真时,MongoDB将禁用TLS/SSL证书中主机名的验证,如果主机名的证书与指定的主机名不匹配,则允许蒙神连接到MongoDB实例。在3.0版本中更改:大多数MongoDB发行版现在都包括对TLS/SSL的支持。有关TLS/SSL和MongoDB的更多信息,请参见配置TLS/SSL和TLS/SSL客户端的TLS/SSL配置。
https://dba.stackexchange.com/questions/99219
复制相似问题