我正在将我的 API 迁移到新服务器,新旧服务器都在 Ubuntu 20.04 和 Nginx 上运行。我的 SSL 证书是由 certbot 生成的。我应该在新服务器上生成新证书还是从旧服务器复制证书?生成新证书会给我的客户带来任何问题吗,尤其是对于原生 Android 应用程序?客户会保留旧证书详细信息多长时间?
答案1
证书与 DNS/主机名相关联,而不是与特定服务器相关联。因此,可以将证书从旧服务器复制/迁移到新服务器,以准备更改 DNS 记录并作为迁移策略的一部分。
另外,请考虑一下,例如,当您使用 HTTP 质询来生成/续订 的证书时api.example.com
;当 的 DNS 记录尚未更新且仍指向您的旧服务器时,您无法在新服务器上轻松(提前)执行此操作api.example.com
。那么迁移现有证书也是有意义的。
生成新证书会给我的客户带来任何问题吗,尤其是对于原生 Android 应用?客户会保留旧证书详细信息多长时间?
通常,每次建立新连接时,客户端都会验证服务器证书。(这就是为什么 TLS 连接通常会保持更长时间,并重新用于后续请求,而不是为每个请求建立新连接。)当 DNS 记录更新生效时,这些现有连接将被丢弃。
切换服务器时的主要风险可能不在于更改的证书,而在于新服务器使用不同的(更)安全的加密密码,并且不再支持旧的和古老的设备所依赖的传统密码。