
一年多了之前 Renew 都是正常的,就在双十一当天 Renew 一直失败,各位 V 友有遇到这种情况吗?有思路的给个提示,下面是部分信息。
api.xxxx.xx,域名在阿里云管理,DNS 配的 A 记录standalone 模式, Renew 前已经把本地的 Nginx 关闭了。80、443 端口没被占用Renew 也是一样的错部分错误日志如下:
{ "identifier": { "type": "dns", "value": "api.xxxx.xx" }, "status": "invalid", "expires": "2018-11-18T15:33:56Z", "challenges": [ { "type": "http-01", "status": "invalid", "error": { "type": "urn:ietf:params:acme:error:connection", "detail": "Fetching http://api.xxxx.xx/.well-known/acme-challenge/xxxxxxxx: Error getting validation data", "status": 400 }, "url": "https://acme-v02.api.letsencrypt.org/acme/challenge/jgMy9WxHILHaUScF9joUpdXZ7uCRDSM2mabGDDn_22k/9189513629", "token": "xxxxxxxx", "validationRecord": [ { "url": "http://api.xxxx.xx/.well-known/acme-challenge/xxxxxxxx", "hostname": "api.xxxx.xx", "port": "80", "addressesResolved": [ "xx.xxx.xx.xx" ], "addressUsed": "xx.xxx.xx.xx" } ] } ] } 2018-11-11 23:35:02,624:DEBUG:certbot.reporter:Reporting to user: The following errors were reported by the server: Attempting to renew cert (api.xxxx.xx) from /etc/letsencrypt/renewal/api.xxxx.xx.conf produced an unexpected error: Failed authorization procedure. api.xxxx.xx ( http-01): urn:ietf:params:acme:error:connection :: The server could not connect to the client to verify the domain :: Fetching http://api.xxxx.xx/.well-known/acme-challenge/k9NoezsP97OBAnv0hP_a6jbV_9OKhFey5QOqt9ON2nk: Error getting validation data. Skipping. All renewal attempts failed. The following certs could not be renewed: /etc/letsencrypt/live/api.xxxx.xx/fullchain.pem (failure) Letsecrypt Server 再使用 HTTP 协议验证的时候会被腾讯云墙。当前也发现一个绕过墙方法,使用 tls-sni renew 证书。TLS-SNI-01 is deprecated, and will stop working soon.,但是现在至少还能用,再用一段时间,实在不行就只能接入备案了。 1 Cherishxxyy 2018-11-13 20:40:03 +08:00 根据你的描述判断,你用的是 Let's Encrypt 的 SSL 证书,使用的是阿里云的域名,不知道用的是哪家的服务器,但是该问题可能出在你的 DNS or SSL 证书 or Nginx 配置,这个和腾讯云没多大关系吧。。。 |
2 Dk2014 2018-11-13 20:46:48 +08:00 acme 命令呢,不清楚你这到底是用哪个模式 |
3 ahu 2018-11-13 21:03:58 +08:00 via Android 不知道双十一当天腾讯的 dns 挂了吗?那怎么能成功! |
4 ywgx 2018-11-13 21:06:02 +08:00 via iPhone 和良心云无关 |
5 zealzz OP @Cherishxxyy 虚拟机是腾讯云的,实在找不到问题,给腾讯云提了个工单,日志作为附件。小哥给我接了个日志的报错图。我想说我又不瞎能看到啊,感觉也应该和云关系不大,防火墙啥的也没开。真是蛋疼。接下来只能来研究工具的文档了,看看能不能 debug 一下。 |
9 danc 2018-11-13 22:36:59 +08:00 升级 acme,apt update && apt upgrade,关闭 nginx 其他占用 80 和 443 端口的服务,service nginx stop |
10 BOYPT 2018-11-14 00:02:13 +08:00 你自己从第三方访问 http://api.xxxx.xx/能正确返回吗?也有可能你这个域名没备案,被腾讯云墙了。 |
11 zealzz OP @BOYPT 主域名在阿里云备案了,虚拟机在腾讯云上,证书过期之前访问一直是正常的。我明天吧 https 去掉看看 http 是否能正常访问。 |
13 zwh2698 2018-11-14 05:59:16 +08:00 via Android 删掉,重新申请,就可以 |
14 zealzz OP @BOYPT 大胸弟,正解。的确是因为备案的原因。因为被腾讯云墙了所以 Letsencrypt 无法验证证书。发现一个方法 使用 tls-sni 可以绕过腾讯云的墙。 |