El temporizador / servicio de letsencrypt / certbot systemd no funciona en Ubuntu 18.04


1

Instalé certbot para nginx y el script autorenew se configuró automáticamente, pero este es el correo electrónico que recibo, cada vez que se ejecuta:

/home/foobar/certbot-renew.sh: 1: /home/foobar/certbot-renew.sh: /usr/bin/certbot: not found

Lo que me confunde es que no hay certbot-renew.sh en mi casa dir ...?

Más información de systemctl:

# /lib/systemd/system/certbot.timer
[Unit]
Description=Run certbot twice daily

[Timer]
OnCalendar=*-*-* 00,12:00:00
RandomizedDelaySec=43200
Persistent=true

[Install]
WantedBy=timers.target

y

# /lib/systemd/system/certbot.service
[Unit]
Description=Certbot
Documentation=file:///usr/share/doc/python-certbot-doc/html/index.html
Documentation=https://letsencrypt.readthedocs.io/en/latest/
[Service]
Type=oneshot
ExecStart=/usr/bin/certbot -q renew
PrivateTmp=true

Soy nuevo en usar systemd, se agradece la ayuda!

Editar:

Como sugirió @grawity, revisé mis crontabs y encontré esto:

foo@bar:~$ cat /etc/crontab
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#

También esto:

foo@bar:~$ cat /etc/cron.d/certbot
# /etc/cron.d/certbot: crontab entries for the certbot package
#
# Upstream recommends attempting renewal twice a day
#
# Eventually, this will be an opportunity to validate certificates
# haven't been revoked, etc.  Renewal will only occur if expiration
# is within 30 days.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

0 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(43200))' && certbot -q renew

Para aclarar:

foo@bar:~$ which certbot
/usr/bin/certbot

foo@bar:~$ certbot --version
certbot 0.26.1

Respuestas:


0

Los servicios de Systemd no generan notificaciones por correo electrónico. Los trabajos de Cron lo hacen.

Todo esto indica que las unidades de sistema que se muestran no están relacionadas con el problema (es posible que ya funcionen sin problemas), pero la misma tarea se realiza desde otro lugar; muy probablemente un trabajo definido en su Crontab .

Utilizar crontab -l para listar los trabajos cron para su cuenta de usuario y crontab -e para editarlos.

Asegúrese de revisar su propio crontab, el crontab de la raíz (a través de sudo), y todo el sistema /etc/crontab archivo (no hay comando especial para eso).


Tienes razón, no lo sabía. Todavía no sé qué está mal, así que edité mi pregunta anterior con información adicional. ¡Gracias por tu contribución!
moritzjacobs
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.