SSL and TLS Deploy Best Practices

1,私鑰和證書

1.1 私鑰必須足夠長

RSA 證書目前應用最為廣泛,RSA 2048能夠獲得112bit的安全,RSA 3072 能夠獲得128bit的安全。

ECDHE 256即可獲得128bit的安全。

RSA需要消耗大量的計算資源,ECDHE消耗的資源則要少的多。

還有少量的很老舊瀏覽器只能使用RSA,但是目前瀏覽器都支持ECDHE。

ECDHE將在未來替換RSA,因此,目前網站最好是配置RSA和ECDHE雙證書。

1.2 嚴密保管私鑰

必須在一個可信的設備上面產生私鑰,不能由CA來產生。

有條件的話,使用HSM來保管私鑰

經常更新證書。

1.3 從可信的CA獲取證書

可信CA必須有可以被信賴的安全歷史記錄

CA必須提供 CRL(Certificate Revocation List),OCSP (online Certificate Status Protocol)?

企業用戶,必須使用EV證書

1.4 使用強的證書簽名算法

證書的強度依賴于兩點:

a,用于簽名證書的私鑰的強度

b,用于簽名的hash算法的強度

目前,SHA1已經不安全,必須至少使用SHA256

2,配置

正確的配置目的:可以給訪問者信心,使用正確的密碼套件,排除已知弱點。

2.1 使用完整的證書鏈

EV證書

DV證書

2.2 使用安全的協議

SSL v2,不安全,不能使用(DROWN攻擊)

SSL v3,不安全,不能使用(POODLE攻擊)

TLS v1.0,老舊協議,不推薦使用,存在一些問題

TLS v1.1,無已知安全問題,但使用的算法不夠新

TLS v1.2,推薦使用,無已知安全問題,能夠支持AEAD

TLS v1.3,正處于draft21,致力于去掉過時的、不安全的特性,提供更好的性能、更安全的連接

2.3 使用安全的cipher suites

首選AEAD 套件:支持強認證、密鑰交換、完美前向安全、至少128bit的安全加密。

為了支持一些老舊的客戶端,服務端也要提供一些弱的套件。

以下加密操作必須避免:

a,不提供認證的ADH 套件

b,Export 套件不安全

c,低于128bit的加密

d,rc4

e,3DES 又慢又弱

2.4 選擇最佳的cipher suites

客戶端發送支持的cipher suites后,服務器應該從里面選擇一個最佳的支持的cipher suites來建立連接

2.5 使用前向安全

前向安全:連接的安全不依賴于服務器的私鑰,每個連接都有不同的加密密鑰。避免私鑰被盜后,監聽者可以將之前保存的報文恢復。

使用ECDHE來保證前向安全。推薦使用ECDHE P-256,是一個又好又塊的曲線。

不能用RSA 密鑰交換。

3,性能配置

3.1 避免過高的安全配置

RSA 2048,ECDHE 256即可。再高的配置并不能帶來更好的安全,但是帶來極高的資源消耗。

3.2 會話重用

可以節約服務器資源,同時加速連接建立,改善客戶端體驗。

3.3 優化網絡

TLS的延遲主要是網絡(服務器端cpu要么夠用,要么直接拒絕服務,不是造成延遲的主要原因)

使用HTTP2,CDN

3.4 使用OCSP stapling

OCSP 會導致TLS握手時,客戶端要與CA建立連接來查詢證書有效性,消耗額外的RTT,導致時間消耗。

OCSP stapling將此操作在服務器端完成,并在握手時返回給客戶端,避免額外的RTT。

如果CA的OCSP responder性能、可靠性不行,OCSP stapling將會帶來很大的性能提升。

4 HTTP 和應用安全

4.1 加密所有東西

4.2 避免混用加密和不加密的內容,尤其不能在同一個頁面混用

4.3 secure cookies

4.4 secure http compression

2012 CRIME 攻擊證明,TLS不能使用壓縮。

4.5 部署 HSTS

HTTP Strict Transport Security,在http響應里面,加入一個特殊的頭,指示瀏覽器使用。

Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

效果:

訪問 http:www.sample.com時,不是先訪問http:www.sample.com,然后服務器返回302跳轉到https:www.sample.com,然后客戶端再訪問https:www.sample.com;而是直接就在客戶端本地就訪問https:www.sample.com。

可以避免tcp握手,http請求,節約時間;同時,避免瀏覽器顯示證書警告。



http://blog.csdn.net/cteng/article/details/52224344

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容