[CENTOS] Let's Encrypt n'a pas été mis à jour automatiquement

Let's Encrypt a été introduit il y a 3 mois, mais pour une raison quelconque, il n'a pas été mis à jour automatiquement. Je l'ai résolu, je vais donc l'afficher sous forme de mémorandum. Je n'avais pas l'intention de le donner à Qiita, donc je n'ai pas pris une pression.

environnement

ConoHa(CentOS8)

Notez qu'Apache est étrange

-J'aurais dû configurer la mise à jour automatique de Let's Encrypt, mais pour une raison quelconque, elle n'a pas été mise à jour. Je me souviens de l'avoir défini en référence à cet article. ・ Je n'ai pas compris même après avoir lu la déclaration d'erreur, mais il semble qu'Apache est étrange (je suppose) -Lorsque je l'ai vérifié avec la commande suivante, Apache a échoué. «Active: failed (Result: exit-code)» s'affiche.

Terminal


$ systemctl status httpd

-Si vous lisez attentivement l'état, il y a deux erreurs "(98) Adresse déjà utilisée". Il semble qu'Apache n'a pas pu démarrer car le port 443 était déjà utilisé par Node.js.

→ Notez qu'Apache est nécessaire pour mettre à jour Let's Encrypt (← stupide)

Reconstruisez Apache et mettez à jour Let's Encrypt

-Fermer le processus Node.js (tué cette fois) et redémarrer Apache. Cette fois, cela a bien fonctionné. Après cela, j'ai mis à jour manuellement Let's Encrypt et cela a réussi.

▼ Mise à jour manuelle de Let's Encrypt

Terminal


$ sudo certbot renew

Référence pour la suppression d'un processus: Solution de contournement pour l'adresse déjà utilisée

→ Je pensais que Node.js fonctionnait sur Apache, mais j'ai compris qu'il fonctionnait indépendamment.

J'ai pu le mettre à jour, mais ...

-Mais avec cela, vous devez arrêter Node.js et démarrer Apache chaque fois que vous mettez à jour Let's Encrypt. -Si vous décidez de ne pas utiliser le port Apache 443, vous pouvez le démarrer en même temps que Node.js. (Ouvrez uniquement le port 80) -Récrit "/etc/httpd/conf.d/ssl.conf". A commenté "Listen 443 https".

:/etc/httpd/conf.d/ssl.conf


#
# When we also provide SSL we have to listen to the 
# standard HTTPS port in addition.
#
#Listen 443 https                  //← Commentez cette ligne

##
##  SSL Global Context
##
##  All SSL configuration in this context applies both to
##  the main server and all SSL-enabled virtual hosts.
##

Ce qui suit est omis

référence (98) L'adresse déjà utilisée se produit au redémarrage d'Apache! Deux causes et contre-mesures

-Après avoir redémarré Apache, la mise à jour forcée de Let's Encrypt a réussi, donc cette fois cela semble correct. J'espère que la prochaine mise à jour automatique réussira.

▼ Renouvellement forcé quelle que soit la date d'expiration du certificat SSL

Terminal


$ sudo certbot renew --force-renew

référence Comment renouveler manuellement le certificat SSL de Let's Encrypt

Histoire d'échec

J'ai réécrit firewalld pour bloquer le port 443 d'Apache. Je n'ai pas pu me connecter à l'application Web après avoir configuré le port 443 pour repousser la connexion. (Pas étonnant)

Recommended Posts

Let's Encrypt n'a pas été mis à jour automatiquement