Marco : Ajout du support https sur un serveur Apache
vendredi 28 février 2014 à 17:02Si comme moi vous hébergez un blog sur votre serveur, le besoin d’avoir une connexion sécurisée https se fait vite ressentir, que ce soit pour accéder à la partie administration de votre site ou pour la manipulation de vos bases de données avec phpMyAdmin par exemple. Je vous propose donc ici un petit tutoriel avec le serveur Apache2 qui explique comment rendre accessible en https un site web (ici libre-experience.org).
Installation des paquets nécessaires et activation du module SSL
Le pré-requis est qu’Apache soit installé. Il faut ensuite ajouter les paquets suivants :
apt-get install openssl ssl-cert
Ensuite il faut activer le module ssl :a2enmod ssl
Génération des certificats SSL
Création de la clé
cd /etc
openssl genrsa -out private/libre-experience.org.key 2048
Génération du Certificate Signing Requests (CSR)
Il s’agit de la demande de signature d’un certificat par une autorité de certification. Le certificat signé sera ensuite retourné. Le champ important est Common name (CN) dans lequel on pourra mettre par exemple :
- www.libre-experience.org : certificat pour le site https://www.libre-experience.org
- *.libre-experience.org : extension à tous les sous-domaines xyz.libre-experience.org
- *.libre-experience.org/CN=libre-experience.org : on ajoute en plus libre-experience.org (ainsi https://libre-experience.org sera reconnue)
openssl req -new -key private/libre-experience.org.key -out libre-experience.org.csr
Signature du certificat
Pour signer le certificat, deux possibilités s’offrent à nous :
- Auto-signature du certificat : c’est la solution la plus simple mais aussi la moins bonne car ne fournissant aucune garantie…
openssl x509 -req -days 3650 -in libre-experience.org.csr -signkey private/libre-experience.org.key -out certs/libre-experience.org.crt
- Signature (gratuite) par l’autorité CACert :
- Dans le menu sélectionner : “Server certificates / new”
- Copier le contenu de la demande de certificat générée précédemment (ici libre-experience.org.csr).
- Copier le résultat obtenu dans le fichier certs/libre-experience.org.crt
Installation
Dans le fichier de configuration du site (par exemple /etc/apache2/sites-available/libre-experience.site ajouter :
DocumentRoot /var/www/libre-experience
ServerName www.mirelsol.org
# Add ssl protocol
SSLEngine On
SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire
SSLCertificateFile /etc/ssl/certs/mirelsol.org.crt
SSLCertificateKeyFile /etc/ssl/private/mirelsol.org.key
Recharger Apache :/etc/init.d/apache2 reload
Original post of Marco.Votez pour ce billet sur Planet Libre.
Articles similaires
- Malangot : Sécurisation de l’identification wordpress par certificat SSL (05/02/2012)
- Nassim KACHA : Renforcez vos sites HTTPS contre les attaques de type BEAST (06/06/2012)
- David Mercereau : Service web : Un mode maintenance pour bricoler (26/11/2013)
- David Mercereau : Serveur proxy Squid3 avec SSL (rebuild debian squeeze package) (30/05/2012)
- TheGlu : Apachetop, ou comment observer la vie trépidante de son serveur apache en direct. (11/01/2008)