Letsencrypt certbot auto renew not working (Debian, Ubuntu) systemd

If your letsencrypt SSL certificates are not renewed automatically, chances are that your certbot.timer service is not running.

Here are the steps to troubleshoot this issue:

1. List all current systemd timers
(see if Certbot is listed, chances are it is not listed)

systemctl list-timers --all

2. Verify that these files exist:

/lib/systemd/system/certbot.service
/lib/systemd/system/certbot.timer
/etc/cron.d/certbot

Note that there is no need to create a separate cron jon to trigger the renawal if these files exist.

3.Start the Certbot Timer
If the files above exist then run the following command to start the timer service

systemctl start certbot.timer

4.Enable the Timer on BOOT
Now enable the timer service on boot

systemctl enable certbot.timer

5.Verify
List all the timers again to verify that certbot is running

systemctl list-timers --all