RSS
 

Installer OpenSSL sous Linux

11 oct

OpenSSL est une boite à outils open source qui implémente SSL/TLS ainsi qu'une bibliothèque de cryptographie.

L'objectif de cette note est d'installer OpenSSL sur un serveur Linux.

Logiciels utilisés : OpenSSL 1.0.0

Système d'exploitation : Debian  5.0, Linux 2.6.34

1 – Pré-requis

Des outils de compilation : make et g++. Ainsi que gnupg pour la vérification du package. Etant sur Debian, j'utilise apt-get pour les récupérer :

$ apt-get install g++ make gnupg

Je vous invite à vous rendre sur cette page pour récupérer le lien de la dernière version stable d'OpenSSL: http://www.openssl.org/source/

Et on récupère le package qui va bien, ainsi que les fichiers nécessaires à la vérification du package (intégrité et authenticité) :

$ cd ~
$ wget http://www.openssl.org/source/openssl-1.0.0c.tar.gz
$ wget http://www.openssl.org/source/openssl-1.0.0c.tar.gz.asc
$ wget http://www.openssl.org/source/openssl-1.0.0c.tar.gz.sha1

2 – Vérifier le package

Avant d'aller plus loin, il faut s'assurer que d'une part le package n'est pas altéré, et d'autre part qu'il est authentique, c'est à dire qu'il n'a pas été détourné par un tiers.

Nous utiliserons deux outils pour cela : sha1sum pour l'intégrité et gnupg pour l'authenticité.

2.1 – Intégrité

L'intégrité du package se vérifie grâce au programme sha1sum, qui va comparer le hash SHA1 du package avec le hash SHA1 récupéré sur le site d'OpenSSL :

$ sha1sum openssl-1.0.0a.tar.gz | awk '{print $1}' | cmp - openssl-1.0.0a.tar.gz.sha1

Si pas de message, c'est bon !

2.2 – Authenticité

L'authenticité du package se vérifie grâce au programme gnupg, qui va vérifier la signature du package (fichier openssl*.asc) avec une des clés publique présente sur le site d'OpenSSL. On va par exemple prendre la clé F295C759. Le contenu est à récupérer ici (en commençant à ---BEGIN) : http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xA2D29B7BF295C759

$ vi openssl_pubkeyF295C759

Y mettre le contenu précédemment récupéré. On importe ensuite la clé et on vérifie le package :

$ gpg --import openssl_pubkeyF295C759
gpg: clé F295C759: « Dr Stephen Henson <shenson@drh-consultancy.co.uk> » n'a pas changé
gpg:        Quantité totale traitée: 1
gpg:                      inchangée: 1
$ gpg --verify openssl-1.0.0c.tar.gz.asc openssl-1.0.0c.tar.gz
gpg: Signature faite le mar 01 jun 2010 15:42:23 CEST avec la clé RSA ID F295C759
gpg: Bonne signature de « Dr Stephen Henson <shenson@drh-consultancy.co.uk> »
gpg:                 alias « Dr S N Henson <shenson@drh-consultancy.demon.co.uk> »
gpg:                 alias « Dr Stephen Henson <stephen.henson@opennetworksecurity.com> »
gpg: ATTENTION: Cette clé n'est pas certifiée avec une signature de confiance !
gpg:            Rien ne dit que la signature appartient à son propriétaire.
Empreinte de clé principale: D0 5D 8C 61 6E 27 E6 60  41 EC B1 B8 D5 7E E5 97

Le "ATTENTION" indique simplement que la clé utlisée n'est pas certifiée par un tiers de confiance. Si vous n'avez pas confiance, vous pouvez toujours contacter la personne par téléphone pour s'assurer avec elle que vous possédez bien sa clé … (sisi !)

3 – Compiler et installer

Une fois le package d'OpenSSL récupéré et vérifié on le décompresse dans le répertoire /usr/local/src :

$ tar xvzf openssl-1.0.0c.tar.gz -C /usr/local/src
$ cd /usr/local/src/openssl-1.0.0c/

On peut maintenant configurer, compiler et installer

$ ./config --prefix=/usr/local/openssl
$ make
$ make install

Voilà, c'est installé !

4 – Modifier le PATH

Afin de pouvoir utiliser les commandes fournies par OpenSSL sans avoir à retaper toute l'arborescence, nous allons modifier la variable PATH des utilisateurs :

$ echo -e "openssl=/usr/local/ssl/bin\nPATH=\$PATH:\$openssl" >> /etc/profile
$ . /etc/profile

5 – Tester

Pour le test on va juste afficher la version d'OpenSSL qui vient d'être installé :

$ openssl version
OpenSSL 1.0.0c 2 Dec 2010

Et voilà pour cette note sur l'installation d'OpenSSL sous Linux.

 
6 Comments

Posted in Linux, OpenSSL

 

Tags: ,

Leave a Reply

 

 
  1. Installer un serveur OpenSSH sur une distribution Linux « Mon Coin Du Net

    19 décembre 2010 at 15 h 36 min

    [...] installée en même temps que l'application du même nom (cf. l'article http://blog.moncoindunet.fr/linux/installer-openssl-sous-linux/). Ces deux librairies sont disponibles via l'apt-get de Debian [...]

     
  2. Olivier

    25 juin 2012 at 10 h 30 min

    Merci pour les informations très utiles !!!

     
  3. James

    2 janvier 2014 at 21 h 40 min

    Bonjour superbe expliquation mais je bloque au 4 je dois remplacer profile ou PATH … désolé je debute avec linux :)

     
    • Cyril

      20 mars 2014 at 20 h 11 min

      Vous avez juste à recopier la ligne du point 4, cette ligne stockée dans le fichier profile permet de modifier la variable PATH des utilisateurs :)

       
  4. lk

    30 avril 2014 at 0 h 48 min

    il vaut mieux ceci:
    ./config –prefix=/usr/local/
    le but étant de mettre a jour /usr/local/bin &&
    /usr/local/include && /usr/local/lib && /usr/local/ssl

     
    • Cyril

      7 mai 2014 at 21 h 18 min

      En fait là le but était plutôt de tout installer dans /usr/local/openssl ;)