GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment sécuriser Apache avec le certificat SSL Let's Encrypt sur CentOS 8

La sécurisation de votre serveur Web est toujours l'un des facteurs clés que vous devez prendre en compte avant de mettre en ligne votre site Web. Un certificat de sécurité est essentiel pour sécuriser le trafic envoyé des navigateurs Web aux serveurs Web et, ce faisant, il incitera les utilisateurs à échanger des données avec votre site Web en sachant parfaitement que le trafic envoyé est sécurisé.

Dans la plupart des cas, les certificats de sécurité sont payés et renouvelés annuellement. Chiffrons certificat est une autorité de certification gratuite, ouverte et automatisée que vous pouvez utiliser pour chiffrer votre site. Le certificat expire après chaque 90 jours et se renouvelle automatiquement sans frais.

Lecture recommandée :Comment sécuriser Nginx avec Let's Encrypt sur CentOS 8

Dans cet article, nous allons vous montrer comment installer le Certificat Let's Encrypt avec Certbot pour Apache serveur Web et versions ultérieures, configurez le certificat pour qu'il se renouvelle automatiquement sur CentOS 8 .

Prérequis

Avant de commencer, assurez-vous que les éléments suivants sont en place :

1. Une instance du serveur CentOS 8 avec le serveur Web HTTP Apache installé et en cours d'exécution. Vous pouvez confirmer que votre serveur Web apache est opérationnel.

$ sudo dnf install httpd
$ sudo systemctl status httpd

2. Un nom de domaine complet (FQDN ) pointant vers l'adresse IP publique de votre serveur Web sur votre fournisseur d'hébergement Web DNS. Pour ce guide, nous utiliserons linuxtechwhiz.info pointant vers l'IP du serveur 34.67.63.136 .

Étape 1. Installez Certbot dans CentOS 8

Certbot est un client qui automatise l'installation du certificat de sécurité. Il récupère le certificat de Cryptons l'autorité et le déploie sur votre serveur Web sans trop de tracas.

Certbot est entièrement gratuit et vous permettra d'installer le certificat de manière interactive en générant des instructions basées sur la configuration de votre serveur Web.

Avant de télécharger le certbot , commencez par installer les packages nécessaires à la configuration d'une connexion chiffrée.

Nous allons commencer par installer le EPEL référentiel qui fournit des packages supplémentaires de haute qualité pour les systèmes basés sur RHEL :

$ sudo dnf install epel-release

Ensuite, installez le mod_ssl et openssl colis.

$ sudo dnf install mod_ssl openssl

Une fois toutes les dépendances installées, installez Certbot et Apache module pour Certbot.

$ sudo dnf install certbot python3-certbot-apache

La commande installe Certbot , le module Apache pour Certbot , et d'autres dépendances.

Étape 2 :Créer un hôte virtuel Apache

La prochaine étape consistera à créer un fichier d'hôte virtuel pour notre domaine - linuxtechwhiz.info . Commencez par créer d'abord la racine du document où vous placerez vos fichiers HTML.

$ sudo mkdir /var/www/linuxtechwhiz.info.conf

Créer un test index.html fichier comme indiqué.

$ sudo echo “<h1>Welcome to Apache HTTP server</h1>” > /var/www/linuxtechwhiz.info/index.html

Ensuite, créez un fichier d'hôte virtuel comme indiqué.

$ sudo vim /etc/httpd/conf.d/linuxtechwhiz.info

Ajoutez la configuration ci-dessous.

<VirtualHost *:443>
  ServerName linuxtechwhiz.info
  ServerAlias www.linuxtechwhiz.info
  DocumentRoot /var/www/linuxtechwhiz.info/
  <Directory /var/www/linuxtechwhiz.info/>
      Options -Indexes +FollowSymLinks
      AllowOverride All
  </Directory>
  ErrorLog /var/log/httpd/www.linuxtechwhiz.info-error.log
  CustomLog /var/log/httpd/www.linuxtechwhiz.info-access.log combined
</VirtualHost>

Enregistrez et quittez.

Attribuez les autorisations à la racine du document comme indiqué.

$ sudo chown -R apache:apache /var/www/linuxtechwhiz.info

Pour que les modifications prennent effet, redémarrez le service Apache.

$ sudo systemctl restart httpd

Étape 3 :Installez le certificat SSL Let's Encrypt sur CentOS 8

Exécutez maintenant certbot comme indiqué pour commencer l'installation du certificat Let's Encrypt .

$ sudo certbot --apache -d domain.com

Dans notre cas, ce sera :

$ sudo certbot --apache -d linuxtechwhiz.info

La commande vous guidera à travers une série d'invites pour vous permettre de configurer Lets Encrypt pour votre domaine. Assurez-vous de fournir votre adresse e-mail, acceptez les conditions d'utilisation et spécifiez les noms de domaine que vous souhaitez utiliser le protocole HTTPS qui est la version cryptée de HTTP.

Si tout s'est bien passé, vous devriez recevoir un message de félicitations à la fin vous informant que votre site a été sécurisé à l'aide du certificat Let's Encrypt . La validité de votre certificat sera également affichée - qui est généralement après 90 jours après le déploiement.

Revenez maintenant à votre fichier d'hôte virtuel et ajoutez les lignes de configuration suivantes.

SSLEngine On
 SSLCertificateFile    /etc/letsencrypt/live/linuxtechwhiz.info/fullchain.pem
 SSLCertificateKeyFile  /etc/letsencrypt/live/linuxtechwhiz.info/privkey.pem

Enregistrez et quittez.

La configuration finale de l'hôte virtuel Apache ressemblera à ceci :

<VirtualHost *:443>
  ServerName linuxtechwhiz.info
  ServerAlias www.linuxtechwhiz.info
  DocumentRoot /var/www/linuxtechwhiz.info/
  <Directory /var/www/linuxtechwhiz.info/>
      Options -Indexes +FollowSymLinks
      AllowOverride All
  </Directory>
  ErrorLog /var/log/httpd/www.linuxtechwhiz.info-error.log
  CustomLog /var/log/httpd/www.linuxtechwhiz.info-access.log combined

 SSLEngine On
 SSLCertificateFile    /etc/letsencrypt/live/linuxtechwhiz.info/fullchain.pem
 SSLCertificateKeyFile  /etc/letsencrypt/live/linuxtechwhiz.info/privkey.pem
</VirtualHost>

Encore une fois, redémarrez Apache.

$ sudo systemctl restart httpd

Étape 4 :Vérification du certificat SSL Let's Encrypt

Pour vérifier que tout fonctionne, lancez votre navigateur et visitez l'adresse IP de votre serveur. Vous devriez maintenant voir un symbole de cadenas au début de l'URL.

Pour obtenir plus de détails, cliquez sur le cadenas symbole &cliquez sur le 'certificat ' dans le menu déroulant qui s'affiche.

Les détails du certificat seront affichés dans la prochaine fenêtre contextuelle.

Vous pouvez également tester votre serveur sur https://www.ssllabs.com/ssltest/ et votre site devrait recevoir un ‘A’ note comme indiqué.

Étape 5 : Renouvellement automatique du certificat SSL Let's Encrypt

Chiffrons n'est valable que pour 90 jours seulement. Habituellement, le processus de renouvellement est effectué par le certbot package qui ajoute un script de renouvellement à /etc/cron.d annuaire. Le script s'exécute deux fois par jour et renouvellera automatiquement tout certificat dans les 30 jours d'expiration.

Pour tester le processus de renouvellement automatique, effectuez un test de fonctionnement à blanc avec certbot .

$ sudo /usr/local/bin/certbot-auto renew --dry-run

Si aucune erreur n'a été rencontrée, cela signifie que vous êtes prêt à partir.

Ceci nous amène à la fin de ce guide. Dans ce guide, nous avons montré comment vous pouvez utiliser certbot pour installer et configurer le certificat Let's Encrypt sur un serveur Web Apache exécuté sur un CentOS 8 système.


Cent OS
  1. Comment installer un certificat SSL sur Apache pour CentOS 7

  2. Sécurisez Apache avec Lets Encrypt sur CentOS 7

  3. Comment installer Let's Encrypt (Certbot) sur CentOS 8 ?

  4. Comment installer Let's Encrypt avec Apache sur CentOS 7

  5. Comment installer Let's Encrypt sur CentOS 8 avec Nginx

Comment installer Let's Encrypt SSL avec Nginx sur CentOS 7

Comment installer Let's Encrypt SSL avec Apache sur CentOS 7

Comment installer Let's Encrypt SSL avec Lighttpd sur CentOS 7

Comment installer Let's Encrypt SSL sur Ubuntu avec Apache

Sécurisez Apache avec le certificat Let's Encrypt sur Rocky Linux

Comment sécuriser Apache avec Let's Encrypt sur CentOS 8