问题描述
我在获取 mongodump 时遇到问题。我有 mongodb 4.4,为服务器端和客户端启用了 ssl/Tls。
但是在进行转储时出现以下错误:
2021-03-11T15:57:55.639+0530 失败:无法创建会话:配置连接器时出错:配置客户端时出错,无法加载客户端证书:tls:私钥类型与公钥类型不匹配
虽然我可以使用 mongo shell 登录。
mongo -u ms -p --authenticationDatabase "admin" --tls --tlsCAFile /etc/mongodb/ssl/ca-mongo.crt --tlsCertificateKeyFile /etc/mongodb/ssl/host1.pem --host host1
解决方法
在命令中添加 --tlsAllowInvalidHostnames
。它禁用主机名验证
完整命令
mongo -u ms -p --authenticationDatabase "admin" --tlsAllowInvalidHostnames --tls --tlsCAFile /etc/mongodb/ssl/ca-mongo.crt --tlsCertificateKeyFile /etc/mongodb/ssl/host1.pem - -host 主机 1
https://docs.mongodb.com/manual/reference/program/mongo/#cmdoption-mongo-tlsallowinvalidhostnames
如果您使用的是 4.2 或更低版本,则必须使用 --sslAllowInvalidHostnames
。 https://docs.mongodb.com/manual/reference/program/mongo/#cmdoption-mongo-tlsallowinvalidhostnames