goproxy0 / goproxy

致敬@phuslu
146 stars 109 forks source link

goproxy vps 报错“acme/autocert: missing certificate” #24

Open ocdman opened 6 years ago

ocdman commented 6 years ago

请问各位,我半年前到现在使用goproxy-vps版本一切正常,今天下午上google的时候突然连不上。 查看了goproxy-vps的日志写到

2018/03/31 02:30:34 http: TLS handshake error from XXX.XXX.XX:52861: acme/autocert: no supported challenge type found 2018/03/31 02:30:34 http: TLS handshake error from XXX.XXX.XX:52862: acme/autocert: missing certificate 2018/03/31 02:30:36 http: TLS handshake error from XXX.XXX.XX:52867: acme/autocert: missing certificate

然后,我以http方式能够打开我的域名网址,但是https却不行

为什么以前我也没有配置证书,能够以https方式打开我的域名网址,现在却不能了?

ocdman commented 6 years ago

目前查下来的原因是 goproxy-vps使用了golang的acme/autocert库,这个库使用了Let’s Encrypt的tls-sni 协议实现自动签发证书。 而tls-sni-01协议由于可信的漏洞报告被Let’s Encrypt给禁用了,导致goproxy-vps无法自动创建证书。 解决办法是使用Let’s Encrypt提供的certbot工具来生成属于自己域名下ssl证书。详见https://goproxy0.github.io/discuss_history/goproxy/1470.html。 不过我生成的证书有时候会提示我不安全,但是第二天又安全了,反反复复的,不知道为什么。