Il arrive parfois que l'on souhaite mettre en place une version sécurisé d'un site web. Si un certificat auto signé suffit, voici un process rapide, simple et pas cher :
Génération d'une clé privé et d'un certificat en une ligne :
RANDFILE=/dev/random openssl req $@ -new -x509 -days 365 -nodes \ -out /etc/apache2/ssl/servername.cert \ -keyout /etc/apache2/ssl/servername.key
On obtient donc deux fichiers :
- servername.cert, le certificat du serveur
- servername.key, la clé privé du serveur
bien sûr, on limite l'accès à notre clé privé :
chmod 600 servername.key
puis on modifie la configuration de notre virtualhost de la façon suivante :
NameVirtualHost *:443
<VirtualHost *:443>
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/servername.cert
SSLCertificateKeyFile /etc/apache2/ssl/servername.pem
On demande à apache de relire sa configuration
/etc/init.d/apache2 reload
Vous voilà passez en HTTPS