I mainly will be using Letsencrypt’s webroot authentication plugin for obtaining LE SSL certificates and the fact that Letsencrypt client in beta testing stage has yet to activate auto renewals, the question I have on my mind is how will I auto renew my SSL certificates which expire in 90 days.
Linux cron has @monthly only so I could script it to run every 30 days (@monthly). But then I thought what about auto renewals at 60 and 90 day marks ?
How are other folks planning to auto renew their LE SSL certificates ?
I anticipate, given that a goal with LE is automation, that the duration of validity may decrease (and there are advantages to shorter trust durations, especially in automation).
In implementing LE into Caddy, we’re starting with renewing automatically 14 days before cert expiration, with failover attempts every day until a success. So basically every 76 days for now… A conservative approach. I think attempting to renew automatically less often will be a safer bet in the early days, since automated issuance and renewal may still be a fairly high risk activity (lots of moving parts).
But renewing more often early on will help catch and fix bugs, if you don’t mind running the risk in your environment. Make sure you have good logging.
But if you’re asking for cron help, use */3 in the month field.
A word of warning, using letsencrypt renew (even with dry-run) with “renew_by_default = true” will quickly put you over the rate limit. (OOPS). Turning off renew_by_default is giving good results now.
I think renew_by_default was severely misnamed. What we originally meant by “by default” was “without asking” (as opposed to the interactive modes which would ask the user to confirm that renewal was desired). In the 0.4.0 release we added an alternative name for this feature that I think is much more accurate, which is force_renewal (as a command-line option, --force-renewal).
I’m going to try to make sure that all of our documentation in the future refers to it as --force-renewal, because I think what this does is much more apparent. (It would be quite easy to misunderstand “renew_by_default” as “try to renew when appropriate” or something.)