14 votes

Comment installer OpenSSL 1.1.1 et libSSL ?

Je souhaite utiliser la version OpenSSL1.1.1 pour le développement de mon code. Actuellement, je travaille avec OpenSSL 1.1.0g sur une machine Ubuntu 18.04.

Si je télécharge le paquet avec la commande sudo apt install libssl-dev puis j'obtiens la version OpenSSL 1.1.0g,

Si je télécharge le paquet avec la commande sudo apt install libssl1.0-dev puis j'obtiens la version OpenSSL 1.0.2n,

Comment télécharger le paquet OpenSSL 1.1.0 et libssl ?

Note : Je ne veux pas télécharger le paquet OpenSSL séparément et le construire en externe. Je suis censé le télécharger à l'aide d'un paquet Ubuntu.

20voto

Marmayogi Points 2220

En fait, votre question était dupliquée et la même question est déjà apparue dans Mettre à jour openssl 1.1.0 vers 1.1.1 dans Ubuntu 18.04 .

Comme l'a déjà répondu @Kevin Bowen, openssl 1.1.1 n'est pas dans les dépôts Ubuntu actuels vous devrez télécharger, compiler et installer manuellement la dernière version d'OpenSSL.

C'est la même chose que j'ai suggérée au début dans comments section. Mon préféré est toujours d'installer dans /opt Je l'ai donc également suggéré dans comments section.

Si vous ne voulez pas le faire, vous serez bloqué pour toujours !

Qu'est-ce qu'OpenSSL ?

OpenSSL est une boîte à outils de cryptographie en ligne de commande qui met en œuvre les protocoles réseau Secure Sockets Layer (SSL v2/v3) et Transport Layer Security (TLS v1), ainsi que les normes de cryptographie connexes qu'ils requièrent.

La plupart des applications et outils de communication en réseau qui utilisent TLS / SSL peuvent contenir des outils OpenSSL. Si vous utilisez des applications et des paquets qui dépendent des dernières versions d'OpenSSL, vous devrez peut-être l'installer manuellement sur les systèmes Ubuntu.

OpenSSL s'appuie sur deux bibliothèques importantes qui font partie du projet OpenSSL :

  • libssl fournit les implémentations côté client et côté serveur pour SSLv3 et TLS.
  • libcrypto fournit un support cryptographique général et X.509 nécessaire pour le protocole SSL/TLS, mais pas pour la journalisation. SSL/TLS mais n'en fait pas logiquement partie

L'outil par défaut d'OpenSSL fourni avec Ubuntu n'est pas le plus récent. Pour obtenir la dernière version, vous devez le télécharger vous-même et l'installer .

Guide d'installation de la dernière version de openssl 1.1.1b sur Ubuntu 18.04.

Étape 1 : Télécharger openssl 1.1.1b

Télécharger la dernière version d'openssl 1.1.1b à partir du paquet source Ubuntu .

Cryptographie OpenSSL et boîte à outils SSL/TLS

enter image description here Figure-1: Download openssl 1.1.1b

Vous pouvez également installer facilement le paquet openssl 1.1.1b en exécutant les commandes ci-dessous

wget https://www.openssl.org/source/openssl-1.1.1b.tar.gz

Étape 2 : Installer Openssl à partir du paquet tar.gb

Créez maintenant /opt/openssl répertoire :

$ sudo mkdir /opt/openssl enter image description here Figure-2: Create folder for openssl under /opt directory.

Maintenant que vous avez téléchargé le paquet d'archives correspondant à votre système dans le fichier ~/Downloads exécutez les commandes suivantes pour installer Openssl .

$ sudo tar xfvz ~/Downloads/openssl-1.1.1b.tar.gz --directory /opt/openssl

enter image description here Figure-3: Extraction into /opt/openssl is complete.

$ perl --version enter image description here Figure-4: Perl version.

Exportation LD_LIBRARY_PATH avec la valeur suivante :

$ export LD_LIBRARY_PATH=/opt/openssl/lib

Vérifier que LD_LIBRARY_PATH est réglé sur la valeur correcte par cette commande :

$ echo $LD_LIBRARY_PATH

enter image description here Figure-5: Value of environment variable LD_LIBRARY_PATH is /opt/openssl/lib.

Délivrer le config commandes :

 $ cd /opt/openssl/openssl-1.1.1b
 $ sudo ./config --prefix=/opt/openssl --openssldir=/opt/openssl/ssl

enter image description here Figure-6: config command

Ensuite, émettre make commande :

$ sudo make

Enjeu make test pour vérifier s'il y a des erreurs éventuelles :

$ sudo make test

enter image description here Figure-7: Bingo! All tests successful.

Enjeu make install commandes :

$ sudo make install

Où se trouve openssl binaire en cours de localisation ?

Exécutez les commandes suivantes :

$ sudo updatedb                              # rebuild library cache
$ locate openssl | grep /opt/openssl/bin

enter image description here Figure-8: Locate openssl binary.

Le répertoire /usr/bin a également openssl binaire qui est une version plus ancienne. La présence de ce unwanted openssl binaire /usr/bin/openssl va nous causer des ennuis, nous devons donc vérifier cela !

Pour aborder la question de la sécurité, il convient d'exécuter les commandes suivantes /usr/bin/openssl binaire :

$ cd /usr/bin
$ ls -l openssl
$ sudo mv openssl openssl.old       # rename earlier version openssl to openssl.old

enter image description here Figure-9: Rename earlier version of openssl binary to openssl.old.

Étape 3 : Mise en place PATH variable d'environnement

Openssl doit définir PATH qui doit être définie comme indiqué ci-dessous.

Créer un fichier appelé openssl.sh sous /etc/profile.d/ répertoire.

$ sudo touch /etc/profile.d/openssl.sh
$ sudo vi /etc/profile.d/openssl.sh

Ajouter le contenu suivant :

#!/bin/sh
export PATH=/opt/openssl/bin:${PATH}
export LD_LIBRARY_PATH=/opt/openssl/lib:${LD_LIBRARY_PATH}

Enregistrez et fermez le fichier. Rendez-le exécutable à l'aide de la commande suivante.

$ sudo chmod +x /etc/profile.d/openssl.sh

Ensuite, définissez les variables d'environnement de manière permanente en exécutant la commande suivante :

 $ source /etc/profile.d/openssl.sh

Déconnectez-vous ou redémarrez votre système.

Maintenant, vérifiez le PATH variable d'environnement :

$ echo $PATH

enter image description here Figure-10: PATH envirnement variable having /opt/openssl/bin directory

$ which openssl enter image description here Figure-11: The binary 'openssl' is under '/opt/openssl/bin' directory

Maintenant, vérifiez le openssl version en utilisant la commande :

$ openssl version

enter image description here Figure-12: openssl latest version

Maintenant, vérifiez la version d'openssl à l'aide de l'outil de ligne de commande :

$ openssl

enter image description here Figure-13: Check version through 'openssl' command line.

Que se passera-t-il si LD_LIBRARY_PATH n'est pas correctement réglé ?

$ openssl

enter image description here Figure-14: Error thrown by 'openssl' command line when 'LD_LIBRARY_PATH' is not properly set.

Comme décrit par Step-3 vous devez définir LD_LIBRARY_PATH à la valeur correcte qui est /opt/openssl/lib

$ export LD_LIBRARY_PATH=/opt/openssl/lib:$LD_LIBRARY_PATH

Résumé :

Cette méthode permet de télécharger, d'extraire, de compiler et d'installer manuellement la dernière version 1.1.1b d'OpenSSL.

0voto

Sur Ubuntu 20.04, je voulais passer de la version 1.1.1g à la version 1.1.1l mais elle n'est pas encore disponible dans leur repo officiel. En cours de route, j'ai été bloqué par une erreur à propos d'openssl incapable de vérifier l'autorité de l'émetteur, lorsque j'ai essayé d'utiliser wget après la mise à jour.

Finalement, j'ai réussi à faire fonctionner le tout, voici les commandes.

cd ~; mkdir /opt/openssl; mkdir /opt/openssl/ssl; sudo ln -s /etc/ssl/certs /opt/openssl/ssl/certs;
wget https://www.openssl.org/source/openssl-1.1.1l.tar.gz;
wget https://www.openssl.org/source/openssl-1.1.1l.tar.gz.sha256;
tar -zxf openssl-1.1.1l.tar.gz --directory /opt/openssl;
cd /opt/openssl/openssl-1.1.1l;
./config --prefix=/opt/openssl --openssldir=/opt/openssl/ssl;
make;
make test;
sudo make install;
mv /usr/bin/openssl /usr/bin/openssl-1.1.1g;
ln -s /usr/local/bin/openssl /usr/bin/openssl;
ldconfig;

touch /etc/profile.d/openssl.sh;
echo '#!/bin/sh' > /etc/profile.d/openssl.sh;
echo 'export PATH=/opt/openssl/bin:${PATH}' >> /etc/profile.d/openssl.sh;
echo 'export LD_LIBRARY_PATH=/opt/openssl/lib:${LD_LIBRARY_PATH}' >> /etc/profile.d/openssl.sh;

chmod +x /etc/profile.d/openssl.sh; source /etc/profile.d/openssl.sh;
sudo updatedb;
openssl version;

Ensuite, testez-le et assurez-vous que vous n'obtenez pas d'erreurs :

wget https://www.openssl.org/source/openssl-1.1.1l.tar.gz.sha256

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X