Comment sécuriser Nginx avec Let's Encrypt sur Centos 8

Comment sécuriser Nginx avec Let's Encrypt sur Centos 8

Fondée en avril 2016 par la Fondation Electronic Frontier (EFF), Escryptons est un certificat numérique gratuit et automatisé qui fournit TLS cryptage pour les sites Web sans frais du tout.

L'objectif de Escryptons Le certificat est d'automatiser la validation, la création, la signature ainsi que l'auto-renouvellement du certificat de sécurité. Ce certificat permet des connexions cryptées à des serveurs Web à l'aide du Https Protocole de manière simple et sans tracas sans aucune complexité. Le certificat est valable uniquement 90 jours où AutoRenewal peut être activé.

Lecture recommandée: Comment sécuriser Apache avec Let's Encrypt SSL Certificate sur CentOS 8

Dans cet article, nous montrerons comment vous pouvez installer Escryptons Pour obtenir un certificat SSL gratuit pour sécuriser le Nginx serveur Web sur Centos 8 (Les mêmes instructions fonctionnent également sur Rhel 8). Nous vous expliquerons également comment renouveler votre certificat SSL automatiquement.

Conditions préalables

Avant de procéder pour vous assurer que vous avez ce qui suit.

1. UN Nom de domaine complet (Fqdn) pointant vers une adresse IP dédiée du serveur Web. Cela doit être configuré dans le domaine client de votre fournisseur d'hébergement Web DNS. Pour ce tutoriel, nous utilisons le nom de domaine linuxtechwhiz qui pointe vers l'adresse IP 34.70.245.117.

Domaine un enregistrement

2. Vous pouvez également le confirmer en effectuant une recherche avant en utilisant la commande Dig comme indiqué.

$ dig linuxtechwhiz.Info 
Vérifiez les informations DNS à l'aide de la commande DIG

3. Nginx Installé et exécuté sur le serveur Web. Vous pouvez confirmer cela en vous connectant au terminal et en exécutant la commande ci-dessous. Si Nginx n'est pas installé, suivez notre article pour installer Nginx sur Centos 8.

$ sudo systemctl status nginx 
Vérifiez le statut de nginx

4. Vous pouvez également vérifier en visitant l'URL du serveur Web sur un navigateur Web.

http: // server-ip-or-hostname 
Vérifiez la page Web de Nginx

Depuis l'URL, nous pouvons clairement voir que le site n'est pas sécurisé, et donc pas crypté. Cela implique que toutes les demandes faites au serveur Web peuvent être interceptées que cela inclut des informations critiques et confidentielles telles que les noms d'utilisateur, les mots de passe, les numéros de sécurité sociale et les informations sur les cartes de crédit pour en mentionner quelques-uns.

Maintenant, nous salissons les mains et installons Escryptons.

Étape 1. Installez certbot dans les centos 8

À installer Escryptons certificat, vous devez tout d'abord avoir Certbot installée. Il s'agit d'un client extensible qui récupère un certificat de sécurité à partir de Cryptons l'autorité et vous permet d'automatiser la validation et la configuration du certificat à utiliser par le serveur Web.

Télécharger Certbot en utilisant la commande curl.

$ sudo curl -o https: // dl.effesser.org / Certbot-Auto 
Télécharger Certbot dans Centos 8

Ensuite, déplacez le certificat vers le / usr / local / bac annuaire.

$ sudo mv Certbot-Auto / USR / Local / Bin / Certbot-Auto 

Ensuite, attribuez l'autorisation du fichier au fichier certitbot comme indiqué.

$ chmod 0755 / usr / local / bin / Certbot-Auto 

Étape 2. Configurer le bloc de serveur Nginx

Un bloc de serveur dans Nginx est l'équivalent d'un hôte virtuel dans Apache. La configuration des blocs de serveur vous permet non seulement de configurer plusieurs sites Web dans un seul serveur, mais permet également à CERTBOT de prouver la propriété du domaine Autorité de certificat - CA.

Pour créer un bloc de serveur, exécutez la commande affichée.

$ sudo vim / etc / nginx / confr.d / www.linuxtechwhiz.Info 

Assurez-vous de remplacer le nom de domaine par votre propre nom de domaine. Puis collez la configuration ci-dessous.

serveur server_name www.linuxtechwhiz.Info; root / opt / nginx /www.linuxtechwhiz.Info; Emplacement / Index Index.index html.index HTM.PHP;  access_log / var / log / nginx /www.linuxtechwhiz.Info.accès.enregistrer; error_log / var / log / nginx /www.linuxtechwhiz.Info.erreur.enregistrer; Emplacement ~ \.php $ include / etc / nginx / fastcgi_params; fastcgi_pass 127.0.0.1: 9000; Index FastCGI_INDEX.PHP; fastcgi_param script_filename $ document_root $ fastcgi_script_name;  

Enregistrer le fichier et quitter l'éditeur de texte.

Étape 3: L'installation permet de crypter le certificat sur Centos 8

Utilisez maintenant Certbot commande pour initialiser la récupération et la configuration du certificat de sécurité de Let's Encrypt.

$ sudo / usr / local / bin / certbot-uto --nginx 

Cette commande s'exécutera et installera plusieurs packages Python et leurs dépendances comme indiqué.

L'installation permet de crypter le certificat sur les centos 8

Cela sera ensuite suivi d'une invite interactive comme indiqué:

Permet de crypter des informations sur le certificat

Si tout s'est bien passé, vous devriez pouvoir voir un message de félicitations à la toute fin.

Confirmation de l'installation de crypt

Pour confirmer que votre site Nginx est crypté, rechargez la page Web et observez le symbole de cadenas au début de l'URL. Cela indique que le site est sécurisé à l'aide d'un SSL / TLS chiffrement.

Vérifiez le certificat de crypte

Pour obtenir plus d'informations sur le certificat de sécurité, cliquez sur le symbole de cadenas et sélectionnez le 'Certificat' option.

Obtenir des informations de certificat de crypte

Plus d'informations sur le certificat de sécurité seront affichées comme indiqué ci-dessous.

Permet de crypter des informations sur le certificat

De plus, pour tester la force du certificat de sécurité, rendez-vous sur https: // www.sllabs.com / ssltest / et trouver une analyse plus précise et approfondie de l'état du certificat de sécurité.

Vérifiez la note de sécurité du certificat de crypte

Étape 4. Renouveler le certificat Let's Encrypt

Comme nous l'avons vu plus tôt, le certificat de sécurité n'est valable que pour une durée de 90 jours et doit être renouvelé avant l'expiration.

Vous pouvez simuler ou tester le processus de renouvellement du certificat en exécutant la commande:

$ sudo / usr / local / bin / Certbot-Auto renouveler - rythme-run 
Renouveler le certificat de crypte
Conclusion

Cela conclut ce tutoriel sur la sécurisation Nginx avec Escryptons sur Centos 8. Escryptons offre un moyen efficace et sans tracas de sécuriser votre serveur Web Nginx qui serait autrement une affaire complexe à faire manuellement.

Votre site doit maintenant être entièrement crypté. Quelques semaines jusqu'à la date d'expiration du certificat, Effesser vous alertera par e-mail pour renouveler le certificat pour éviter les interruptions qui peuvent survenir en raison d'un certificat expiré. C'est tous les gars pour aujourd'hui!