View a markdown version of this page

Activez le protocole HTTPS sur votre WordPress instance avec Let's Encrypt et Certbot - Amazon Lightsail

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Activez le protocole HTTPS sur votre WordPress instance avec Let's Encrypt et Certbot

Astuce

Amazon Lightsail propose un flux de travail guidé qui automatise l'installation, la configuration et le renouvellement d'un certificat Let's Encrypt sur votre instance. WordPress Nous vous recommandons vivement d'utiliser le flux de travail au lieu de suivre les étapes manuelles de ce didacticiel. Pour plus d'informations, voir Lancer et configurer une WordPress instance.

Avec les équilibreurs de charge Amazon Lightsail, vous pouvez sécuriser vos sites Web et vos applications avec. SSL/TLS Cependant, l'utilisation d'un équilibreur de charge Lightsail n'est généralement pas le bon choix. C'est le cas, par exemple, si votre site n'a pas besoin de la capacité de mise à l'échelle ou de la tolérance aux pannes que les équilibreurs de charge fournissent, ou si vous cherchez à optimiser les coûts.

Dans ce dernier cas, vous pouvez envisager l'utilisation de Let's Encrypt pour obtenir un certificat SSL gratuit. Ce didacticiel explique comment demander un certificat générique Let's Encrypt à l'aide de Certbot et comment l'intégrer à votre WordPress instance à l'aide du plug-in Really Simple SSL.

Table des matières

Étape 1 : Exécuter les prérequis

Si ce n'est pas déjà fait, remplissez les conditions préalables suivantes :

Après avoir terminé les procédures des prérequis, passez à la section suivante.

Étape 2 : installez Certbot sur votre instance Lightsail

Certbot est un client utilisé pour demander un certificat à Let's Encrypt et le déployer sur un serveur Web. Let's Encrypt utilise le protocole ACME pour émettre des certificats, et Certbot est un ACME-enabled client qui interagit avec Let's Encrypt.

Pour installer Certbot sur votre instance Lightsail
  1. Connectez-vous à la console Lightsail.

  2. Dans l'onglet Instances de la page d'accueil de Lightsail, choisissez l'icône de connexion rapide SSH correspondant à l'instance à laquelle vous souhaitez vous connecter.

    Connexion rapide SSH sur la page d'accueil de Lightsail.
  3. Une fois que votre session SSH basée sur le navigateur Lightsail est connectée, entrez la commande suivante pour mettre à jour les packages de votre instance :

    sudo apt-get update
  4. Saisissez la commande suivante pour installer le package de propriétés du logiciel. Les développeurs de Certbot utilisent une archive personnelle de packages (PPA) pour distribuer Certbot. Le package de propriétés du logiciel rend l'utilisation des dépôts PPA plus efficace.

    sudo apt-get install software-properties-common -y
    Note

    Si vous rencontrez une Could not get lock erreur lors de l'exécution de la sudo apt-get install commande, attendez environ 15 minutes et réessayez. Cette erreur peut être due à une tâche cron qui utilise l'outil de gestion de packages Apt pour installer des mises à niveau sans assistance.

  5. Entrez la commande suivante pour mettre à jour apt pour inclure le nouveau référentiel :

    sudo apt-get update -y
  6. Entrez la commande suivante pour installer Certbot :

    sudo apt-get install certbot -y

    Certbot est désormais installé sur votre instance Lightsail.

Conservez le terminal SSH basé sur navigateur ouverte, vous y reviendrez ultérieurement dans ce didacticiel. Passez à la section suivante.

Étape 3 : Demander un certificat générique SSL Let's Encrypt

Commencez le processus de demande de certificat auprès de Let's Encrypt. A l'aide de Certbot, demandez un certificat générique, ce qui vous permet d'utiliser un seul certificat pour un domaine et ses sous-domaines. Par exemple, un seul certificat générique pour le domaine de premier niveau example.com et les sous-domaines blog.example.com et stuff.example.com.

Pour demander un certificat générique SSL Let's Encrypt
  1. Dans la même fenêtre de terminal SSH basée sur un navigateur que celle utilisée à l'étape précédente de ce didacticiel, entrez les commandes suivantes pour définir une variable d'environnement pour votre domaine. N'oubliez pas de remplacer domain par le nom de votre nom de domaine enregistré.

    DOMAIN=domain WILDCARD=*.$DOMAIN

    Exemple :

    DOMAIN=example.com WILDCARD=*.$DOMAIN
  2. Entrez la commande suivante pour confirmer que les variables renvoient les valeurs appropriées :

    echo $DOMAIN && echo $WILDCARD

    Le résultat doit ressembler à ce qui suit :

    Confirmer les variables d'environnement de domaine.
  3. Entrez la commande suivante pour démarrer Certbot en mode interactif. Cette commande indique à Certbot d'utiliser une méthode d'autorisation manuelle avec des défis DNS afin de vérifier la propriété du domaine. Elle demande un certificat générique pour votre domaine de premier niveau, ainsi que ses sous-domaines.

    sudo certbot -d $DOMAIN -d $WILDCARD --manual --preferred-challenges dns certonly
  4. Entrez votre adresse e-mail lorsque vous y êtes invité, car elle est utilisée pour les notifications de renouvellement et de sécurité.

  5. Lisez les conditions d'utilisation de Let's Encrypt. Lorsque vous avez terminé, appuyez sur Y si vous êtes d'accord. Si vous n'êtes pas d'accord, vous ne pouvez pas obtenir de certificat Let's Encrypt.

  6. Répondre en conséquence à l'invite pour partager votre adresse e-mail et à l'avertissement à propos de votre adresse IP en cours de journalisation.

  7. Let's Encrypt vous invite maintenant à vérifier que vous êtes bien le propriétaire du domaine spécifié. Pour ce faire, vous devez ajouter des enregistrements TXT aux enregistrements DNS pour votre domaine. Un ensemble de valeurs d'enregistrement TXT est fourni, comme illustré dans l'exemple suivant :

    Note

    Let's Encrypt peut fournir un ou plusieurs enregistrements TXT que vous devez utiliser pour la vérification. Dans cet exemple, nous avons reçu deux enregistrements TXT à utiliser pour la vérification.

    Enregistrements TXT pour les certificats Let's Encrypt.

Gardez la session SSH basée sur le navigateur Lightsail ouverte. Vous y reviendrez plus tard dans ce didacticiel. Passez à la section suivante.

Étape 4 : Ajouter des enregistrements TXT à la zone DNS de votre domaine

L'ajout d'un enregistrement TXT à la zone DNS de votre domaine permet de vérifier que vous êtes le propriétaire du domaine. À des fins de démonstration, nous utilisons la zone DNS Lightsail. Toutefois, les étapes peuvent être similaires pour d'autres zones DNS généralement hébergées par des bureaux d'enregistrement de domaine.

Note

Pour en savoir plus sur la création d'une zone DNS Lightsail pour votre domaine, consultez Création d'une zone DNS pour gérer les enregistrements DNS de votre domaine dans Lightsail.

Pour ajouter des enregistrements TXT à la zone DNS de votre domaine dans Lightsail
  1. Dans le volet de navigation de gauche, choisissez Domains & DNS.

  2. Sous la section DNS zones de la page, choisissez la zone DNS pour le domaine que vous avez spécifié dans la demande de certificat Certbot.

  3. Dans l'éditeur de zone DNS, choisissez DNS records (Enregistrements DNS).

  4. Choisissez Ajouter un enregistrement.

  5. Dans le menu déroulant Record type (Type d'enregistrement), choisissez TXT record (Enregistrement TXT).

  6. Entrez les valeurs spécifiées par la demande de certificat Let's Encrypt dans les champs Nom de l'enregistrement et Réponds par.

    Note

    La console Lightsail préremplit la partie apex de votre domaine. Par exemple, si vous souhaitez ajouter le sous-domaine _acme-challenge.example.com, il vous suffit d'entrer _acme-challenge dans la zone de texte et Lightsail ajoute la partie .example.com pour vous lorsque vous enregistrez l'enregistrement.

  7. Choisissez Enregistrer.

  8. Répétez les étapes 4 à 7 pour ajouter le deuxième ensemble d'enregistrements TXT spécifié par la demande de certificat Let's Encrypt.

Gardez la fenêtre du navigateur de la console Lightsail ouverte. Vous y reviendrez plus tard dans ce didacticiel. Passez à la section suivante.

Étape 5 : Confirmer que les enregistrements TXT ont été propagés

Utilisez l' MxToolbox utilitaire pour confirmer que les enregistrements TXT se sont propagés au DNS d'Internet. La propagation d'un enregistrement DNS peut prendre un certain temps en fonction de votre fournisseur d'hébergement DNS et le time-to-live (TTL) configuré pour vos enregistrements DNS. Il est important de terminer cette étape et de confirmer que vos enregistrements TXT ont été propagés avant de poursuivre votre demande de certificat Certbot. Sinon, votre demande de certificat échoue.

Pour confirmer que les enregistrements TXT se sont propagés au DNS d'Internet
  1. Ouvrez une nouvelle fenêtre de navigateur et accédez à https://mxtoolbox.com/TXTLookup.aspx.

  2. Saisissez le texte suivant dans la zone de texte. Assurez-vous de remplacer domain par votre domaine.

    _acme-challenge.domain

    Exemple :

    _acme-challenge.example.com
    Recherchez l'enregistrement TXT MXTookbox.
  3. Choisissez Recherche TXT pour exécuter la vérification.

  4. L'une des réponses suivantes se produit :

    • Si vos enregistrements TXT se sont propagés au DNS d'Internet, une réponse similaire à celle illustrée dans la capture d'écran suivante s'affiche. Fermez la fenêtre du navigateur et passez à la section suivante.

      Confirmation que les enregistrements TXT ont été propagés.
    • Si vos enregistrements TXT ne se sont pas propagés au DNS d'Internet, une réponse « Enregistrement DNS introuvable » s'affiche. Vérifiez que vous avez ajouté les bons enregistrements DNS à la zone DNS de vos domaines. Si vous avez ajouté les bons enregistrements, attendez encore un peu pour que les enregistrements DNS de votre domaine se propagent, puis relancez la recherche TXT.

Étape 6 : Complétez la demande de certificat SSL Let's Encrypt

Revenez à la session SSH basée sur le navigateur Lightsail pour votre WordPress instance et terminez la demande de certificat Let's Encrypt. Certbot enregistre votre certificat SSL, votre chaîne et vos fichiers clés dans un répertoire spécifique de votre WordPress instance.

Pour terminer la demande de certificat SSL Let's Encrypt
  1. Dans la session SSH basée sur le navigateur Lightsail de votre WordPress instance, appuyez sur Entrée pour poursuivre votre demande de certificat SSL Let's Encrypt. En cas de réussite, une réponse similaire à celle affichée dans la capture d'écran suivante apparait :

    Demande de certificat Let's Encrypt réussie.

    Le message confirme que votre certificat, la chaîne et les fichiers clés sont stockés dans le répertoire /etc/letsencrypt/live/domain/. Assurez-vous de remplacer domain par votre domaine, tel que /etc/letsencrypt/live/example.com/.

  2. Notez la date d'expiration spécifiée dans le message. Vous l'utiliserez pour renouveler votre certificat avant cette date.

    Date de renouvellement du certificat Let's Encrypt.
  3. Maintenant que vous disposez du certificat SSL Let's Encrypt, passez à la section suivante de ce didacticiel.

Créez des liens vers les fichiers de certificat SSL Let's Encrypt dans le répertoire du serveur Apache de votre WordPress instance. En outre, sauvegardez vos certificats existants, au cas où vous en auriez besoin plus tard.

Pour créer des liens vers les fichiers de certificat Let's Encrypt dans le répertoire du serveur Apache
  1. Dans la session SSH basée sur le navigateur Lightsail de votre WordPress instance, entrez la commande suivante pour arrêter les services sous-jacents :

    sudo systemctl stop apache2
  2. Entrez la commande suivante pour définir une variable d'environnement pour votre domaine. N'oubliez pas de remplacer domain par le nom de votre nom de domaine enregistré.

    DOMAIN=domain

    Exemple :

    DOMAIN=example.com
    Note

    Si vous avez fermé la fenêtre de votre terminal SSH basé sur un navigateur après avoir défini la DOMAIN variable à l'étape 3, exécutez DOMAIN=example.com à nouveau en le example.com remplaçant par votre domaine.

  3. Entrez la commande suivante pour confirmer que la variable renvoie la valeur correcte :

    echo $DOMAIN
    Vérifiez la variable d'environnement de domaine.
  4. Entrez les commandes suivantes individuellement pour sauvegarder vos fichiers de certificats existants :

    export BACKUP_PATH=/opt/aws/wordpress sudo cp /etc/ssl/certs/ssl-cert-snakeoil.pem $BACKUP_PATH/ssl-cert-snakeoil.pem.backup sudo cp /etc/ssl/private/ssl-cert-snakeoil.key $BACKUP_PATH/ssl-cert-snakeoil.key.backup
  5. Entrez les commandes suivantes individuellement pour créer des liens vers vos fichiers de certificat Let's Encrypt dans le répertoire Apache :

    sudo ln -sf /etc/letsencrypt/live/$DOMAIN/fullchain.pem /etc/ssl/certs/ssl-cert-snakeoil.pem sudo ln -sf /etc/letsencrypt/live/$DOMAIN/privkey.pem /etc/ssl/private/ssl-cert-snakeoil.key
  6. Entrez la commande suivante pour démarrer les services de pile sous-jacents que vous avez arrêtés précédemment :

    sudo systemctl start apache2

    Les fichiers de certificat SSL de votre WordPress instance se trouvent désormais dans le répertoire approprié.

  7. Passez à la section suivante.

Étape 8 : Configuration de la redirection HTTPS à l'aide du plug-in Really Simple SSL

Installez le plug-in Really Simple SSL sur votre WordPress site et utilisez-le pour intégrer le certificat SSL. Really Simple SSL configure également la redirection HTTP vers HTTPS pour garantir que les utilisateurs qui visitent votre site sont toujours sur la connexion HTTPS.

Pour intégrer le certificat SSL à votre WordPress site à l'aide du plug-in Really Simple SSL
  1. Dans la session SSH basée sur le navigateur Lightsail de votre WordPress instance, entrez la commande suivante pour que votre wp-config.php fichier soit accessible en écriture. Le plug-in Really Simple SSL écrit dans le wp-config.php fichier pour configurer vos certificats.

    sudo chmod 666 /var/www/wp-config.php
  2. Ouvrez une nouvelle fenêtre de navigateur et connectez-vous au tableau de bord d'administration de votre WordPress instance.

    Note

    Pour plus d'informations, voir Lancer et configurer une WordPress instance.

  3. Dans le volet de navigation de gauche, choisissez Plug-ins.

  4. Choisissez Ajouter un nouveau plug-in en haut de la page Plug-ins.

    Ajoutez un nouveau plugin dans le tableau de bord WordPress d'administration.
  5. Recherchez Really Simple SSL.

  6. Choisissez Installer maintenant en regard du plugin Really Simple SSL dans les résultats de la recherche.

    Plug-in SSL vraiment simple dans les résultats de recherche du WordPress plug-in.
  7. Une fois l'installation terminée, choisissez Activer.

  8. Dans l'invite qui s'affiche, choisissez Go ahead, activate SSL! (Continuer, activer SSL) Il est possible que vous soyez redirigé vers la page de connexion du tableau de bord d'administration de votre WordPress instance.

  9. Revenez à la session SSH basée sur le navigateur Lightsail pour votre WordPress instance et entrez la commande suivante pour rétablir les autorisations restrictives sur le fichier. wp-config.php Ce fichier contient les informations d'identification et les clés de sécurité de la base de données qui ne devraient pas être lisibles par tout le monde.

    sudo chmod 640 /var/www/wp-config.php

Votre WordPress instance est maintenant configurée pour utiliser le cryptage SSL. En outre, votre WordPress instance est désormais configurée pour rediriger automatiquement les connexions de HTTP vers HTTPS. Lorsqu'un visiteur se rend surhttp://example.com, il est automatiquement redirigé vers la connexion HTTPS cryptée (c'est-à-direhttps://example.com).

Étape 9 : Renouveler les certificats de Let's Encrypt tous les 90 jours

Les certificats Let's Encrypt sont valides pendant 90 jours. Ils peuvent être renouvelés 30 jours avant leur expiration. Pour renouveler les certificats Let's Encrypt, exécutez la commande initiale ayant permis de les obtenir. Répétez les étapes décrites dans la section Demander un certificat générique SSL Let's Encrypt de ce didacticiel.

Note

Le flux de travail guidé Amazon Lightsail gère automatiquement le renouvellement des certificats. Pour éviter de renouveler les certificats manuellement, passez au flux de travail guidé. Pour plus d'informations, voir Lancer et configurer une WordPress instance.