4

Apache openssl: certificat auto-signé HTTPS

Nous commençons par générer la bi-clé RSA, qui peut être protégée par une passphrase. Pour se faciliter la vie, on peut ne rien mettre pour la phrase de passe. Ceci nous évite de devoir la retaper à chaque redémarrage du serveur.

root@serveur#cd /etc/apache2/
root@serveur#mkdir ssl
root@serveur#cd ssl
root@serveur#openssl genrsa -out apache.key 1024

Nous générons ensuite le certificat autosigné

root@serveur#openssl req -new -x509 -days 365 -key apache.key -out apache.crt

Dans les questions posées, il faut faire attention au champ Common Name (eg, YOUR name) :. Il faut mettre le même nom que le serveur, pour mon cas ubuntupc.hd.free.fr. Sinon, nous aurons un message comme quoi le nom du propriétaire du certificat et du site ne correspond pas.

* -x509 : génération d’un certificat autosigné, et non d’une simple requête
* -days 365 : le certificat est valable 365 jours
* -key server.key : la clé publique est extraite de la bi-clé précédente
* -out server.crt : le certificat est copié

Le certificat n’est pas signé par une autorité de certification (type verisign). Ainsi, lors de son utilisation, le browser affichera une anomalie. Pour information, sur verisign.fr, un certificat coute très cher :/ par an.

Pour vérifier le bon usage du certificat :

root@serveur#openssl x509 -in apache.crt -text -noout

exemple d’utilisation dans un virtualhost:

<virtualhost *:443>
        ServerName serveurweb.dom
        DocumentRoot /var/www/siteweb
        Alias /monsiteweb /var/www/sitweb
        SSLEngine on
        SSLCertificateFile /etc/apache2/ssl/apache.crt
        SSLCertificateKeyFile /etc/apache2/ssl/apache.key
</virtualhost>

Partager l'article :





fred

"Dire que l'on s'en fiche du droit à la vie privée sous prétexte qu'on a rien à cacher, c'est comme déclarer que l'on se fiche du droit à la liberté d'expression sous prétexte qu'on a rien à dire." Edward Snowden

4 commentaires

  1. Bonjour,

    Pour vérifier le bon usage du certificat, la bonne syntaxe pour ce tuto est
    root@serveur#openssl x509 -in apache.crt -text -noout
    et non
    root@serveur#openssl x509 -in server.crt -text -noout

    Merci pour ce bon tuto !

  2. Bonjour Auden,
    merci pour avoir relevé l’erreur!
    c’est corrigé :-)

  3. Sauf erreur, starssl fait des certificats autosignés gratuitement.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *