有没有一种方法可以使用 certbot 和 LetsEncrypt 证书进行多服务器设置,而无需手动将证书从一个节点复制到另一个节点?
我的域名example.com
在美洲解析为 192.0.2.1,在亚洲解析为 192.0.2.2。
我从美国服务器运行 certbot,它成功生成了证书。我无法从亚洲服务器运行相同的命令,因为 certbot 只能将域解析为 192.0.2.1。
因此,为了安装亚洲服务器的证书,我必须将其从 192.0.2.1 复制到 192.0.2.2。
是的,复制过程可以编写脚本,尽管这对我来说似乎不是一个好主意。还有其他办法吗?
答案1
答案2
问题是您无法知道验证将从哪里运行。
您有两个通用解决方案:
- 在服务器之间复制证书+密钥。
- 暂时将您的域解析到一个位置,在那里颁发证书,然后将其解析到另一个位置并在那里颁发证书,最后翻转回水平分割。当您还想续订证书时,您必须重复此操作。
解决方案 2 是比复制证书+密钥更糟糕的做法。
考虑一下在 LetsEncrypt 之前您会如何解决这个问题:
- 在某处(管理工作站或服务器)生成密钥和 CSR
- 向 CA 提交 CSR
- 从 CA 获取证书
- 将密钥和证书推送到两台服务器。
从这个角度来看,将密钥/证书从一台服务器推送到另一台服务器并不是那么糟糕。