Comment mettre à niveau OpenSSL dans CentOS 6.5?
J'ai utilisé ces commandes, mais rien ne se passe:
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
Après avoir utilisé cette commande, je récupère l'ancienne version
openssl version
./config --prefix=/usr --openssldir=/usr/local/openssl shared
Essayez plutôt cette ligne de configuration pour écraser la valeur par défaut. Il installe par défaut le préfixe/usr/local/ssl dans votre configuration lorsque vous quittez le préfixe. Vous avez probablement "/ usr/local/ssl/bin/openssl" au lieu de remplacer/usr/bin/openssl. Vous pouvez également utiliser/usr/local comme préfixe, mais vous devrez ajuster votre chemin en conséquence si cela ne se trouve pas déjà sur votre chemin. Voici la documentation INSTALL:
$ ./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/
Le correctif de la vulnérabilité heartbleed
a été reporté sur 1.0.1e-16
par Red Hat pour Enterprise Linux see =, et c’est donc le correctif officiel fourni par CentOS.
Remplacer OpenSSL par la dernière version en amont (1.0.1g) risque d’apporter des modifications de fonctionnalités susceptibles de rompre la compatibilité avec les applications/clients de manière imprévisible, de faire diverger votre système de RHEL et de vous responsabiliser pour la maintenance personnelle. futures mises à jour de ce paquet. En remplaçant openssl à l'aide d'un simple make config && make && make install, vous perdez également la possibilité d'utiliser rpm pour gérer ce paquet et effectuer des requêtes sur celui-ci (par exemple, en vérifiant que tous les fichiers sont présents et n'ont pas été modifiés ou que les autorisations n'ont pas été modifiées. sans mettre également à jour la base de données RPM).
Je tiens également à souligner que les logiciels de cryptographie peuvent être extrêmement sensibles à des choses apparemment mineures telles que les options du compilateur. Si vous ne savez pas ce que vous faites, vous pouvez introduire des vulnérabilités dans votre installation locale.
Pour compiler manuellement OpenSSL, procédez comme suit:
$ 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
Si l'ancienne version est affichée, procédez comme suit.
$ 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/
Sudo yum update openssl
est tout ce dont vous avez besoin.
Cela vous amènera à openssl-1.0.1e-16.el6_5.7
.
Vous devez ) redémarrer Apache après la mise à jour. Ou mieux encore, redémarrez le boîtier si possible, afin que toutes les applications utilisant OpenSSL chargent la nouvelle version.
La seule chose à faire est d’effectuer un yum update
.
Il téléchargera et mettra automatiquement à jour une version rétroportée de openssl-1.0.1e-16.el6_5.7
qui a été corrigée par RedHat avec l'arrêt de la pulsation désactivée.
Pour vérifier la mise à jour, vérifiez simplement le journal des modifications:# rpm -q --changelog openssl-1.0.1e | grep -B 1 CVE-2014-0160
vous devriez voir ce qui suit:* Mon Apr 07 2014 Tomáš Mráz <[email protected]> 1.0.1e-16.7 - fix CVE-2014-0160 - information disclosure in TLS heartbeat extension
Assurez-vous de redémarrer le serveur car des services importants tels que Apache et SSH utilisent openSSL.
Mon approche était:
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
Je conviens que dans 95% des cas, tout ce dont vous avez besoin est Sudo yum update openssl
Cependant, si vous avez besoin d'une version spécifique d'OpenSL ou de fonctionnalités spécifiques , qui ne sont pas dans le référentiel CentOS, , vous avez probablement besoin de compiler à partir de la source. Les autres réponses ici étaient incomplètes. Ci-dessous se trouve ce qui a fonctionné (CentOS 6.9), bien que cela puisse introduire des incompatibilités avec les logiciels installés et ne mettra pas à jour automatiquement OpenSL.
Choisissez la version openssl de https://www.openssl.org/source/
Connectez-vous en tant que root:
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
Vous pouvez également consulter le journal des modifications local pour vérifier si OpenSSL est corrigé contre la vulnérabilité avec la commande suivante:
rpm -q --changelog openssl | grep CVE-2014-0224
Si aucun résultat n'est renvoyé, vous devez appliquer un correctif à OpenSSL.
http://www.liquidweb.com/kb/update-and-patch-openssl-for-the-ccs-injection-vulnerability/
c'est facile! vous téléchargez le fichier binaire?. téléchargez le dernier paquet rpm openssl-1.0.1e-30.el6.x86_64 vérifiez quelle était la version actuelle à l'aide de rpm -q openssl. si celle-ci est plus ancienne, rpm -U openssl-1.0.1e-30.el6.x86_64. si yum est configuré, met à jour ce paquet dans le référentiel et fait yum update openssl si votre référentiel dans RHN fait simplement yum update openssl-1.0.1g est très ancien et valnuarable
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
et
openssl version