一旦第三方 CA 服务提供商发生运营或安全事件,该 CA 服务提供商的认证服务将不可用。这将直接影响使用企业 IT 服务的最终用户。无论是PC客户端、移动终端,还是API接口程序,都可能受到影响,导致服务不可用。
因此,在对站点进行高保障安全运维的同时,要求SSL/TLS服务商保证提供7*24不间断的高可用服务,以保证服务的可靠性。
SSL/TLS证书服务要注意这三点:
与其简单地采用 SSL/TLS 证书配置burpsuit谷歌浏览器证书及HSTS问题处理,还需要确保具有高可用性保证的服务站点不涉及第三方 CA 认证机构的安全或操作事故,并使用提供的高可用性 SSL/TLS同时由两个不同的 CA 机构。证书服务尤为必要。
无论是选择 SSL/TLS 证书服务,还是在双证书方案中同时使用两个 SSL/TLS 证书,首先需要检查 CA 服务机构在服务保障方面是否做足了功课。
首先,就CA机构的数量而言,当然是越大越好。选择全球排名靠前的几家大型老牌CA机构的产品,可以保证CA机构的产品有更深的技术积累和安全保障。不会因黑客组织或个人的攻击、系统安全系统漏洞、认证不规范等各种原因造成服务中断或被其他组织列入信任黑名单。
其次,还需要提前检查CA服务提供者之前是否发生过重大安全或运营事故,是否受到过严厉的处罚措施。事故发生后,CA服务商能否协调各方快速及时地进行处理,确保能够将对客户的影响降到最低,也将为客户的证书申请保障加分。
最后,CA服务商在中国是否有服务加速。
证书颁发后,在证书使用过程中,客户端通常需要请求CA系统获取证书有效性验证信息。验证证书有效性的主要方法有两种:OCSP 和 CRL。
OCSP验证数据包体积小,但对响应的及时性有要求。服务器延迟越小,客户端认证越快。
CRL 的验证数据包体积较大,但 CRL 支持缓存。可以通过CA服务商的CDN加速服务网络进行分发。因此,也有必要要求CA服务商在国内使用CDN加速服务。
以下方案中,主证书采用(原)品牌,备用证书采用或品牌。
如何部署和实现高可用双证书?
1.单证在线
单证在线解决方案实现起来非常简单,其运行模式也很好理解。主证书部署在服务器上,在主证书正常运行时不需要安装和部署备份证书。如果 CA 服务商出现安全或操作事故,您可以手动更新配置启用备份证书并取下主证书,或通过自动化部署脚本自动切换到备份证书服务。
主证书可根据应用需求购买单域名、带绿色地址栏的增强验证EV类型、多域名或通配符证书。主证书的注册申请、维护和安装仍然使用原模式,部署和安装习惯没有改变。
备份证书建议使用多个域名或通配符证书。只需保证备份证书能够快速覆盖主证书的服务范围,通常不需要频繁更改或重新注册申请。并且当需要紧急激活时,可以快速更换和更换主证书对应的服务。
2.源站使用主证书,CDN、高防、WAF等服务使用备份证书
使用CDN、DDoS Pro、WAF服务的用户可以在源站安装使用主证书,在CDN、DDoS Pro、WAF等服务中使用备份证书。
通常,此类服务也可能委托给第三方CDN服务提供商进行部署和实施。因此,在这种模式下使用双证书方案时,选择两个不同CA服务商提供的产品,不仅可以避免CA操作或安全信问题配置burpsuit谷歌浏览器证书及HSTS问题处理,同时源站使用的证书密钥对和CDN、Anti-DDoS Pro和WAF服务上配置的证书也不同。任何证书中的操作安全故障(例如密钥丢失、密钥泄露)都可以快速定位责任主体。第三方CDN服务商秘钥泄露不会影响源站数据传输安全。
3.主副证书同时在线
成功案例分析
由于该bug,所有2016年6月1日之后颁发的证书都会在53、54报 Log Error(CT Log),某互联网头部企业已启用
(原件)+ 双证书方案。对于 IE 等浏览器,会自动使用(原始)证书,并为所有版本的浏览器访问自动启用证书。
一些超大型网站或应用程序往往对 SSL/TLS 证书的兼容性有非常严格的要求。一些通过API接口连接的面向服务的产品对CA服务商的产品有更高的兼容性要求。主证书使用各大CA厂商的证书产品,往往可以获得最好的兼容性支持。但在特定应用场景遇到不兼容时,使用双证书应用方案可以有效避免超大型站点客户端出现SSL/TLS证书兼容失败,同时保证API访问用户不会受证书影响。变化的不利影响。
通常,使用双证书同时在线的方案需要通过http代理使用前端代理服务器的标识,代理的https重定向来达到这个目的。
实现根据用户UA自动重定向到策略指定的SSL/TLS证书服务站点,要求后端必须有多台服务器负责处理https请求,并且主备两个不同的证书应该部署在这些站点中。其次,站点必须关闭 HSTS,以避免客户端浏览器直接通过 https 访问服务器。用户必须使用默认的http服务访问服务器,然后服务器端的Proxy代理进行策略加载。
其配置原理如下:
if ( condition ){
do_something
}
if ( $http_user_agent = "wget" ){
do_something
}
if ( $http_user_agent ~ MSIE ){
do_something else;
}
一、配置后端服务器策略,为不同的服务器集群配置其专用证书
######配置IE浏览器后台服务器群集,并在群集服务器上配置Symantec证书
upstream msiebackend {
server 192.168.1.1;
server 192.168.1.2;
server 192.168.1.3;
}
######配置Chrome浏览器后台服务器群集,并在群集服务器上配置GlobalSign证书
upstream chromebackend {
server 192.168.1.4;
server 192.168.1.5;
server 192.168.1.6;
}
######配置Firefox浏览器后台服务器群集,并在群集服务器上配置Symantec或其他证书
upstream mozillabackend {
server 192.168.1.7;
server 192.168.1.8;
server 192.168.1.9;
}
最后,配置 Porxy 策略以将不同用户代理识别的客户端浏览器定向到特定的后端服务器。一个例子如下:
server {
access_log logs/access.log;
error_log logs/error.log;
listen 80 default;
server_name baidu.com www.baidu.com; ## 代理转发站点的域名
location / {
proxy_pass https://msiebackend; ## 默认使用Symantec证书
if ($http_user_agent ~ Chrome ) {
proxy_pass https://chromebackend; ## 为Chrome浏览器启用GlobalSign证书
}
if ($http_user_agent ~ Mozilla ) {
proxy_pass https://mozillabackend; ## 为Firefox 浏览器启用Symantec或其他证书
}
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503;
...s
}
完成以上配置后,重启Nginx,尝试用不同的浏览器客户端访问你的站点,测试证书部署策略是否生效。
如果对 User Agent 的策略定制更详细,就可以更详细地控制客户端的访问代理。
评论留言