Présentation
Au cas où vous ne l'auriez pas déjà compris, le cryptage est important. Pour le Web, cela signifie utiliser des certificats SSL pour sécuriser le trafic Web. Récemment, Mozilla et Google sont allés jusqu'à marquer les sites sans certificats SSL comme non sécurisés dans Firefox et Chrome.
Afin de mettre le Web à niveau avec le cryptage, la Linux Foundation, l'Electronic Frontier Foundation et bien d'autres ont créé LetsEncrypt. LetsEncrypt est un projet conçu pour permettre aux utilisateurs d'accéder à des certificats SSL gratuits pour leurs sites Web. À ce jour, LetsEncrypt a émis des millions de certificats et connaît un succès retentissant.
L'utilisation de LetsEncrypt est facile sur Debian, en particulier lors de l'utilisation de l'utilitaire Certbot de l'EFF.
Système d'exploitation
- SE :Debian Linux
- Version :9 (Étirement)
Installation pour Apache
Certbot dispose d'un programme d'installation spécialisé pour le serveur Apache. Debian a ce programme d'installation disponible dans ses dépôts.
# apt install python-certbot-apache
Le paquet fournit le certbot
commande. Le plug-in Apache s'interface avec le serveur Apache pour découvrir des informations sur vos configurations et les domaines pour lesquels il génère des certificats. Par conséquent, la génération de vos certificats ne nécessite qu'une courte commande.
# certbot --apache
Certbot générera vos certificats et configurera Apache pour les utiliser.
Installation pour Nginx
Nginx nécessite une configuration un peu plus manuelle. Là encore, si vous utilisez Nginx, vous êtes probablement habitué aux configurations manuelles. Dans tous les cas, Certbot est toujours disponible en téléchargement via les référentiels Debian.
# apt install certbot
Le plugin Certbot est toujours en version alpha, il n'est donc pas vraiment recommandé de l'utiliser. Certbot dispose d'un autre utilitaire appelé "webroot" qui facilite l'installation et la maintenance des certificats. Pour obtenir un certificat, exécutez la commande ci-dessous, en spécifiant votre directeur racine Web et tous les domaines que vous souhaitez couvrir par le certificat.
# certbot certonly --webroot -w /var/www/site1 -d site1.com -d www.site1.com -w /var/www/site2 -d site2.com -d www.site2.comVous pouvez utiliser un certificat pour plusieurs domaines avec une seule commande.
Nginx ne reconnaîtra pas les certificats tant que vous ne les aurez pas ajoutés à votre configuration. Tous les certificats SSL doivent être répertoriés dans le
server
bloquer pour leur site Web respectif. Vous devez également spécifier dans ce bloc que le serveur doit écouter sur le port443
et utilisez SSL.serveur { écouter 443 ssl par défaut ; # Votre # Autre ssl_certificate /path/to/cert/fullchain.pem ssl_certificate_key /path/to/cert/privkey.pem # Config # Lines}Enregistrez votre configuration et redémarrez Nginx pour que les modifications prennent effet.
# systemctl redémarrer nginxRenouvellement automatique avec Cron
Que vous utilisiez Apache ou Nginx, vous devrez renouveler vos certificats. Se souvenir de le faire peut être pénible, et vous ne voulez certainement pas qu'ils expirent. La meilleure façon de gérer le renouvellement de vos certificats est de créer une tâche cron qui s'exécute deux fois par jour. Des renouvellements biquotidiens sont recommandés car ils protègent contre l'expiration des certificats en raison d'une révocation, ce qui peut se produire de temps à autre. Pour être clair, cependant, ils ne se renouvellent pas à chaque fois. L'utilitaire vérifie si les certificats sont périmés ou le seront dans les trente jours. Il ne les renouvellera que s'ils répondent aux critères.
Tout d'abord, créez un script simple qui exécute l'utilitaire de renouvellement de Certbot. C'est probablement une bonne idée de le placer dans le répertoire personnel de votre utilisateur ou dans un répertoire de scripts afin qu'il ne soit pas servi.
# ! /bin/bashcertbot renouveler -qN'oubliez pas de rendre le script exécutable également.
$ chmod +x renouveler-certs.shMaintenant, vous pouvez ajouter le script en tant que tâche cron. Ouvrez votre crontab et ajoutez le script.
# crontab -e* 3,15 * * * /home/user/renew-certs.shUne fois que vous quittez, le script devrait s'exécuter tous les jours à 3 h et 15 h. par l'horloge du serveur.
Réflexions finales
Le cryptage de votre serveur Web protège à la fois vos invités et vous-même. Le cryptage continuera également à jouer un rôle dans l'affichage des sites dans les navigateurs, et il n'est pas exagéré de supposer qu'il jouera également un rôle dans le référencement. Quel que soit votre point de vue, chiffrer votre serveur Web est une bonne idée, et LetsEncrypt est le moyen le plus simple de le faire.