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

Comment installer un certificat SSL sur Apache pour CentOS 7

Présentation

Les certificats SSL sont de petits fichiers de données qui certifient la propriété d'une clé cryptographique publique. Les autorités de certification (CA) garantissent que la clé appartient à une organisation, un serveur ou une autre entité répertoriée dans le certificat.

Lorsqu'un utilisateur, via son navigateur, accède à un site Web certifié, les informations sont cryptées avec une clé publique unique. Les données ne peuvent être déchiffrées qu'à l'aide d'une clé privée unique situé sur le serveur hôte. Ce haut niveau de cryptage empêche les tentatives non autorisées d'accéder aux informations.

Dans ce didacticiel, découvrez comment installer un certificat SSL sur CentOS 7.

Prérequis

  • Un utilisateur avec sudo privilèges
  • Accès à une ligne de commande (Ctrl-Alt-T)
  • Une machine CentOS 7
  • Un nom de domaine valide avec un DNS pointé vers le serveur

Comment obtenir un certificat SSL

Il existe plusieurs manières d'obtenir des Certificats :

  1. Utiliser une autorité de certification automatisée et gratuite telle que le projet Let's Encrypt.
  2. Les autorités de certification commerciales fournissent des certificats moyennant des frais (Comodo, DigiCert, GoDaddy)
  3. Alternativement, il est possible de créer un certificat auto-signé. Ce type de certificat est utile à des fins de test ou pour une utilisation dans un environnement de développement.

Si vous réfléchissez encore au type de certificat dont vous avez besoin ou à l'autorité de certification à choisir, nous avons préparé un guide complet sur les certificats SSL, les clés privées et les CSR pour vous aider dans le processus.

Installer un certificat SSL avec Let's Encrypt

Let's Encrypt est une autorité de certification gratuite, ouverte et automatisée. Il utilise le certbot outil logiciel pour administrer automatiquement les certificats.

Certbot est un outil hautement automatisé. Assurez-vous que votre installation Apache est valide et que vous disposez d'un hôte virtuel configuré pour votre/vos domaine(s). Vous devriez d'abord lire notre tutoriel sur l'installation d'Apache sur CentOS 7 si vous avez besoin d'aide pour configurer votre pare-feu et vos hôtes virtuels.

Installation de Certbot

1. Utilisez le terminal de commande pour installer le EPEL dépôt et yum-utils :

sudo yum –y install epel-release yum-utils

2. Ensuite, installez un module prenant en charge SSL pour Apache :

sudo yum -y install mod_ssl

Dans cet exemple, la dernière version du module est déjà disponible.

3. Nous pouvons maintenant installer certbot pour Apache :

sudo yum –y install python-certbot-apache

4. Une fois l'installation terminée, vous pouvez lancer le processus d'obtention d'un certificat en saisissant :

sudo certbot –apache –d yourdomain.com

Vous pouvez également démarrer certbot en tapant :

sudo certbot

5. Le client vous demande de fournir une adresse e-mail et de lire et d'accepter les Conditions d'utilisation. Certbot répertorie ensuite les domaines disponibles sur votre serveur. Activez HTTPS pour des domaines spécifiques ou pour tous en laissant le champ vide.

L'invite suivante vous permet de forcer toutes les requêtes à sécuriser l'accès HTTPS.

Une fois vos choix effectués, le message sur le terminal confirme que vous avez activé le chiffrement pour votre domaine.

Renouvellement automatique du certificat

Les certificats délivrés par Let’s Encrypt sont valables 90 jours. Le certbot renouveler La commande vérifie les certificats installés et essaie de les renouveler s'ils sont à moins de 30 jours de leur expiration. Pour automatiser ce processus, créez une tâche cron pour exécuter la commande périodiquement.

Utilisez votre éditeur de texte préféré pour définir la fréquence d'exécution du renouvellement commande :

sudo crontab -e

Saisissez cette ligne et enregistrez le crontab :

* */12 * * * /usr/bin/certbot renew >/dev/null 2>&1

Comment installer un certificat SSL avec Comodo

1. La première étape consiste à soumettre une Demande de signature de certificat à une autorité de certification. Notre guide détaillé sur la façon de générer une demande de signature de certificat (CSR) avec OpenSSL est une excellente ressource si vous avez besoin d'aide pour ce processus.

2. Une fois qu'une AC certifie votre demande, vous recevez une copie de votre certificat SSL. Vous pouvez maintenant installer le certificat sur votre serveur CentOS 7.

Cet exemple montre comment installer un certificat d'un fournisseur SSL payant, Comodo.

3. Une fois que Comodo a vérifié votre CSR la demande, téléchargez les fichiers SSL. Copiez-les (ComodoRSACA.crt ) et le certificat principal (votredomaine.crt ), dans le répertoire de votre serveur Apache. La clé privée généré lors du processus CSR (Certificate Signing Request) doit être sur le même serveur.

Configurer les hôtes virtuels pour SSL

Une fois que vous avez certifié avec succès le domaine et placé les fichiers clés sur le serveur, la prochaine étape consistera à configurer les hôtes virtuels pour afficher le certificat.

1. Accédez au fichier de configuration SSL :

sudo nano /etc/httpd/conf.d/ssl.conf

2. Modifiez le fichier de configuration pour pointer vers les bons fichiers sur votre serveur.

Décommentez les lignes suivantes sous la section et saisissez les chemins de fichiers corrects :

  • DocumentRoot "/var/www/votredomaine.com"
  • Nom du serveur votredomaine.com :443
  • SSL Engine le
  • SSLCertificateFile – Le chemin de votre fichier de certificat.
  • SSLCertificateKeyFile – Le chemin de votre fichier clé.
  • SSLCertificateChainFile – Le fichier de certificat COMODO intermédiaire.

3. Après avoir apporté les modifications nécessaires, quittez le fichier (Ctrl+X) et appuyez sur y pour enregistrer les modifications.

4. Testez votre configuration Apache avant de redémarrer. Assurez-vous que la syntaxe est correcte en tapant :

sudo apachectl configtest

5. Une fois que le système confirme que la syntaxe est correcte, redémarrez Apache :

sudo systemctl restart httpd

Vous avez maintenant configuré votre serveur Apache pour utiliser le certificat SSL.

Comment créer un certificat SSL auto-signé

Un certificat auto-signé est utile pour les tests, dans les environnements de développement et sur un intranet.

1. Comme pour Let's Encrypt, le mod_ssl Le module Apache prend en charge le cryptage SSL :

sudo yum –y install mod_ssl

2. Créez un nouveau répertoire pour stocker la clé privée :

sudo mkdir /etc/ssl/privatekey

3. Limitez l'accès à ce répertoire uniquement à l'utilisateur root :

sudo chmod 700 /etc/ssl/privatekey

4. Générez un certificat auto-signé à l'aide de cette commande OpenSSL :

sudo openssl req -x509 -new -newkey rsa:2048  -nodes -days 365 -keyout /etc/ssl/privatekey/ yourdomain.key -out /etc/ssl/certs/yourdomain.csr

Voici un aperçu détaillé des éléments :

  • openssl – active le logiciel OpenSSL
  • demande – indique que nous avons besoin d'un CSR
  • -x509 – spécifie d'utiliser la demande de signature X.509
  • -new -newkey – générer une nouvelle clé
  • rsa :2048 – générer une clé mathématique RSA 2048 bits
  • -nœuds – pas de DES, ce qui signifie ne pas chiffrer la clé privée dans un fichier PKCS#12
  • jours 365 nombre de jours pendant lesquels le certificat est valide
  • -keyout – indique le domaine pour lequel vous générez une clé
  • -sortie – précise le nom du fichier qui contient le CSR

5. Le système lance un questionnaire que vous devez remplir.

Saisissez vos informations dans les champs disponibles :

  • Nom du pays – utilisez un code pays à 2 lettres
  • État – l'état dans lequel le propriétaire du domaine est incorporé
  • Localité – la ville dans laquelle le propriétaire du domaine est incorporé
  • Nom de l'organisation – une entité propriétaire du domaine
  • Nom de l'unité organisationnelle –le service ou le groupe de votre organisation qui travaille avec des certificats
  • Nom commun – le plus souvent, le nom de domaine pleinement qualifié (FQDN)
  • Adresse e-mail – adresse e-mail de contact
  • Défier le mot de passe – définir un mot de passe facultatif pour votre bi-clé

L'image représente un exemple de questionnaire dans CentOS 7.

6. Continuez à configurer l'hôte virtuel pour afficher le nouveau certificat. Le processus est identique aux étapes décrites dans le Chapitre 2, Configurer les hôtes virtuels pour SSL.

7. Testez votre configuration Apache avant de redémarrer. Pour vous assurer que la syntaxe est correcte, tapez :

sudo apachectl configtest

8. Une fois que le système confirme que la syntaxe est correcte, redémarrez Apache :

sudo systemctl restart httpd

Vous avez maintenant configuré votre serveur Apache pour utiliser votre certificat SSL auto-signé et devriez pouvoir visiter votre site avec SSL activé.

Comment vérifier si un certificat SSL est valide ?

Pour vérifier si un certificat SSL est valide , vous pouvez accéder à des services accessibles au public, tels que le test de serveur SSL. Confirmez le statut de votre certificat et vérifiez si tous les détails sont corrects.

Vous pouvez également accéder à votre site Web en utilisant https:// pour voir si le certificat SSL est visible. Le cadenas vert indique que la couche supplémentaire de cryptage est présente.


Cent OS
  1. Comment installer SSL sur RHEL 8 / CentOS 8

  2. Comment installer Apache Cassandra sur CentOS 8

  3. Comment installer Apache sur CentOS 7

  4. Comment installer Apache Kafka sur CentOS 8

  5. CentOS / RHEL :Comment activer SSL pour Apache

Comment installer Apache CouchDB sur CentOS 7

Comment installer Apache ServiceMix sur CentOS 7

Comment installer Apache Cassandra dans CentOS

Comment installer elgg sur CentOS 8

Comment installer un certificat SSL gratuit pour Apache sur CentOS 8

Comment installer un certificat SSL gratuit pour Nginx sur CentOS 8