I have used Let's Encrypt successfully for two of my domains; but when I tried the same steps as https://antipaucity.com/2016/01/06/lets-encrypt-centos-6-truly-free-ssl/, it hangs and eventually throws the exception below. All domains in question are hosted on the same server, with administrative details like DNS being the same AFAIR.

When letsencrypt-auto --debug certonly crashed, here was the output:

Traceback (most recent call last):
  File "/home/cjsh/.local/share/letsencrypt/bin/letsencrypt", line 11, in 
  File "/home/cjsh/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/main.py", line 692, in main
    return config.func(config, plugins)
  File "/home/cjsh/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/main.py", line 509, in obtain_cert
    _, action = _auth_from_domains(le_client, config, domains, lineage)
  File "/home/cjsh/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/main.py", line 93, in _auth_from_domains
    lineage = le_client.obtain_and_enroll_certificate(domains)
  File "/home/cjsh/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/client.py", line 274, in obtain_and_enroll_certificate
    certr, chain, key, _ = self.obtain_certificate(domains)
  File "/home/cjsh/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/client.py", line 246, in obtain_certificate
  File "/home/cjsh/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/auth_handler.py", line 74, in get_authorizations
    self._respond(resp, best_effort)
  File "/home/cjsh/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/auth_handler.py", line 131, in _respond
    self._poll_challenges(chall_update, best_effort)
  File "/home/cjsh/.local/share/letsencrypt/local/lib/python2.7/site-packages/letsencrypt/auth_handler.py", line 195, in _poll_challenges
    raise errors.FailedChallenges(all_failed_achalls)
FailedChallenges: Failed authorization procedure. pragmatometer.com (tls-sni-01): urn:acme:error:connection :: The server could not connect to the client to verify the domain :: DNS problem: query timed out looking up A for pragmatometer.com

 - The following errors were reported by the server:

   Domain: pragmatometer.com
   Type:   connection
   Detail: DNS problem: query timed out looking up A for

   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.
  • 1
    what distro are you on? – warren Apr 7 '16 at 2:48
  • @warren Debian. – Christos Hayward Apr 8 '16 at 16:57
  • 1
    you probably don't need to run the --debug flag, then - so long as you have Python 2.7 installed (you need it on CentOS 6 because 2.7 isn't natively available) – warren Apr 8 '16 at 17:22

My best guess is that there was an intermittent / short-lived DNS failure / timeout from the Let's Encrypt side (or maybe you happen to be on a slow connection).

Indeed, a quick check of the core error message ("query timed out looking up A for" site:letsencrypt.org) reveals some reports on the LE forum site like this one.

Try again in a little bit, and you should be golden.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.