mongodb配置ssl连接
mongodb5.0.9 | |
centos7.6 | x86 |
1、正常启动mongod -f mongodb.conf
2、生成所需要的ssl证书
服务端ssl配置:
2.1生成ca.pem证书
#-x509: 用于生成自签证书,如果不是自签证书则不需要此项
#-days: 证书的有效期限,默认是365天
#直接带参数的输入,直接输密码即可
openssl req -out ca.pem -new -x509 -days 3650
CN、cjp、devops、localhost、localhost、localhost
密码配置随意即可,我这里配置123456
2.2生成服务端证书
生成服务器端私钥
openssl genrsa -out server.key 2048
生成服务器端申请文件 cat server.req
#CN=localhost 是mongo机器运行的节点域名信息,如果对不上就会报错
openssl req -key server.key -new -out server.req
CN、CJP、devops、localhost、localhost、localhost
生成服务器端证书
openssl x509 -req -in server.req -CA ca.pem -CAkey privkey.pem -CAcreateserial -out server.crt -days 3650
合并服务器端私钥和服务器端证书,生成server.pem
cat server.key server.crt > server.pem
校验服务器端pem文件
openssl verify -CAfile ca.pem server.pem
2.3 生成客户端证书
生成客户端私钥
openssl genrsa -out client.key 2048
生成客户端申请文件
#CN=localhost 是mongo服务的域名地址,这个需要根据自己业务进行修改处理
openssl req -key client.key -new -out client.req
CN、CJP、devops、localhost、localhost、localhost
生成客户端证书
openssl x509 -req -in client.req -CA ca.pem -CAkey privkey.pem -CAserial ca.srl -out client.crt -days 3650
合并客户端私钥和客户端证书,生成client.pem
cat client.key client.crt > client.pem
校验客户端pem文件
openssl verify -CAfile ca.pem client.pem
二【mongodb 配置ssl】
3.1 修改配置文件,mongodb.conf
增加以下ssl配置(添加成功后重启mongodb数据库)
sslOnNormalPorts = true
sslPEMKeyFile = /data/conf/server.pem
sslPEMKeyPassword = pass
sslCAFile = /data/conf/ca.pem
4、下载client.pem、ca.pem到本地
5、连接测试