Passez son site en HTTPS à plusieurs avantages non-négligeables. Il donne une image de qualité aux visiteurs, il accroît la sécurité ce qui est très utile si vous transmettez des données sensibles comme des mots de passe ou information de paiement, il est quelque chose d’officiellement positif pour Google et permet d’utiliser la technologie HTTP2 qui réduit les temps de chargement.
Dans ce tuto, je vais vous expliquez comment le mettre en place sans rien oublier. Dans cet exemple, j’utilise une machine Ubuntu 16.04 installé comme expliqué ici et avec un achat de certificat chez Gandi.net.
Générer la clé SSL sur le serveur et valider les infos
Commençons par générer les fichiers requis sur notre serveur. Effectuez la commande suivante et répondez aux questions posées.
openssl req -nodes -newkey rsa:2048 -sha256 -keyout mon_domaine.key -out mon_domaine.csr
Mettez l’url de votre site dans le champs Common Name
Cette commande a crée 2 fichiers : la clé publique en .csr et la clé privée en .key que nous devons garder et qu’il faudra utiliser. Lors de l’achat de sur Gandi.net, il faut transmettre la clé .CSR. Maintenant, il faut poursuivre l’achat et attendre que le registrar confirme l’activation du certificat.
Une fois le certificat activé, il faut maintenant copier ou déplacer les clés générées sur le serveur et télécharger la clé intermédiaire (.pem) depuis votre interface d’administration chez votre registrar. J’utilise les commandes suivantes pour les déplacer.
cp mon_domaine.csr /etc/ssl/certs/mon_domaine.csr
cp mon_domaine.key /etc/ssl/private/mon_domaine.key
Vous devez actuellement avoir les fichier suivants sur votre serveur:
/etc/ssl/certs/mon_domaine.crt clé fournie par le registrar
/etc/ssl/certs/mon_domaine.csr la clé publique
/etc/ssl/private/mon_domaine.key la clé privée
/etc/ssl/certs/GandiStandardSSLCA2.pem le certificat intermédiaire pour rester compatible avec les vieux navigateurs fournie par le registrar
Ajouter le certificat SSL
Une fois tous les fichiers nécessaires en place, je modifie mon fichier etc\apache2\sites-enabled\mon_domaine.conf de la façon suivante. Je recopie tout le contenu de VirtualHost *:80 .. /VirtualHost et le renomme en VirtualHost *:443 … /VirtualHost et j’ajoute la position de mes fichiers crt, key et pem. Pour arriver à quelque chose qui ressemble à cela:
ServerName web-presence.ch
DocumentRoot /home/web-presence/public_html
SSLEngine on
SSLCertificateFile /etc/ssl/certs/web-presence.crt
SSLCertificateKeyFile /etc/ssl/private/web-presence.key
SSLCertificateChainFile /etc/ssl/certs/GandiStandardSSLCA2.pem
...
Je m’assure ensuite que le fichier etc\apache2\ports.conf contient la ligne suivante:
Listen 443
Je m’assure finalement que ssl est activé sur mon serveur et je redémarre.
sudo a2enmod ssl
/etc/init.d/apache2 restart
Votre site devrait maintenant être accessible avec les https. Pour s’assurer que tout est en ordre, vous pouvez par exemple le tester avec sslshopper. Allez voir l’article faire une redirection depuis le fichier htacces
Checklist pour passer sans erreur de HTTP en HTTPS
Assurez-vous que toutes les images et les liens sont maintenant en https.
Des outils comme ScreaminFrog permettent de faire cela très facilement.
Contrôler vos balises hreflang et canonical.
Créer une nouvelle propriété dans la Search Console de Google.
Copiez les fichiers de désaveux de liens si vous en avez.
Contrôler les fichiers sitemap
Contrôler les fichiers CSS
Modifier si nécessaire votre fichier robots.txt
Changer un maximum de backlink sur la nouvelle adresse