公告:

欢迎访问元元本本博客-关注建站技术、SEO优化、主机服务器、站长学习分享!

HTTPS证书部署出现PCI DSS不合规的解决办法

作者:元元本本博客 / 时间:2个月前 (09/07) / 分类:网站建设 / 阅读:88 / 评论:0

如今越来越多的网站启用了SSL/TLS即HTTPS加密传输协议,有些站长看到浏览器地址栏网址前面出现小绿锁就以为部署完成,其实不然,SSL/TLS的服务也是分评级的,业内比较权威的检测部署SSL/TLS是否符合行业最佳实践有两个标准,分别为支付卡行业安全标准PCI DSS和苹果公司的ATS规范。

所有iOS APP开发人员都知道早在2016年WWDC发布会上苹果就宣布:提交到App Store的应用程序将要被强制采用ATS协议, App必须通过传输加密通道HTTPS连接网络服务,来保证应用程序和Web服务之间的安全性。若日后仍采用明文HTTP传输数据的APP,将不能在Apple Store中被用户下载使用。而PCI DSS全称Payment Card Industry (PCI) Data Security Standard,是由PCI安全标准委员会的创始成员(visa、mastercard、American Express、Discover Financial Services、JCB等)制定,力在使国际上采用一致的数据安全措施,简称PCI DSS。

这两个标准如今成为行业衡量SSL/TLS是否最佳部署的重要标准,换言之只有同时通过了PCI DSS和Apple ATS测试,启用的HTTPS才是安全合格的。

如何检测部署的SSL/TLS是否符合行业最佳实践标准呢?

可以通过一些网站在线检测,比较知名的HTTPS检测网站是 shybcj.com 打开后输入网站域名即可查询结果。

检测通过会显示评级、 PCI DSS和ATS均为合规:

HTTPS证书部署出现PCI DSS不合规的解决办法-第1张图片-元元本本

如果显示PCI DSS 不合规,说明HTTPS还没有完美部署,如图:

HTTPS证书部署出现PCI DSS不合规的解决办法-第2张图片-元元本本

这是由于PCI安全标准委员会规定2018年6月30日之后,开启TLS1.0将导致PCI DSS不合规。

解决方案:

如何达到A+

最近发现有很多blog主在他们的blog中推荐我们MySSL,这让我们非常惊喜,在这里首先感谢一下这些blog主对我们MySSL的推广。
但是在看到 给启用 SSL 的站点推荐个 HTTPS 专用工具网站 的评论中,有一些blog主对如何评到A以及A+不是很理解,这里简单的说明一下。
首先要是,这个评分,并不仅仅是针对于证书的部署情况而言的,这是一个多方面综合的评级。其中包括了证书SSL协议加密套件漏洞不安全的外链等等。如果您的网站的评分已经达到A,那么没有被评到A+的最大的可能性就是没有使用HSTS,使用HSTS的方法很简单,只要在添加Strict-Transport-Security这个HTTP头部信息即可。
nginx服务器做说明:

add_header Strict-Transport-Security "max-age=31536000";

但有一点需要注意,Strict-Transport-Security中的max-age的时间不能小于15552000

总结

如果您的服务器需要支持IE6这种古董级别的浏览器,那么就按照百度的做法,如果说对兼容性没有太大的需求,只要主流的浏览器能够访问那么就不要支持3DES系列的加密套件,如果说想要在保证安全性的同时,也要有最好的兼容性,那么就请按照淘宝的配置方式进行配置。
下面给出这三种配置情况:

类似百度

Nginx

ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH;ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;

类似淘宝Nginx

ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

最好的安全性Nginx

ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256::!MD5;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

但也有可能因为openssl版本的不同会导致相同的配置得到不同的检测结果。如果您的openssl处于较新的版本那么按照最好的安全性进行配置,得到一个A,应该是没有问题的。

打赏支付宝打赏微信打赏
  • QQ交流群
  • 互相指导
  • 博客主微信
  • 方便沟通

没有评论,留下你的印记,证明你来过。


发表评论:取消回复

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。