Letsencrypt renewal

Posted September 3, 2017 12.3k views
DNSLet's EncryptUbuntu 16.04

I have web app running on a DO Droplet which I secured with Letsencrypt. The cert renewal has been failing it’s weekly attempt ever since 8/6. I should’ve addressed the problem sooner, but the cert has expired. In my le-renew.log I have the following error…

All renewal attempts failed. The following certs could not be renewed:
  /etc/letsencrypt/live/[domain]/fullchain.pem (failure)
 - The following errors were reported by the server:

   Domain: [domain]
   Type:   connection
   Detail: DNS problem: SERVFAIL looking up CAA for [domain]

   To fix these errors, please make sure that your domain name was
   entered correctly and the DNS A record(s) for that domain
   contain(s) the right IP address. Additionally, please check that
   your computer has a publicly routable IP address and that no
   firewalls are preventing the server from communicating with the
   client. If you're using the webroot plugin, you should also verify
   that you are serving files from the webroot path you provided.

And when I attempt to manually renew via sudo /usr/bin/letsencrypt renew I get that same error referring to SERVFAIL and the CAA.

After some investigating I’ve confirmed some things. My domain was registered through Google Domains, pointed to the digitalocean name servers, and I have an A record setup for my droplet. I’ve read that there are new requirements for issuing SSLs and renewals, specifically a CAA record, and that digitalocean doesn’t yet support this? According to this thread.

My question is is there anything I can do resolve this or must I wait until digitalocean supports CAA records? Am I forced to run the site unsecured for now?

1 comment
  • This category of plugins automates obtaining a certificate by
    modifying DNS records to prove you have control over a
    domain. Doing domain validation in this way is
    the only way to obtain wildcard certificates from Let’s
    Encrypt. mybkexperience

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Submit an Answer
4 answers

It’s hard to tell you anything without more information.

Let’s Encrypt does not require that you use CAA, only that your nameservers respond in a valid manner, which is an extremely low bar that most DNS providers meet (at least by now).

What’s your domain?

(Domains are public, and all Let’s Encrypt certificates are logged publicly.)

Thanks for the response. The domain is

  • The problem is that the zone in the DigitalOcean control panel is called “” but it should be called “” (with an A record for “www”.)

    It’s not really an issue with CAA records per se, it’s just that the setup makes all queries for (except for, including CAA, fail.

    You need to rename or recreate the zone in the control panel. (Don’t forget to make sure there’s a working “wwwA record!)

    Compare (on some Linux box):

    dig caa
    dig ns
    dig caa
    dig ns

    (With an older version of dig, you would need to do e.g. “dig type257” instead of “dig caa”.)

Thanks so much. This led me to the resolution. Simply needed to add that domain and an A record for it, and manually initiate the renewal.

I’m getting an error with sudo letsencrypt renew

WARNING:letsencrypt.cli:Attempting to renew cert from /etc/letsencrypt/renewal/ produced an unexpected error: ‘server’. Skipping.
All renewal attempts failed. The following certs could not be renewed:
/etc/letsencrypt/live/ (failure)
1 renew failure(s), 0 parse failure(s)