在第一部分中,我们讲述了一些关于SSL的事,比如关闭SSLv3和RC4。其实我们还可以用它来做更多,比如帮助改善性能、提高连接互联网时的安全性等等。

OCSP Stapling——OCSP Stapling被称作是性能增强剂,它帮我们解决了浏览器总是要检查SSL证书对公布的吊销列表。这对美国以外连接检查和验证SSL证书特别有用,可以减缓整个SSL的交互,同时也大大降低了用户受到来自CA服务器的实时负载。

使用OCSP Stapling时,网站的服务器会检查CA网站并获取签名,在一定时间内把自己的SSL证书发送到浏览器上。这对每一个用户来说都变得更快、更容易了。

支持OCSP Stapling的服务器有Apache 2.3.3、Nginx 1.3.7、加上IIS 的Win2008和11.6.0里的F5。支持OCSP Stapling的浏览器有Firefox 26和最新的Chrome,但不包括Safari 7.1.2.。

HSTS——HSTS是指HTTP严格传输安全协议,是SSL系统的另一种选择,即他们一定要通过SSL服务内容。使用此选项,服务器会告诉浏览器在这一领域不允许任何HTTP。支持Chrome,Firefox,Safari和Opera,不久还会支持IE浏览器。不过最好不要在一个混合安全网站使用它,尽管大多数网站都是如此。

前向保密——这是一个越来越重要的概念,意味着如果一个黑客突破一个会话的密钥,他们不能盗取同一个浏览器与服务器之间的消息。不幸的是大多数密码组合不支持这一点,所以如果你打破一个会话就会得到更多。为了解决这个问题,一些会使用最新的组合,你应该会支持并喜欢用DHE作为后备ECDHE密码组合。

禁用客户端发起的谈判——理论上,客户可以重新协商SSL参数,这使得黑客在其中强制加密或传输到一个旧的、不安全的版本,甚至重新谈判和开放新的漏洞,而这应该是在服务器上禁用的。

会话救赎——这是另一个新特性,我们可以大大提高SSL会话的密钥性能,让它能更快的重新连接。当然,这也是有风险的,这些密钥不能有效的再利用。建议使用时重启服务器来清理缓存,最好的配置是使用ticket。

TLS_FALLBACK_SCSV——正式称为TLS Fallback Signaling Cipher Suite Value,这是一个服务器上的选项,可以防止客户采用老的、不安全的套件。虽然还是比较新,但现在也能在服务器上启用的一个很好的特性,而且一些新式的浏览器也支持。

HPKP——HTTP公钥钉这个新功能还在测试,它限制了给定站点的CA证书,避免MITM攻击流氓CA证书或国家控制CA证书。但至少由谷歌的Chrome和Firefox和主要合作伙伴支持,所以可以先持观望态度。

参考:

OCSP Stapling – http://en.wikipedia.org/wiki/OCSP_stapling

Public Key Pinning:  http://en.wikipedia.org/wiki/Transport_Layer_Security#Certificate_pinning

Session Redemption:  https://wiki.mozilla.org/Security/Server_Side_TLS#Session_Resumption

Firefox Pinning Support:  https://blog.mozilla.org/security/2014/09/02/public-key-pinning/

Server Best Practices Config from Mozilla (this is great!):  https://wiki.mozilla.org/Security/Server_Side_TLS

QualysSSLLabs Server Test:  https://www.ssllabs.com/ssltest

Forward Secrecy:  http://en.wikipedia.org/wiki/Forward_secrecy

QualysSSLLabs Best Practices for Deploying SSL:  https://www.ssllabs.com/projects/best-practices

Excellent Wikpedia Overview and Details including by Browser Version:  http://en.wikipedia.org/wiki/Transport_Layer_Security