Suite à de nombreuses remarques quant à ma sécurisation SSL bidon dans les commentaires de mon précédent article, j'ai décidé de corriger ça ce soir.

Dans un premier temps, je me servais d'un certificat auto-signé. Et autant vous dire que les navigateurs ne me considéraient pas comme une entité de toute confiance. À raison. Non pas que je cherche à pirater des données personnelles, mais bien parce que techniquement je me classe dans la catégorie des amateurs. Et n'ayant même pas confiance en moi, je vois mal des organismes m'accorder la leur.

Donc pour faire un peu plus sérieux, et accessoirement pour sauver mon flux RSS, je suis passé par le service de certification gratuit "Let's Encrypt". Et il n'y a pas à dire, ça assure.

Pour générer des certificats, rien de plus simple. Dans un permier temps, on installe Let's Encrypt :

git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
./letsencrypt-auto --help

À partir de là, il faut couper le serveur (et comme je suis un fou, j'ai fait ça le soir pour faire chier le plus de personne possible) avec la commande suivante (avec Nginx comme logiciel de serveur web) :

service nginx stop

Et là vous vous hallucinez car vous reconnaissez SysV et non systemd... Oui j'aime nager à contre-courant (en fait je n'ai rien choisit mais on s'en fou, c'est pour la postérité). Mais là n'est pas la question et si jamais vous êtes sous systemd, la commande pour couper le service est :

systemctl stop nginx

À ce moment là, il ne reste plus qu'à générer les couples certificats/clés avec cette commande :

./letstencrypt-auto certonly --standalone --agree-tos --email email@exemple.org -d exemple.org

Après quelques secondes, vous retrouverez le certificat (fullchain.pem) et la clé (privkey.pem) dans le dossier suivant :

/etc/letsencrypt/live/exemple.org/

Et... C'est tout ! Il ne vous reste plus qu'à changer la configuration de Nginx pour prendre en compte les nouveaux certificats et le tour est joué. Simple comme bonjour.

Juste un détail, quand vous définissez l'adresse du certificat dans la configuration de Nginx, ne faites pas une erreur de frappe comme moi... Ça peut vous ruiner une soirée.