Openssl
openssl:本地安裝導致證書問題
要在沒有 root 權限的情況下從原始碼安裝 Python,我必須安裝
openssl
,我使用以下命令進行了安裝:wget https://www.openssl.org/source/openssl-1.1.1e.tar.gz tar -xzvf openssl-1.1.1e.tar.gz cd openssl-1.1.1e ./config --prefix=${HOME}/.local/openssl --openssldir=${HOME}/.local/openssl make -j$(nproc) make install_sw
然後我在中設置以下內容
~/.bashrc
:export PATH=$HOME/.local/openssl/bin:$PATH export LD_LIBRARY_PATH=$HOME/.local/openssl/lib:$LD_LIBRARY_PATH
在此之後,我不能再
wget
像以前那樣使用:ERROR: cannot verify github.com's certificate, issued by ‘CN=DigiCert SHA2 Extended Validation Server CA,OU=www.digicert.com,O=DigiCert Inc,C=US’: Unable to locally verify the issuer's authority. To connect to github.com insecurely, use `--no-check-certificate'.
而且似乎任何需要證書的連接都會失敗。
我的問題是如何
openssl
完美地定製本地安裝作品(也許通過導入現有證書並將它們放在正確的位置?)。非常感謝您的幫助!
./config --prefix=${HOME}/.local/openssl --openssldir=${HOME}/.local/openssl
--openssldir
指定 openssl 配置文件的目錄,該目錄也是預設查找 CA 證書的目錄。因此,您應該通過符號連結重用系統上現有的 OPENSSLDIR,${HOME}/.local/openssl
或者將系統 CA 證書從系統證書複製到新目錄中。系統上預設 openssl 安裝的 OPENSSLDIR 取決於您的(未知)系統,但可能類似於/usr/lib/ssl
.