Avoir un site Web compatible SSL est de plus en plus important. Google classe une adresse HTTPS au-dessus d'une adresse HTTP, et cela est configuré pour continuer jusqu'à ce que HTTP soit consigné dans l'historique.
Voici comment générer rapidement des certificats SSL et les mettre en œuvre sur votre site Web en quelques minutes et gratuitement.
Configurer SSL sur votre site Web n'a jamais été aussi facile grâce à Let's Encrypt, une autorité de certification SSL populaire et gratuite.
Fondé en avril 2016, leur script certbot et le fait qu'il s'agisse d'un service gratuit ont fait de Let's Encrypt un nom populaire dans le monde du développement en ligne.
Cet article suppose que vous disposez déjà d'un serveur Web Linux et d'un nom de domaine auxquels vous souhaitez ajouter SSL. Connectez-vous à votre serveur via SSH et vérifiez si oui ou non certbot est déjà installé avec la commande :
sudo certbot --version
Si le numéro de version est affiché, alors certbot est déjà installé et vous pouvez passer à la section suivante. Sinon, vous pouvez installer certbot avec la commande suivante :
sudo apt-get -y install certbot
Pour vous assurer que cet article fonctionne pour tous les serveurs, arrêtez d'abord temporairement votre serveur HTTP existant avec la commande appropriée :
arrêt nginx du service sudo
sudo service apache2 stop
Veuillez noter que le nom de domaine pour lequel vous souhaitez générer un certificat SSL doit déjà pointer vers l'adresse IP de votre serveur Web. En supposant que oui, générez un nouveau certificat SSL avec la commande :
certbot certuniquement
Vous serez invité à choisir une méthode pour vérifier votre nom de domaine. Appuyez sur 1 pour démarrer une instance de serveur temporaire, et la prochaine invite vous demandera votre nom de domaine. Lors de la saisie de votre domaine, certbot vérifiera et s'assurera que le nom de domaine se résout sur votre serveur, ce qui signifie que vous contrôlez le domaine, puis générera votre nouveau certificat SSL.
Si vous utilisez Nginx comme serveur HTTP, déterminez d'abord où se trouve le fichier de configuration de votre site Web. Ce sera toujours dans l'un des répertoires suivants :
Une fois que vous connaissez l'emplacement du fichier de configuration de votre site, ouvrez-le dans un éditeur de texte tel que nano avec la commande :
sudo nano /etc/nginx/sites-enabled/default.conf
Tout en haut du fichier, ajoutez les lignes suivantes :
serveur {
écouter 80 ;
réécrire ^ https://$server_name$request_uri ? permanent;
}
Cela redirigera automatiquement toutes les requêtes non SSL vers votre site vers leur homologue SSL. En haut du fichier, vous verrez le début de la configuration de votre site :
serveur {
écouter 80 ;
nom_serveur domaine.com www.domaine.com ;
Modifiez ceci et changez listen 80 ; pour écouter 443 ssl ; Ajoutez ensuite les lignes suivantes en dessous :
ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem;
Assurez-vous de remplacer domain.com dans les lignes ci-dessus par votre nom de domaine. Enregistrez et fermez le fichier en appuyant sur Ctrl+W suivi de l'invite, et redémarrez Nginx avec la commande :
démarrage du service sudo nginx
Visitez votre site Web, et il devrait maintenant être en SSL sans aucun avertissement du navigateur concernant un site non sécurisé.
Si vous utilisez Apache comme serveur HTTP, localisez d'abord le fichier de configuration de votre site Web qui se trouvera très probablement dans le répertoire /etc/apache2/sites-enabled . Si vous n'êtes pas sûr de l'emplacement, exécutez la commande :
apachectl -S
Cela affichera tous les hôtes virtuels configurés sur Apache avec leurs emplacements respectifs. Une fois que vous avez localisé le fichier de configuration, ouvrez-le dans un éditeur de texte avec la commande :
sudo nano /etc/apache2/sites-enabled/default.conf
En haut de ce fichier, saisissez les lignes :
ServerName votredomaine.com
Redirection permanente / https://votredomaine.com/
Dans le
SSLEngine sur
SSLCertificateFile /etc/letsencrypt/live/domain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/domain.com/privkey.pem
Assurez-vous de changer domaine.com dans les lignes ci-dessus avec votre domaine actuel. Enregistrez et fermez le fichier en appuyant sur Ctrl+X suivi de l'invite, puis redémarrez Apache avec la commande :
démarrage du service sudo apache2
Visitez votre site Web, et il devrait maintenant être en SSL sans aucun avertissement du navigateur concernant un site non sécurisé.
Si jamais vous avez besoin de renouveler les certificats SSL pour votre site Web, cela peut facilement être fait avec la commande suivante :
renouveler le certbot
Félicitations, chaque visiteur de votre site Web sera désormais obligé d'utiliser sa version SSL, qui est désormais protégée contre un certificat SSL nouvellement généré et signé par une autorité de confiance, ce qui signifie que vos visiteurs ne recevront aucun avertissement de sécurité.
Dans cet article, vous avez appris ce que certbot c'est-à-dire comment générer de nouveaux certificats SSL, comment configurer Nginx ou Apache avec SSL et comment renouveler vos certificats ultérieurement.
Crédit image :Robert Avgustin/Shutterstock