Um Python ohne Root-Berechtigung aus dem Quellcode zu installieren, musste ich installieren openssl
, was ich mit den folgenden Befehlen tat:
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
Dann habe ich folgendes eingestellt ~/.bashrc
:
export PATH=$HOME/.local/openssl/bin:$PATH
export LD_LIBRARY_PATH=$HOME/.local/openssl/lib:$LD_LIBRARY_PATH
Danach kann ich Folgendes nicht mehr wget
wie zuvor verwenden:
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'.
Und es scheint, dass jede Verbindung, die ein Zertifikat erfordert, fehlschlägt.
Meine Frage ist nun, wie ich dafür sorgen kann, dass die benutzerdefinierte, lokale Installation openssl
reibungslos funktioniert (vielleicht indem ich vorhandene Zertifikate importiere und an der richtigen Stelle ablege?).
Vielen Dank im Voraus für Ihre Hilfe!
Antwort1
./config --prefix=${HOME}/.local/openssl --openssldir=${HOME}/.local/openssl
--openssldir
gibt das Verzeichnis für OpenSSL-Konfigurationsdateien an, in dem standardmäßig nach CA-Zertifikaten gesucht wird. Sie sollten daher entweder das vorhandene OPENSSLDIR auf Ihrem System wiederverwenden, indem Sie einen symbolischen Link ${HOME}/.local/openssl
darauf erstellen, oder die CA-Zertifikate Ihres Systems aus dem Systemverzeichnis in das neue Verzeichnis kopieren. Das OPENSSLDIR für die standardmäßige OpenSSL-Installation auf Ihrem System hängt von Ihrem (unbekannten) System ab, könnte aber so etwas sein wie /usr/lib/ssl
.