我正在尝试为ssl配置mongodb。我在Ubuntu的目录中有两个证书,但是当我尝试在正确设置mongodb.conf的情况下重启服务时,该服务将无法启动。如果我注释掉我添加的mongodb.conf文件中的行,那么我可以启动mongodb。我认为语法是错误的,而不是证明他们自己。
#SSL options
sslMode = requireSSL
#Enable SSL on normal ports
#sslOnNormalPorts = true
# SSL Key file and password
sslPEMKeyFile = /path/to/cert
sslPEMKeyPassword = password
sslCAFile = /path/to/cert
当我尝试使用未注释掉的这些行启动服务器时出现此错误
停止:未知实例: mongodb启动/运行,进程7725
如果我尝试进入mongo shell我得到这个(假设这是因为我无法正常重启服务)
Thu Jul 21 14:32:07.660错误:无法连接到服务器127.0.0.1:27017 src / mongo / shell / mongo.js:145 异常:连接失败
答案 0 :(得分:1)
mongodb.conf文件是一个YAML文件,因此您需要将其格式化。意思是你不能使用标签。它看起来像你使用的语法不正确。
试试这个:
net:
#SSL options
ssl:
mode: requireSSL
# SSL Key file and password
PEMKeyFile: /path/to/cert
PEMKeyPassword: password
CAFile: /path/to/cert
另外,我知道它已被注释掉,但只是想提一下,不推荐使用sslOnNormal ports选项。见这里:https://docs.mongodb.com/manual/reference/configuration-options/#net.ssl.sslOnNormalPorts