![使用 OpenSSL 在 Apache 上生成密钥文件和 CSR](https://linux22.com/image/720324/%E4%BD%BF%E7%94%A8%20OpenSSL%20%E5%9C%A8%20Apache%20%E4%B8%8A%E7%94%9F%E6%88%90%E5%AF%86%E9%92%A5%E6%96%87%E4%BB%B6%E5%92%8C%20CSR.png)
我需要办理新的 SSL 证书,并且一直在关注本指南当他创建密钥和 CSR 时,他使用以下两个命令。
sudo openssl genrsa -out /opt/bitnami/apache2/conf/server.key 2048
sudo openssl req -new -key /opt/bitnami/apache2/conf/server.key -out /opt/bitnami/apache2/conf/cert.csr
这两个文件已存在于服务器上。我担心如果我删除它们并执行上述步骤,从而再次创建它们,会导致当前证书出现问题?我可以只运行命令并输出不同的文件吗?比如说这样?如果我这样做,我是否需要更改任何配置以反映这些新文件名?
sudo openssl genrsa -out /opt/bitnami/apache2/conf/server-new.key 2048
sudo openssl req -new -key /opt/bitnami/apache2/conf/server-new.key -out /opt/bitnami/apache2/conf/cert-new.csr
答案1
您绝对可以使用这些 openssl 命令来使用不同的输出文件路径,并且也许应该直到你获得实际的 SSL 证书。查看这些路径,/opt/bitnami/apache2/conf/server.key看起来与 Apache 正在使用的密钥非常相似。如果您用新密钥替换该密钥,Apache 可能会在重新启动后立即停止承载 HTTPS 请求。
请记住企业社会责任不是你的证书,而是请求其他人签署你的公钥。你可以把这些文件放在任何你喜欢的地方,只要你能跟踪它们。使用第一个命令在某个位置(如你的主目录)创建新的密钥文件。例如,如果我的 ssh 用户名是 sneakyimp,我可能会这样做:
# make a new directory for the new key and CSR
/home/sneakyimp/new-cert
# generate my private key
sudo openssl genrsa -out /home/sneakyimp/new-cert/server.key 2048
# generate the CSR:
sudo openssl req -new -key /home/sneakyimp/new-cert/server.key -out /home/sneakyimp/new-cert/cert.csr
然后,在我从 digicert 或 symantic 或其他机构收到证书后,我会将它们安装在我的 apache 配置文件中指定的适当位置。Apache 配置详细信息因操作系统和机器而异。