September 24, 2020

解决国外https证书连接缓慢

最近使用acme.sh申请的let's encrypt证书,发现访问的时候ssl连接十分缓慢

最初以为是nginx配置的问题,网上搜到的各种优化办法都没有解决,后来偶然间看到一篇ios优化ssl的文章,是因为证书检查服务器被墙的原因,你在哪申请的证书就要访问那里检查,国内let's encrypt的服务器很慢,所以会引起这样

使用Let’s Encrypt证书的网站在苹果系统打开很慢,Safari,IOS SSL引起的延时
Let’s Encrypt证书的网站在苹果系统打开很慢,Safari,IOS SSL引起的延时

解决办法:

在服务器上配置OCSP订书机(SSL Stapling)功能,然后强制让浏览器使用服务器提供的OCSP状态,而不是由浏览器去检查。目前Apache2.4和Nginx1.6以上的系统均支持该项配置。

修改服务器的hosts文件,解析正确的ocsp.int-x3.letsencrypt.org域名IP

修改服务器的hosts文件,把Let's Encrypt的OCSP服务器进行正确的解析。目前 ocsp.int-x3.letsencrypt.org 正常的服务器IP有:

23.44.51.8 (美国) 23.44.51.27 (美国) 104.109.129.57 (英国)   104.109.129.11 (英国)

175.45.42.209 (香港) 175.45.42.218 (香港)

可以在hosts文件中加入:

23.44.51.8   ocsp.int-x3.letsencrypt.org

保存即可!

nginx,修改SSL配置:

ssl_stapling on;
ssl_stapling_verify on;

重启apache或nginx即可!