开启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://www.getssl.cn/ocsp

如果你的网站出现第一次打开网站时会显得很慢,也是https的话不妨看看证书是否有问题

请关注我们,了解更多关于网站打开速度慢的问题

(0)

相关推荐

  • 在Serv-U中使用SSL证书增强FTP服务器安全性图文设置方法

    为了保证特殊环境下的数据安全,有时是有必要启用SSL功能的.下面笔者以Serv-U服务器为例,介绍如何启用SSL加密功能. 创建SSL证书 要想使用Serv-U的SSL功能,当然需要SSL证书的支持才行.虽然Serv-U 在安装之时就已经自动生成了一个SSL证书,但这个默认生成的SSL证书在所有的Serv-U服务器中都是一样的,非常不安全,所以我们需要手工创建一个新的SSL证书. 以Serv-U6.0汉化版为例,在"Serv-U管理员"窗口中,展开"本地服务器→设置"

  • Nginx配置SSL证书监听443端口

    一.准备证书文件 我使用的是阿里云Symantec 免费版 SSL证书.将证书文件下载后解压得到如下文件 在nginx–>cert目录中建一个ssl目录,将上面的所有文件拷贝到ssl目录中 二.修改nginx.conf文件 在nginx.conf的http{}中填下如下内容 server { listen 443; server_name www.httpstest.com; ssl on; root html; index index.html index.htm; #这里的.pem/.key

  • Java如何跳过https的ssl证书验证详解

    打开我们首页,明显看到链接是https打头,https和http的通信协议差别,在于https安全性更高: http和https的差别 很明显,二者最大的区别在于https多了一个ssl证书验证,可以说https是身披SSL外壳的http.因为http存在如下缺陷: 1)通信使用明文,内容可能被窃听(重要密码泄露) 2)不验证通信方身份,有可能遭遇伪装(跨站点请求伪造) 3)无法证明报文的完整性,有可能已遭篡改(运营商劫持) 而https是利用SSL/TLS建立全信道,加密数据包.HTTPS使用

  • 微信小程序 免费SSL证书https、TLS版本问题的解决办法

    微信小程序 免费SSL证书https.TLS版本问题的解决办法 微信小程序与第三方服务器通讯的域名5个必要条件 1.一个已备案的域名,不是localhost.也不是127.0.0.1,域名不能加端口 2.加ssl证书,也就是https://~~~ 4.HTTPS 服务器的 TLS 版本支持1.2及以下版本,一般就是1.0.1.1.1.2要同时支持这三个版本,一个也不能少,要不然就会出现下面这种情况 5.微信小程序后台加上合法域名设置(一个月内改的次数是有限的,且行且珍惜)如下图 以上5个条件,必

  • 阿里云服务器apache配置SSL证书成功开启Https(记录趟过的各种坑)

    环境: 阿里云云服务器    Windows Server 2008 标准版 SP2 中文版(趁1212优惠买的一年的水货配置) 阿里云购买的域名(已备案.已解析) 服务器:phpstudy:php5.4.45+Apache(因为是phpstudy集成的,所以没找到apache的版本,我感觉应该是2.4.8之前的版本) SSL证书 (配置过程中,我申请了2个不同机构的证书,第一个GG了,是在   https://www.trustasia.com/   申请的1年免费证书.成功的是用的第二个,在

  • windows下部署免费ssl证书(letsencrypt)的方法

    随着网络的发展,网络安全也越来越重要,对于网站来说,从Http升级到https也是我们要做的首要事情.要实现https,首先我们需要申请一张SSL证书,这篇文章我主要介绍下边这几个方面: 1. SSL简单介绍 2. 免费Letencrypt证书部署 3. 安装注意事项 一.SSL简单介绍 ssl作为一个网络加密协议,主要是存在于系统中应用层和传输层之间的一个安全套接字层(Secure Socket Layer),也就是位于TCP/IP协议和各个应用层协议之间,为应用数据传输提供加密的协议.当然它

  • nginx配置SSL证书实现https服务的方法

    在前面一篇文章中,使用openssl生成了免费证书后,我们现在使用该证书来实现我们本地node服务的https服务需求.假如我现在node基本架构如下: |----项目 | |--- static # 存放html文件 | | |--- index.html # index.html | |--- node_modules # 依赖包 | |--- app.js # node 入口文件 | |--- package.json | |--- .babelrc # 转换es6文件 index.htm

  • Nginx 启用 OCSP Stapling的配置

    这里,我将介绍什么是 OCSP Stapling 以及为什么要开启它. 在线证书状态协议(Online Certificate Status Protocol),简称 OCSP,是一个用于获取 X.509 数字证书撤销状态的网际协议,在 RFC 6960 中定义.OCSP 用于检验证书合法性,查询服务一般由证书所属 CA 提供.OCSP 查询的本质,是一次完整的 HTTP 请求加响应的过程,这中间涵括的 DNS 查询.建立 TCP 连接.Web 端工作等步骤,都将耗费更多时间,使得建立 TLS

  • Nginx服务器的SSL证书配置以及对SSL的反向代理配置

    Nginx的SSL证书配置 1.使用openssl实现证书中心 由于是使用openssl架设私有证书中心,因此要保证以下字段在证书中心的证书.服务端证书.客户端证书中都相同 Country Name State or Province Name Locality Name Organization Name Organizational Unit Name Country Name State or Province Name Locality Name Organization Name Or

  • 详解如何给Tomcat配置Https/ssl证书

    如果需要给Tomcat开启Https,首先我们需要一个证书,下面演示如何创建. 创建证书 keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "localhost-rsa.jks" 后面的信息随便输入,我这里输入的是: Enter keystore password: Re-enter new password: What is your first and last name?

  • 详解Nginx配置SSL证书实现Https访问

    背景 由于项目需求,安全起见,需要将之前的http接口访问变成https访问,所以需要配置SSL证书.项目的架构是这样的: 基本架构是硬负载(ReadWhere)+ 软负载(Nginx)+ Tomcat集群,现在的问题是SSl证书要配置在哪里,直接配置在硬负载上?还是分别配置在Nginx和Tomcat上?还是其他的配置方法呢? 首先在硬负载上配置放弃了,然后通过在网上查找资料,发现可以只在Nginx上配置证书,就是说Nginx接入使用Https,而Nginx与Tomcat之间使用Http进行衔接

  • windows服务器ssl证书创建、安装及配置方法

    用IIS发布https网站,SSL的安全服务配置步骤: 生成申请证书请求获取及安装中级CA证书安装服务器证书及配置绑定一.生成证书请求 进入IIS控制台 在"开始"菜单上,依次单击"所有程序"."附件"和"运行". 在"打开"框中,键入 inetmgr,然后单击"确定".点击对应机器主页,然后选择"服务器证书". 创建证书请求 进入服务器证书配置页面,并选择"

  • 有了SSL证书,如何在IIS环境下部署https

    昨天各位小伙伴都很开心的领取了自己的SSL证书,但是大部分小伙伴却不知道如何部署,也许是因为第一次接触SSL这种高端的东西吧,不过个人觉得就是懒懒懒...本来小编也挺懒的,但是答应了各位小伙伴的,那么今天就教大家如何在IIS环境下部署HTTPS证书吧.(建议在PC端阅读) 1.首先我们要取走我们的证书,保存在我们本地的电脑里,然后复制到服务器即可. 2.取走后接下来干嘛?当然是打开文件看看里面有些什么啊.我们找到IIS那个压缩包并解压. 3.解析得到pfx文件,也就是我们需要部署域名的证书文件.

  • Nginx 下配置SSL证书的方法

    1.Nginx 配置 ssl 模块 默认 Nginx 是没有 ssl 模块的,而我的 VPS 默认装的是 Nginx 0.7.63 ,顺带把 Nginx 升级到 0.7.64 并且 配置 ssl 模块方法如下: 下载 Nginx 0.7.64 版本,解压 进入解压目录: 复制代码 代码如下: wget http://sysoev.ru/nginx/nginx-0.7.64.tar.gz tar zxvf nginx-0.7.64.tar.gz cd nginx-0.7.64 如果要更改heade

随机推荐