mongo ssl 配置实战

【前言】
ssl配置流程步骤,按照以下顺序处理即可。
1.生成证书,根证书,服务端证书,客户端证书
2.配置服务端ssl配置,测试shell访问ssl的服务端,访问mongo

一【openssl】

服务端ssl配置。

1.1 生成根证书

#-x509: 用于生成自签证书,如果不是自签证书则不需要此项
#-days: 证书的有效期限,默认是365天
#直接带参数的输入,直接输密码即可
openssl req -out ca.pem -new -x509 -days 3650 -subj “/C=CN/ST=fujian/O=devops/CN=server1/CN=devops/[email protected]
#密码自行配置即可,passwd

1.2 生成服务端证书

生成服务器端私钥

openssl genrsa -out server.key 2048

生成服务器端申请文件 cat server.req

#CN=localhost 是mongo机器运行的节点域名信息,如果对不上就会报错
openssl req -key server.key -new -out server.req -subj “/C=CN/ST=fujian/O=devops/CN=server1/CN=localhost/[email protected]

生成服务器端证书

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

1.3 生成客户端证书

生成客户端私钥

openssl genrsa -out client.key 2048

生成客户端申请文件

#CN=localhost 是mongo服务的域名地址,这个需要根据自己业务进行修改处理
openssl req -key client.key -new -out client.req -subj “/C=CN/ST=fujian/O=devops/CN=server1/CN=localhost/[email protected]

生成客户端证书

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】

2.1 修改配置文件,mongodb.conf

增加以下ssl配置

sslOnNormalPorts = true
sslPEMKeyFile = /data/conf/server.pem
sslPEMKeyPassword = pass
sslCAFile = /data/conf/ca.pem

2.2 shell客户端连接方式

mongo --sslAllowInvalidCertificates --sslAllowInvalidHostnames --ssl --sslPEMKeyFile /data/conf/client.pem --sslCAFile /data/conf/ca.pem --host 127.0.0.1

2.3 navicat客户端连接配置
mongo ssl 配置实战_第1张图片

你可能感兴趣的:(数据库,ssl,服务器,运维)