我在英国有一个网站,在南非也有一个组织在线托管我的公司应用程序以供网络访问。
我想为两台服务器实现 SSL,因为它需要从不同地方和不同的人登录。
是否可以只购买一以公司名义为一个域名颁发 SSL 证书,并将其用于两个目的?颁发 CSR 会有冲突吗?
答案1
是的,这是可能的。您只需要从生成 CSR 的服务器获取私钥。将该私钥连同 SSL 证书和 CA Bundle 一起传输到两个服务器。
但是,如果您在第二台服务器上使用子域,那么您将需要通配符 SSL 或多个 SSL 证书。
答案2
如果两个位置使用相同的 URL,则不会出现任何问题。如果您也想只使用一个证书,则可以购买多 SAN 证书以在两个位置使用。
SSL 的工作原理是将您访问的 URL 与服务器上的 CN(或 SAN)进行匹配,如果它们匹配(并且证书有效且未在 CA 的 CRL 中列出),那么客户端就会很高兴……否则您将在客户端收到证书错误。
答案3
在两台不同的服务器上使用您的证书不会产生任何冲突。通常,您可以为您的域订购一个证书,并将其安装到任意数量的物理服务器上。您唯一需要的是您的私钥。您可以从创建 CSR 的初始服务器获取私钥,并在所需的服务器上使用它。
或者您可以选择从安装了证书的服务器将证书导出为 pfx 文件。通过 open ssl 命令。
openssl pkcs12 -export -in my.crt -inkey my.key -certfile my.bundle -out my.pfx
要在服务器上安装证书,您可以将私钥从 pfx 文件中分离出来并在新服务器上使用它。
将证书和私钥提取到单独的 PEM 文件中
openssl pkcs12 -in yourP12File -nocerts -out privateKey.pem
换句话说,一些证书颁发机构(如 comodo)将免费提供已颁发证书的替换。您也可以向 CA 查询替换情况。因此,您只需在新服务器上重新创建新的 CSR 并重新颁发即可。因此,您可以毫无困难地安装重新颁发的证书。