How to auto re-new letsencrypt certificate for a website every 3 months using cron?

March 26, 2019 9.4k views
Ubuntu Miscellaneous Linux Commands Let's Encrypt

I update it manually using this command

sudo systemctl stop nginx
url="my_domain123.com"
sudo certbot certonly --standalone -d $url -d www.$url --email main@$url
sudo systemctl start nginx

This works fine, but it’s manual. If I create a bash script with this code and a cron task which I’ll call once in [80..89] days, will it work as I expect? With no hidden issues?

Note: this works fine when doing it manually - by hands. I only want to automate it using cron, in a simple way, without overcomlecating it.

No third-party libraries and tools.

2 Answers

Try Certbot from the same organization. It has an autorenew option.

If you are using Certbot it should already be setup to auto renew. I’m using Ubuntu 16.04 & nginx, followed the instructions to setup certbot, and my certs have been auto renewing.

Use this link to find instructions for your stack:
https://certbot.eff.org/all-instructions

Have another answer? Share your knowledge.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!