如何加快SSL連線建立速度?

如何加快SSL連線建立速度?

我在 Linux PC 上使用 Apache2 設定了 OpenSSL。

不,我還沒有啟用 DNS 解析。我的機器上有本機證書。

儘管如此,Chrome 開發工具告訴我Initial Connection took 1.64 s。當我在特定時間過後刷新頁面時,等待我的時間很長。

如何加快速度還是該如此?

附:我正在使用 StartCom 的免費 ssl。

答案1

有幾個方面可以改進 SSL 連線(以及一般 SSL 流量延遲)。其中一些可能會以某種或大或小的方式影響安全性。

(這些用於使用 Apache 的 ssl.conf)

禁用域查找,並允許非 SNI 到達主域

  • SSLStrictSNIVHost 關閉

使用 IP 位址作為 :443 VHOST 條目,而不是命名主機

緩存 SSL 會話

  • SSLSessionCache shmcb:/run/httpd/sslcache(512000)
  • SSLSessionCache逾時 300

允許更快的 SSL 協定順序,一般相容性,中等安全性:

  • SSL協定全部-SSLv3
  • SSLCipherSuite ALL:+HIGH:+TLSv1:!ADH:!EXP:!SSLv2:!MEDIUM:!LOW:!NULL:!aNULL
  • SSLHonorCipherOrder 上

OCSP 裝訂(加速 SSL)

  • SSL 使用裝訂打開
  • SSLStaplingResponder逾時 5
  • SSLStaplingReturnResponderErrors 關閉
  • SSLStaplingCache shmcb:/run/ocsp(128000)

HSTS(可以進行預先加載,以便 http:// 請求在瀏覽器中變成 https:// 請求

  • 標頭總是設定 Strict-Transport-Security“max-age=63072000; includeSubdomains; preload”

在此提交預加載:https://hstspreload.appspot.com/

考慮以下更高級的實作:

  • HTTP/2 與 HPACK
  • 布洛特利壓縮

其他可能有助於加快連線速度的非 SSL 問題

httpd.conf 中 Apache 的另一個指令

  • 主機名稱查找關閉

答案2

不要使用 StartCom。

相反,請使用 Let's Encrypt 和--apacheautoconfig 選項。

它會詢問您所有用戶友好的信息,並且您可以在設定 Let's Encrypt SSL 後完全自訂您的 Apache 配置。

因此,透過刪除 StartCom SSL 並使用 Let's Encrypt 自動配置 apache 來解決該問題。

我真的不知道這裡最初的問題是什麼,但 Let's Encrypt 似乎優化得更好。

相關內容