开启OCSP提升https证书验证效率解决Let’s Encrypt SSL证书访问慢的问题
这几天网站访问出现第一次打开网站特别慢,打开以后页面打开速度正常的问题,经过研究发现是https证书验证超时的问题,证书商的验证url无法访问不知道是线路问题还是被墙了。
请教了几位大神如何解决https证书验证超时的问题.给出的解决方案是要么换证书商,要么开启ocsp。
我这种穷人哪用得起大厂的https证书呀,只能采用第二种方案,开始ocsp。
如果网站部署了免费的let's encrypt证书时,第一次https打开此网站时会显得很慢,往往需要等待四五秒才能正常打开,这是由于特殊原因,ocsp.int-x3.letsencrypt.org服务器ip无法正常被解析。
为了提升网站访问体验,可以开启ocsp stapling,解决第一次访问网站时很慢的问题。
本文环境:
宝塔面板
centos 7 / windows 2012 r2
apache / nginx
一、针对海外服务器开启ocsp stapling
1、配置系统的apache或nginx信息
apache开启ocsp:
①找到apache安装目录,编辑目录下的httpd-ssl.conf文件,centos系统中的目录为:/www/server/apache/conf/extra/httpd-ssl.conf,windows系统中的目录为:c:/btsoft/apache/conf/extra/httpd-ssl.conf,去掉文件中以下两行的注释:
sslusestapling on
#centos:
sslstaplingcache "shmcb:/www/server/apache/logs/ssl_stapling(32768)"
#windows:
sslstaplingcache "shmcb:c:/btsoft/apache/logs/ssl_stapling(32768)"
如果文件中没有以上这两行,则手动添加进去。
②编辑httpd.conf文件,centos系统中的目录为:/www/server/apache/conf/httpd.conf,windows系统中的目录为:c:/btsoft/apache/conf/httpd.conf,去掉文件中以下这行的注释:
loadmodule socache_shmcb_module modules/mod_socache_shmcb.so
如果文件中没有以上这行,则手动添加进去。
③配置网站的apache信息,在网站的配置文件中,添加如下信息:
sslusestapling on
#centos:
sslstaplingcache "shmcb:/www/server/apache/logs/ssl_stapling(128000)"
#windows:
sslstaplingcache "shmcb:c:/btsoft/apache/logs/ssl_stapling(128000)"
以上信息可以添加在这一行<virtualhost *:443>的上面。
至此,apache已经开启了ocsp stapling,重启apache即可。
nginx开启ocsp:
直接在网站的nginx配置文件中,添加如下信息:
server {
listen 443;
………
ssl_stapling on; #开启stapling
ssl_stapling_verify on; #开启stapling验证
……
}
保存,重启nginx即可。
二、针对内陆服务器开启ocsp stapling
步骤和第一段的一样,开启ocsp stapling后,还需要编辑hosts文件,指定一下ocsp.int-x3.letsencrypt.org服务器ip地址。
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 (东京)
编辑hosts文件,windows中的路径为:c:\windows\system32\drivers\etc\hosts,linux中的路径为:/etc/hosts,添加以下信息:
175.45.42.218 ocsp.int-x3.letsencrypt.org
重启一下apache或nginx即可。
三、验证ocsp stapling是否开启成功
1、在ssh中使用以下命令:
openssl s_client -connect www.你的网址.com:443 -servername www.你的网址.com -status -tlsextdebug < /dev/null 2>&1 | grep -i "ocsp response"
若站点返回 ocsp response: no response sent,代表开启失败。
若站点已成功启用 ocsp stapling,会返回提示中有:successful。
2、打开以下网址,输入你的网站即可检测:
如果你的网站出现第一次打开网站时会显得很慢,也是https的话不妨看看证书是否有问题
请关注,了解更多关于网站打开速度慢的问题
上一篇: 解决docker指定udp端口号的问题