it-swarm.com.de

Wie aktualisiere ich OpenSSL in CentOS 6.5 / Linux / Unix von der Quelle?

Wie aktualisiere ich OpenSSL in CentOS 6.5?

Ich habe diese Befehle verwendet, aber nichts passiert:

 cd /usr/src
 wget http://www.openssl.org/source/openssl-1.0.1g.tar.gz
 tar -zxf openssl-1.0.1g.tar.gz
 cd openssl-1.0.1g
 ./config
 make
 make test
 make install
 cd /usr/src
 rm -rf openssl-1.0.1g.tar.gz
 rm -rf openssl-1.0.1g

Nach der Verwendung dieses Befehls erhalte ich die alte Version

openssl version
58
Mostafa
./config --prefix=/usr --openssldir=/usr/local/openssl shared

Versuchen Sie stattdessen diese Konfigurationszeile, um die Standardeinstellung zu überschreiben. Es wird standardmäßig in Ihrem Setup als Präfix/usr/local/ssl installiert, wenn Sie das Präfix weglassen. Sie haben wahrscheinlich "/ usr/local/ssl/bin/openssl" anstatt/usr/bin/openssl zu überschreiben. Sie können stattdessen auch/usr/local als Präfix verwenden, aber Sie müssten Ihren Pfad entsprechend anpassen, wenn dies nicht bereits in Ihrem Pfad enthalten ist. Hier ist die INSTALL-Dokumentation:

  $ ./config
  $ make
  $ make test
  $ make install

 [If any of these steps fails, see section Installation in Detail below.]

This will build and install OpenSSL in the default location, which is (for
historical reasons) /usr/local/ssl. If you want to install it anywhere else,
run config like this:

  $ ./config --prefix=/usr/local --openssldir=/usr/local/openssl

https://github.com/openssl/openssl/blob/master/INSTALLhttp://heartbleed.com/

43
jmq

Das Update für die Sicherheitsanfälligkeit heartbleed wurde von Red Hat für Enterprise Linux auf 1.0.1e-16 Zurückportiert. see , und dies ist daher der offizielle Fix, den CentOS ausliefert.

Das Ersetzen von OpenSSL durch die neueste Version von Upstream (z. B. 1.0.1g) birgt das Risiko, dass Änderungen an der Funktionalität vorgenommen werden, die die Kompatibilität mit Anwendungen/Clients auf unvorhersehbare Weise beeinträchtigen, dazu führen, dass Ihr System von RHEL abweicht, und dass Sie persönlich gewartet werden zukünftige Updates für dieses Paket. Wenn Sie openssl durch eine einfache make-Konfiguration ersetzen, bedeutet && make && make install, dass Sie auch die Möglichkeit verlieren, rpm zum Verwalten dieses Pakets und zum Ausführen von Abfragen zu verwenden (z. B. Überprüfen, ob alle Dateien vorhanden sind und nicht geändert wurden oder Berechtigungen geändert wurden) ohne auch die RPM-Datenbank zu aktualisieren).

Ich warne auch davor, dass Kryptosoftware sehr empfindlich gegenüber scheinbar geringfügigen Dingen wie Compiler-Optionen ist. Wenn Sie nicht wissen, was Sie tun, können Sie Schwachstellen in Ihrer lokalen Installation auslösen.

48
Alex Butcher

Gehen Sie wie folgt vor, um OpenSSL manuell zu kompilieren:

$ cd /usr/src

$ wget https://www.openssl.org/source/openssl-1.0.1g.tar.gz -O openssl-1.0.1g.tar.gz

$ tar -zxf openssl-1.0.1g.tar.gz

$ cd openssl-1.0.1g

$ ./config

$ make

$ make test

$ make install

$ openssl version

Wenn die alte Version angezeigt wird, führen Sie die folgenden Schritte aus.

$ mv /usr/bin/openssl /root/

$ ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
openssl version
OpenSSL 1.0.1g 7 Apr 2014

http://olaitanmayowa.com/heartbleed-how-to-upgrade-openssl-in-centos/

41
Olaitan Mayowa

Sudo yum update openssl ist alles, was du brauchst.

Dies bringt Sie zu openssl-1.0.1e-16.el6_5.7.

Sie müssen nach dem Update Apache neu starten . Oder noch besser, starten Sie die Box nach Möglichkeit neu, damit alle Anwendungen, die OpenSSL verwenden, die neue Version laden.

9

Sie müssen lediglich einen yum update Ausführen.

Es wird automatisch eine backportierte Version von openssl-1.0.1e-16.el6_5.7 Heruntergeladen und aktualisiert, die von RedHat mit deaktiviertem Heartbeat gepatcht wurde.

Um das Update zu verifizieren, überprüfen Sie einfach das Changelog:
# rpm -q --changelog openssl-1.0.1e | grep -B 1 CVE-2014-0160
Sie sollten Folgendes sehen:
* Mon Apr 07 2014 Tomáš Mráz <[email protected]> 1.0.1e-16.7 - fix CVE-2014-0160 - information disclosure in TLS heartbeat extension

Stellen Sie sicher, dass Sie den Server neu starten, da wichtige Dienste wie Apache und SSH openSSL verwenden.

7
Toshe

Mein Ansatz war:

openssl version
OpenSSL 1.0.1e 11 Feb 2013

wget https://www.openssl.org/source/openssl-1.0.2a.tar.gz
wget http://www.linuxfromscratch.org/patches/blfs/svn/openssl-1.0.2a-fix_parallel_build-1.patch
tar xzf openssl-1.0.2a.tar.gz
cd openssl-1.0.2a
patch -Np1 -i ../openssl-1.0.2a-fix_parallel_build-1.patch
./config --prefix=/usr --openssldir=/etc/ssl --libdir=lib shared zlib-dynamic
make
make install

openssl version
OpenSSL 1.0.2a 19 Mar 2015 
2
Garistar

Ich bin damit einverstanden, dass in 95% der Fälle nur Sudo yum update openssl

Wenn Sie jedoch eine bestimmte Version von openssl oder eine bestimmte Funktionalität benötigen, die sich nicht im CentOS-Repository befindet , müssen Sie dies wahrscheinlich tun müssen aus dem Quellcode kompilieren. Die anderen Antworten hier waren unvollständig. Nachfolgend ist aufgeführt, was funktioniert hat (CentOS 6.9), obwohl dies zu Inkompatibilitäten mit der installierten Software führen kann und das openssl nicht automatisch aktualisiert wird.


Wählen Sie die openssl-Version aus https://www.openssl.org/source/

  • Zum Zeitpunkt des Schreibens dieses Dokuments am 1. Juli 2017 war die erforderliche Version vom 25. Mai 2017, 13:09:51, in der Fassung openssl-1.1.0f.tar.gz
  • Kopieren Sie den gewünschten Link und verwenden Sie diesen in unserem Fall ( https://www.openssl.org/source/openssl-1.1.0f.tar.gz )

Melden Sie sich als root an:

cd /usr/local/src/

# OPTIONALLY CHANGE openssl-1.1.0f.tar.gz to the version which you want
wget https://www.openssl.org/source/openssl-1.1.0f.tar.gz

sha256sum openssl-1.1.0f.tar.gz  #confirm this matches the published hash

tar -zxf openssl-1.1.0f.tar.gz

cd /usr/local/src/openssl-1.1.0f

./config --prefix=/usr/local --openssldir=/usr/local/openssl
make
make test
make install

export LD_LIBRARY_PATH=/usr/local/lib64

#make export permanent
echo "export LD_LIBRARY_PATH=/usr/local/lib64" > /etc/profile.d/ld_library_path.sh
chmod ugo+x /etc/profile.d/ld_library_path.sh

openssl version  #confirm it works

#recommended reboot here

openssl version  #confirm it works after reboot
1
mkulon

Sie können auch das lokale Änderungsprotokoll überprüfen, um zu überprüfen, ob OpenSSL mit dem folgenden Befehl gegen die Sicherheitsanfälligkeit gepatcht ist:

rpm -q --changelog openssl | grep CVE-2014-0224

Wenn kein Ergebnis zurückgegeben wird, müssen Sie OpenSSL patchen.

http://www.liquidweb.com/kb/update-and-patch-openssl-for-the-ccs-injection-vulnerability/

0
Rockallite

es ist leicht! Sie laden die Binärdatei herunter ?. Lade das aktuelle rpm-Paket openssl-1.0.1e-30.el6.x86_64 herunter und überprüfe die aktuelle Version mit rpm -q openssl. Wenn dies älter ist, führen Sie rpm -U openssl-1.0.1e-30.el6.x86_64 aus. Wenn yum konfiguriert ist, aktualisiere dieses Paket im Repo und aktualisiere openssl, wenn dein Repo in RHN ist, aktualisiere openssl-1.0.1g ist sehr alt und wertvoll

0
umesh

rpm -qa openssl yum clean all && yum update "openssl*" lsof -n | grep ssl | grep DEL cd /usr/src wget http://www.openssl.org/source/openssl-1.0.1g.tar.gz tar -zxf openssl-1.0.1g.tar.gz cd openssl-1.0.1g ./config --prefix=/usr --openssldir=/usr/local/openssl shared ./config make make test make install cd /usr/src rm -rf openssl-1.0.1g.tar.gz rm -rf openssl-1.0.1g

und

openssl version
0
tvfun