在线证书状态协议(OCSP,Online Certificate Status Protocol)是维护服务器和其它网络资源安全性的两种普遍模式之一。另一种更老的方法是证书注销列表(CRL)已经被在线证书状态协议取代了很多年了。
简介
在线证书状态协议(OCSP)克服了证书注销列表(CRL)的主要缺陷:必须经常在客户端下载以确保列表的更新。当用户试图访问一个服务器时,在线证书状态协议发送一个对于证书状态信息的请求。服务器回复一个“有效”、“过期”或“未知”的响应。协议规定了服务器和客户端应用程序的通讯语法。在线证书状态协议给了用户的到期的证书一个宽限期,这样他们就可以在更新以前的一段时间内继续访问服务器。
其实就是可以加速网站访问,尤其对于OCSP服务器遭受DNS污染(尤指之前Let's Encrypt证书服务器被污染),或者OCSP服务器在境外的网站。
OCSP装订
这种攻击促使CA和浏览器供应商引入SSL证书的扩展,该扩展在 RFC 7633,俗称 OCSP 必须装订 (尽管RFC本身没有提及此名称,这可能会引起一些混淆。)这只是要求对证书进行OCSP装订。 如果浏览器遇到带有此扩展名的证书而未使用OCSP装订,则将被拒绝。 OCSP Must-Staple可以缓解上述降级攻击,还可以减少流向CA的OCSP响应程序的不必要的流量,这也可以帮助提高OCSP的整体性能。
在服务器中启用OCSP装订
为了节省您查找的麻烦,以下各节包含有关如何在您的计算机中启用OCSP装订的说明 。
Nginx
在您的计算机中启用OCSP装订 Nginx的 服务器,请在服务器的配置文件中添加以下文本。
代码语言:javascript复制ssl_stapling on;
ssl_stapling_verify on;
当然了,如果您的网站开启了CDN功能就不需要在服务器端设置,一般CDN都提供OCSP装订功能,以腾讯云CDN为例:
登录 CDN 控制台,在菜单栏里选择【域名管理】,单击域名右侧【管理】,即可进入域名配置页面【Https 配置】中,可看到【OCSP 装订配置】,默认情况下为关闭状态,我们可以直接通过单击开关,对 OCSP 装订配置进行开启或关闭操作,如图:
注意:删除证书配置后,OCSP 装订配置会同步失效:
不仅仅是腾讯云CDN各大服务商都可以设置,只要开启了HTTPS就最好把ocsp装订功能开启。
总结
Web是相互依存的组件的复杂网络,所有这些组件(通常)协调工作以提供无缝的浏览体验。 但是,该系统的复杂性不断增加,导致攻击面不断扩大,并允许设计和执行新的网络攻击。大量的组件自然会增加延迟并导致延迟,这意味着企业需要找到在不影响用户体验的情况下提高安全性的方法。启用OCSP装订将为您提供提更高的安全性和提高网站的性能。