Je souhaite installer un certificat SSL standard pour mon site Web hébergé dans une instance Amazon Lightsail qui n’utilise pas de pile Bitnami.
Résolution
Remarque : avant d’installer le certificat SSL standard Let's Encrypt dans votre instance Lightsail qui n’utilise pas de pile Bitnami, installez le package Certbot.
Le domaine doit pointer directement vers l’instance Lightsail, via un équilibreur de charge ou via la distribution. Pour que la vérification du certificat soit terminée, l’URL du site Web ne doit pas renvoyer d’erreurs provenant de l’équilibreur de charge ou de la distribution dans le navigateur Web.
Pour installer le certificat SSL standard Let's Encrypt, procédez comme suit :
-
Exécutez la commande correspondant à votre distribution Linux pour arrêter le service Web qui s’exécute dans votre instance :
Apache, tel qu’Amazon Linux2 ou CentOS
sudo service httpd stop
Apache, tel qu’Ubuntu ou Debian
sudo service apache2 stop
NGINX
sudo service nginx stop
-
Exécutez la commande suivante pour installer le certificat SSL :
sudo certbot certonly --standalone -d example.com -d www.example.com
Remarque : remplacez www.example.com par votre nom de domaine.
Une fois que Certbot a généré le certificat SSL, vous recevez le message Certificat reçu avec succès. Les emplacements des certificats et des fichiers clés sont également fournis. Copiez ces emplacements de fichiers dans un fichier texte à utiliser à l’étape 5.
-
Exécutez la commande correspondant à votre distribution Linux pour démarrer le service Web :
Apache, tel qu’Amazon Linux 2 ou CentOS
sudo service httpd start
Apache, tel qu’Ubuntu ou Debian
sudo service apache2 start
NGINX
sudo service nginx start
-
Configurez le renouvellement automatique des certificats.
Si vous avez utilisé snapd pour installer le package Certbot, le renouvellement est automatiquement configuré dans systemd timers ou cronjobs. Toutefois, avant d’exécuter la commande Certbot, vous devez arrêter le service Web. Pour arrêter le service Web, puis le redémarrer, vous devez automatiser le processus d’arrêt et de démarrage. Pour configurer l’automatisation, exécutez les commandes suivantes :
sudo sh -c 'printf "#!/bin/sh\n service apache2 stop \n" > /etc/letsencrypt/renewal-hooks/pre/webservice.sh'
sudo sh -c 'printf "#!/bin/sh\n service apache2 start \n" > /etc/letsencrypt/renewal-hooks/post/webservice.sh'
sudo chmod 755 /etc/letsencrypt/renewal-hooks/*/webservice.sh
Remarque : remplacez service apache2 par votre service Web et les commandes de démarrage et d’arrêt spécifiques à votre service Web.
Si la distribution Linux est Amazon Linux 2 ou FreeBSD, vous ne pouvez pas utiliser snapd pour installer le package Certbot. Pour configurer manuellement le renouvellement, exécutez la commande suivante :
echo "30 0,12 * * * root python -c 'import random; import time; time.sleep(random.random() * 3600)' && certbot renew --pre-hook 'service apache2 stop' --post-hook 'service apache2 start'" | sudo tee -a /etc/crontab > /dev/null
Remarque : remplacez service apache2 par votre service Web et les commandes d’arrêt et de démarrage spécifiques à votre service Web.
-
Configurez votre serveur Web pour utiliser le certificat SSL standard Let's Encrypt et configurez la redirection HTTPS.
Remarque : la configuration dépend de la configuration du serveur Web que vous avez dans votre instance. Pour configurer votre serveur Web, reportez-vous à la documentation officielle de votre service Web.
Informations connexes
Comment installer un certificat SSL Let’s Encrypt sur une pile Bitnami hébergée sur Amazon Lightsail ?
Comment puis-je installer un certificat SSL générique Let’s Encrypt dans une pile Bitnami hébergée sur Lightsail ?
Comment installer un certificat SSL Let's Encrypt à caractère générique dans Amazon Lightsail ?