ios 访问 Let‘s encrypt 免费证书的 https 很慢

最近在自己测试自己部署的 https(Let’s encrypt 免费证书),发现请求很慢,有10多秒甚至20秒的延迟。
而请求 http 很快,改 ios 的 DNS 也没用。Android 和 Windows 上都没有这个现象。

原因

因为LE证书的吊销状态检查域名(ocsp.int-x3.letsencrypt.org 以及相关CName或Alias)在大陆受到劫持引起。苹果系统的浏览器打开SSL网站时将对证书的状态进行验证,当在验证证书状态时,请求了被劫持的Let’s Encrypt证书状态检查(OCSP)的服务器,而该服务器为不可使用状态或有很长延时,从而导致打开网站延时。

由于证书状态检查由苹果的浏览器(UIWebView, WKWebView、Safari)发起,而Chrome在访问SSL网站时并不进行这一项检查,所以大部分用户在Chrome中访问正常,只有在苹果系统中访问出现延时。

解决办法1

换证书

解决办法2

在服务器上配置OCSP(SSL Stapling)功能(OCSP是用于在线查询证书吊销情况的服务),然后强制让浏览器使用服务器提供的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 (香港)
223.119.50.201(香港)
223.119.50.203(香港)
23.32.3.72(东京)

我试了下,175.45.42.21 最快,也没有丢包。

可以在hosts文件中加入:

175.45.42.218   ocsp.int-x3.letsencrypt.org

保存即可!

附:hosts文件路径:

  • Windows(以管理员身份运行记事本,然后打开): C:\windows\system32\drivers\etc\hosts
  • Linux/Unix/Mac Server(必须先切换到超管): /etc/hosts
  • 华硕梅林固件修改 host 的方法:

在 /jffs/ 目录下创建一个名为 dnsmasq.conf.add 的文件

vi /jffs/dnsmasq.conf.add\

加入内容 addn-hosts=/jffs/configs/hosts 并且保存

进入 /jffs/configs,创建一个名为 hosts 的文件

vi /jffs/configs/hosts

在该文件中加入自定义域名解析,比如 175.45.42.218 ocsp.int-x3.letsencrypt.org,并且保存

第二步:在Apache和Nginx中启用 OCSP 功能

apache
修改全局SSL配置(注意部分服务器要求这两项配置的路径在同一目录):

SSLSessionCache        "shmcb:conf/ssl_scache(512000)"
SSLStaplingCache "shmcb:conf/ssl_stapling(512000)"
SSLUseStapling On

nginx

修改SSL配置:

ssl_stapling on;
ssl_stapling_verify on;

第三步:重启 apache 或 nginx 即可!

最后可以用 https://www.getssl.cn/ocsp 来检测是否生效,如下图
在这里插入图片描述

参考
https://easy.zhetao.com/easy-https-lets-encrypt-content-233?_verip_csrf_token_name=null

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神秘_博士

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值