我正在将 mongodb 服务器移至 Ubuntu 机器上的生产环境。我获得了第三方签名的 SSL 证书并将其安装在服务器上。客户端可以使用其系统的 CA 连接到该证书并验证服务器的身份。
但是,mongodb 网站提到了客户端证书。由于 CA 是第三方,我能够生成它们吗?我尝试使用 openssl 通过传递我的服务器的证书和密钥来生成这些证书,但它还要求我提供server.srl
我没有的证书。我不确定该怎么做才能生成这些证书,或者我是否需要它们。我认为它们将增加一层安全性,因为除了他们验证我的身份之外,我还能够验证客户的身份。
谢谢!
答案1
“由于 CA 是第三方,我能生成它们吗?” 不!
为了生成证书(即签署证书请求),您需要签名证书的私钥。顾名思义,此密钥是私有的(即秘密)。
您可以向第三方索取另一份证书。这将是客户证书。然而,也许这家公司只提供服务器证书。
您可以自行创建 CA 证书和客户端证书。在 MongoDB 配置中,您可以分别为客户端证书和服务端证书指定 CA。
在 MongoDB 中,您可以将客户端证书“仅”用作证书,也可以使用它来代替用户名/密码进行身份验证。