Renewal Letsencrypt fait planté Apache
BMPCreated with Sketch.BMPZIPCreated with Sketch.ZIPXLSCreated with Sketch.XLSTXTCreated with Sketch.TXTPPTCreated with Sketch.PPTPNGCreated with Sketch.PNGPDFCreated with Sketch.PDFJPGCreated with Sketch.JPGGIFCreated with Sketch.GIFDOCCreated with Sketch.DOC Error Created with Sketch.
Question

Renewal Letsencrypt fait planté Apache

by
ChristopheP38
Created on 2017-05-05 12:24:21 (edited on 2024-09-04 13:12:16) in Serveurs Privés Virtuels (VPS)

Bonjour,

Ma config : Debian 9 - Apache 2.4.25

Mon serveur Apache s'est coupé cette nuit. J'ai enfin trouvé la cause de ce prob, je pense.
Cela provient de letsencrypt.
En regardant mes logs (acces) du site, je vois plus rien n'a été disponible pour les internautes à 00:13:21.
[CODE]
xx.xxx.xxx.xxx - - [12/Apr/2019:00:13:21 +0200] "GET /interface/infos?info=1 HTTP/2.0" 200 0 "https://xxxxxxxxxxxxxxxxxxxxxxxxxxxxx" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36 OPR/58.0"
[/CODE]

En regardant mes logs "syslog":
[CODE]
Apr 12 00:00:01 vpsxxxxxxxx CRON[1273]: (root) CMD (test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(3600))' && certbot -q renew)
[/CODE]

Le fichier "daemon.log"
[CODE]
Apr 12 00:13:25 vpsxxxxxx systemd[1]: Starting Certbot...
Apr 12 00:13:28 vpsxxxxxx systemd[1]: Stopping The Apache HTTP Server...
Apr 12 00:13:28 vpsxxxxxx systemd[1]: Stopped The Apache HTTP Server.
Apr 12 00:13:36 vpsxxxxxx systemd[1]: Starting The Apache HTTP Server...
Apr 12 00:13:36 vpsxxxxxx apachectl[1531]: httpd (pid 1398) already running
Apr 12 00:13:36 vpsxxxxxx systemd[1]: Started The Apache HTTP Server.
Apr 12 00:13:36 vpsxxxxxx systemd[1]: Started Certbot.
Apr 12 00:13:36 vpsxxxxxx systemd[1]: certbot.timer: Adding 56.640158s random time.
Apr 12 00:13:36 vpsxxxxxx systemd[1]: certbot.timer: Adding 34min 27.511392s random time.
[/CODE]

Dans le log "certbot":
[CODE]
File "/usr/lib/python2.7/dist-packages/certbot/plugins/selection.py", line 215, in set_configurator
raise errors.PluginSelectionError(msg.format(repr(previously), repr(now)))
PluginSelectionError: Too many flags setting configurators/installers/authenticators 'standalone' -> 'apache'
[/CODE]

J'en conclus que letsencrypt a essayé de renouveler mes domaines mais n'a pas réussi à relancer Apache. Les domaines concernés ont bien été renouvelé pour 3 mois cependant. C'est uniquement relancer le serveur Apache.
En regardant dans "etc/letsencrypt/renewal/" pour le domaine renouvelé, j'ai ceci:
[CODE]
# renew_before_expiry = 30 days
version = 0.10.2
archive_dir = /etc/letsencrypt/archive/www.mondomaine.fr
cert = /etc/letsencrypt/live/www.mondomaine.fr/cert.pem
privkey = /etc/letsencrypt/live/www.mondomaine.fr/privkey.pem
chain = /etc/letsencrypt/live/www.mondomaine.fr/chain.pem
fullchain = /etc/letsencrypt/live/www.mondomaine.fr/fullchain.pem

# Options used in the renewal process
[renewalparams]
authenticator = standalone
post_hook = systemctl start apache2
account = 4b2c0d4406987e7cc8687f44c77c9f48
pre_hook = systemctl stop apache2
installer = apache
[/CODE]
Là, c'est clair... c'est la config de base de letsencrypt. Je n'ai jamais touché à la config de quoi que ce soit.
Si j'ajoute un nouveau domaine, letsencrypt va toujours me créer un fichier renewal avec les mêmes caractéristiques par défaut. Et j'aurai toujours le même prob !

Ici, on propose d'ajouter un fichier "cli.ini" pour personnaliser letsencrypt:
https://certbot.eff.org/docs/using.html#configuration-file

Mais je ne sais pas ce que je dois mettre là-dedans ??!! Genre "authenticator" ?

Pouvez-vous m'aider ?

Merci


3 Replies ( Latest reply on 2020-06-01 06:52:02 by
janus57
)

Bonjour, peut être utiliser cette commande :

Il est conseillé d'arrêter le serveur Apache2 durant la création ou le renouvellement de certificats.
Utiliser la commande suivante pour arrêter Apache2 le temps de la création du certificat, puis, pour redémarrer Apache2 :

sudo certbot certonly --authenticator standalone --pre-hook "systemctl stop apache2.service" --post-hook "systemctl start apache2.service" --email email@chepec.se -d git.chepec.se

Plus d'informations sur mon vaste pavé concernant Let's Encrypt : https://wiki.visionduweb.fr/index.php?title=Certificats_SSL_TLS_Letsencrypt

Bonjour,
vu ça :


PluginSelectionError: Too many flags setting configurators/installers/authenticators 'standalone' -> 'apache'


Je dirais que ça ne colle pas :


authenticator = standalone
[...]
installer = apache


Je vois aussi 0.10.2 dans ton fichier de configuration, c'est la version que tu utilises ?
Si oui et vu qu'on est en version 0.34.0 il faudrait peut-être voir si il ne faudrait pas mettre à jour Certbot.

Pour ça :

Il est conseillé d'arrêter le serveur Apache2 durant la création ou le renouvellement de certificats.

C'est fait déjà par Certbot sauf qu'il plante avant de finir ce qui peut arriver ...et ne relance pas ton serveur Apache ce qui est moins acceptable.

Cordialement,

Bonjour,

je vous rappel la date du topic initiale : 12 avr. 2019

Cordialement, janus57

J'ai pas encore le réflexe de regarder la date.
Je regardais les nouveaux messages, un _scroll_ de trop !

Merci de la réponse.

Date ou pas date, je suis tombé sur ce message, référencé sur Google.
Il faudra le faire désindexer, et, le fermer, si les réponses pouvant être pertinentes ne sont pas autorisées.

Désolé, mais, le message pourrait être de 1999 que j'aurais répondu, car, je l'ai trouvé dans le top 40 de Google, lors de mes recherches, et, aucune réponse n'était apportée, ce qui en fait d'avantage un message totalement inutile.

Avec ma réponse, et, le lien que j'ai ajouté, ce message pourrait permettre de dépanner les personnes qui liront ce post, c'est quand même le but initial.

Bonjour,

mon message était surtout pour les version de certbot qui n’était pas du tout les même entre le moment de l’ouverture du post et les réponse de maintenant.

Sinon le passage par acme.sh + validation DNS via l'API + gracefull apache pour intégrer le nouveau certificat.

Cordialement, janus57