Debian

在 Debian 上通過 https 下載不起作用(openssl 配置錯誤?)

  • June 13, 2018

我在 Debian wheezy 伺服器上,我試圖通過 https 下載東西但沒有成功。

當我嘗試使用curl時,它通過範例給了我這個答案:

curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
More details here: http://curl.haxx.se/docs/sslcerts.html

wget給了我類似的東西:

ERROR: cannot verify www.domain.com’s certificate, issued by “/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert SHA2 High Assurance Server CA”:
 Unable to locally verify the issuer’s authority.

當我執行命令時,openssl s_client -showcerts -connect www.facebook.com:443我收到了答案 verify error:num=20:unable to get local issuer certificate,但是當我這樣做 openssl s_client -CApath /etc/ssl/certs/ -showcerts -connect www.facebook.com:443時效果很好。

所以我認為有一個未設置的環境變數,因為我可以在設置公鑰路徑時執行證書檢查。

我需要做什麼才能修復它?

提前致謝!

您不是在處理錯誤配置。

Wheezy 可能已經顯示出它的年齡了。證書 CA 公共根鏈現在可能大部分都過期了,而我們所說的 openssl/libSSL 正在使用過時的協議。

解決這個問題的最簡單方法是升級到最近的 Debian 版本,這也是因為 Wheezy 是從 2013 年開始,並且自 2018 年 5 月 31 日以來一直是 EOL。(或者換句話說,有些人已經在計劃/測試他們很快會遷移到 Debian 10而 Wheezy 是 3 個版本,落後 5 年)

您也可以嘗試使用curl -kwget --no-check-certificate忽略證書檢查,它可能會起作用。

您甚至可以嘗試按照@GAD3R 的建議更新證書(不知道它是否能解決您的問題),或者手動安裝 Digicert 根 CA 證書。(fb 證書是用 Digicert 簽名的)

但是,對於這樣的 Debian 舊版本,您將遇到其他安全問題,並且還需要處理 SSL,因此,如果可以,您應該升級它。

引用自:https://unix.stackexchange.com/questions/449423