赛捷软件论坛's Archiver

lynn.yu 发表于 2019-12-27 17:01

[PU9功能解说] 如何用你自己的证书确保MongoDB连接的安全性?

[b]* 本文由赛捷软件(上海)有限公司翻译完成,未经授权不得转载。如需转载,请先联系相应版块的版主取得授权。[/b]



从PU9开始,你可以使用证书来确保MongoDB连接安全性,并且在安装MongoDB的过程中,你可以选择使用简化证书安装(自签名)或使用自己现有的证书。

在本文中,我想探讨一下从简化证书切换所需的步骤,以及如何用你现有的证书确保连接的安全性。

在我们开始之前,请查看关于“如何确保mongoDB访问安全”的在线帮助

[attach]5761[/attach]

此外,查看一下MongoDB教程“使用x.509证书验证客户端”也是不错的注意。

在这个示例中,我使用另一台服务器上的证书生成器生成了CA证书文件和服务器证书文件以及私钥文件,并且我将使用这些证书重做我的MongoDB连接的SSL证书。下面就是我要用来确保MongoDB安全性的文件。

[attach]5762[/attach]

步骤如下。

1.        确定MongoDB安装程序。
2.        按照提示更改现有的MongDB安装。
3.        勾选重做ssl配置复选框。

[attach]5763[/attach]

4.        选择“使用现有证书”。

[attach]5764[/attach]

5.        在此处输入所有正确的信息,你需要这些信息来提供服务器证书文件、私钥、CA证书和密码短语(如果有的话)。

[attach]5765[/attach]

6.        点击下一步,然后按照提示完成安装。

7.        完成上述步骤后,在你的MongoDB证书目录中你会找到如下两个文件。

[attach]5766[/attach]

8.        以上是MongoDB使用的服务器证书,现在需要生成一个客户端证书供Syracuse / Web服务器使用。要想生成客户端证书,你需要使用OpenSSL。

9.        所以首先,我会使用以下命令一个client.csr和client.key

10.        请注意,如MongoDB教程中所述,使用的公用名称必须与服务器证书中的公用名称不同。

11.        openssl req –newkey rsa:2048 –keyout client.key –out client-req.csr

[attach]5767[/attach]

12.        上述步骤创建了一个Client.key和client-req.csr

13.        现在,使用以下命令创建client.crt(请注意,你必须提供cs.cacrt和ca.cakey)

[attach]5768[/attach]

14.        上述步骤创建了一个client.crt证书文件。

15.        接下来,用以下命令删除加密密钥。

[attach]5769[/attach]

16.        然后,使用copy语句将client-nokey.key和client.crt合并到PEM文件中。

[attach]5770[/attach]

17.        通过上述步骤,你就有了一个client.pem文件。

18.        将client.pem和ca.cacrt文件复制到你的Syracuse MongoDb cert目录中。

[attach]5771[/attach]

19.        重启Syracuse服务。


[b]结论:[/b]通过上述步骤,你可以创建一个客户端证书,并使用该证书确保Syracuse和MongoDB之间连接的安全性。

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.