Linux
為什麼 wget 不驗證 SSL 證書?
我的Fedora 8安裝有問題。它看起來**
wget
**不知道如何驗證 SSL 證書了。這很奇怪,因為我有另一個Fedora 8盒子,我相信它具有相同的配置並且可以正常工作!如何在不使用
--no-check-certificate
開關的情況下使其工作?這是一個範例輸出:
wget https://www.google.com --2011-09-23 00:11:13-- https://www.google.com/ Resolving www.google.com... 74.125.230.146, 74.125.230.147, 74.125.230.148, ... Connecting to www.google.com|74.125.230.146|:443... connected. ERROR: cannot verify www.google.com's certificate, issued by `/C=ZA/O=Thawte Consulting (Pty) Ltd./CN=Thawte SGC CA': Unable to locally verify the issuer's authority. To connect to www.google.com insecurely, use `--no-check-certificate'. Unable to establish SSL connection.
編輯
我有這個文件
/etc/pki/tls/certs/ca-bundle.crt
文件,當我**wget
**使用--ca-certificate
指向這個文件的開關執行時,一切正常。這個文件應該放在哪裡,這樣我就不需要使用開關了?順便說一句:
curl
工作links
正常,但lynx
也抱怨:*“SSL 錯誤:無法獲得本地頒發者證書”*所以這不僅wget
是問題……
預設情況下,wget 將檢查 openssl conf 文件 /etc/pki/tls/openssl.cnf 中定義的路徑中的證書(不確定該路徑對於 fc8 是否正確)。請檢查 openssl 配置文件並確認路徑正確。可能是openssl,需要更正。
我遇到 wget 找不到我的證書的問題,所以我安裝了 ca-certificates
sudo apt install ca-certificates
然後我編輯:
sudo vi /etc/wgetrc
並添加
ca_directory=/etc/ssl/certs
或者您可以使用此命令將其附加到末尾:
printf "\nca_directory=/etc/ssl/certs" | sudo tee -a /etc/wgetrc