Let's Encrypt 证书注册续订失败:四类原因排查与端口 80 三步测试
症状与四类原因
证书申请一直报错、续订失败,在群晖设备上多数逃不出四类原因:
- 证书是从别的设备导出后导入的——官方口径明确:导入的 Let’s Encrypt 证书无法在本机续订,要恢复自动续订,得回原始设备重新获取;
- 申请时填了主域名加多个主题备用名称,但并非所有域都指向这台设备的公网 IP;
- Synology DDNS 还没激活,就拿它注册或续订证书;
- 注册或续订途中更改过 Synology DDNS 主机名。
版本上还有一道底线:Let’s Encrypt 的旧根证书 2021 年 9 月底已过期,DSM 要 6.2.4 Update 2 及以上、SRM 要 1.2.3 及以上才能正常获取证书,老机器先升版本再谈排障。
处置一:域名指向双查法
第一条处置是把域名与 IP 的对应关系查实。A 记录(IPv4 环境)应把设备的完全限定域名正确指到这台设备;IPv6 环境对应查 AAAA 记录。
两步对账:先在电脑上跑 nslookup 设备域名,拿到域名当前解析到的 IP;再通过 SSH 登录设备,执行 curl checkip.synology.com(IPv6 环境用 curl checkipv6.synology.com)拿到设备真实的公网出口 IP。两个 IP 对不上,就联系 DNS 主机或域名供应商更正 A/AAAA 记录。给 Chat 之类服务配过子域名的,子域的记录也要照此查一遍。
处置二:端口 80 三步测试
走 HTTP-01 验证的证书,网络包必须能从上级路由器的端口 80 转发到这台设备的端口 80。转发是否真通,用三次访问来验证:
- 局域网内的浏览器,打开设备内网 IP 的 http 页面;
- 局域网内的浏览器,打开设备域名的 http 页面;
- 到局域网之外,再用浏览器打开同一域名。
三次看到同一个页面,端口 80 的转发才算落位。用 Synology DDNS 注册证书的,这条可以跳过。
诚鑫致达科技给每张证书建一行小账:哪个域、走哪种验证、证书是本机申请还是别处导入——排障先翻这行账再动手,导入来的那张会被提前标上不能自动续订。