patrickebert
Goto Top

Lets Encrypt Wildcard Fehler DNS

Hallo mal wieder liebe Community,

ich versuche mir zurzeit eine Wildcard Zertifikat zu erstellen für *.example.com.
Dies versuche ich an einer Ubuntu 17.10 VM mit Certbot.
Der Ubuntu Rechner ist nicht in der Domäne, bekommt jedoch über den DHCP Server auch den DNS zu geteilt.
Nach dem ich mir dir Beschreibung auf https://certbot.eff.org/docs/using.html durchgelesen habe, bin ich mit der Zertifikatserstellung voran gegangen.
sudo certbot certonly --manual -d *.example.com --agree-tos --no-bootstrap --manual-public-ip-logging-ok --preferred-challenges dns-01 --server https://acme-v02.api.letsencrypt.org/directory --debug

Nach dem ich dies ausführe soll ich nun einen TXT Eintrag im DNS erstellen.
SO habe ich mir unter der DNS Forward-Lookupzone eine neue ZONE example.com erstellt.
Dort habe ich nun den "TXTEintrag" "_acme-challenge" (FQDN ist somit _acme-challenge.example.com) mit den dazugehörigen Schlüssel (der mir bei der Certbot aufgeführt wird) eingetragen.
Nach einiger Zeit (1h) warten, habe ich nun dann im Terminal bestätigt, das ich den Eintrag erstellt habe.
So sieht es aus:
administrator@squid:~$ sudo certbot certonly --manual -d *.example.com --agree-tos --no-bootstrap --manual-public-ip-logging-ok --preferred-challenges dns-01 --server https://acme-v02.api.letsencrypt.org/directory --debug
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator manual, Installer None
Obtaining a new certificate
Performing the following challenges:
dns-01 challenge for example.com

-------------------------------------------------------------------------------
Please deploy a DNS TXT record under the name
_acme-challenge.example.com with the following value:

RqFrbzdtrjfy5Guva3Bv47fNVWhbyOZUl8eJ_XMa2NM

Before continuing, verify the record is deployed.
-------------------------------------------------------------------------------
Press Enter to Continue
Waiting for verification...
Cleaning up challenges
Exiting abnormally:
Traceback (most recent call last):
  File "/usr/bin/certbot", line 11, in <module>  
    load_entry_point('certbot==0.22.2', 'console_scripts', 'certbot')()  
  File "/usr/lib/python3/dist-packages/certbot/main.py", line 1266, in main  
    return config.func(config, plugins)
  File "/usr/lib/python3/dist-packages/certbot/main.py", line 1157, in certonly  
    lineage = _get_and_save_cert(le_client, config, domains, certname, lineage)
  File "/usr/lib/python3/dist-packages/certbot/main.py", line 118, in _get_and_save_cert  
    lineage = le_client.obtain_and_enroll_certificate(domains, certname)
  File "/usr/lib/python3/dist-packages/certbot/client.py", line 350, in obtain_and_enroll_certificate  
    cert, chain, key, _ = self.obtain_certificate(domains)
  File "/usr/lib/python3/dist-packages/certbot/client.py", line 294, in obtain_certificate  
    orderr = self._get_order_and_authorizations(csr.data, self.config.allow_subset_of_names)
  File "/usr/lib/python3/dist-packages/certbot/client.py", line 330, in _get_order_and_authorizations  
    authzr = self.auth_handler.handle_authorizations(orderr, best_effort)
  File "/usr/lib/python3/dist-packages/certbot/auth_handler.py", line 79, in handle_authorizations  
    self._respond(aauthzrs, resp, best_effort)
  File "/usr/lib/python3/dist-packages/certbot/auth_handler.py", line 154, in _respond  
    self._poll_challenges(aauthzrs, chall_update, best_effort)
  File "/usr/lib/python3/dist-packages/certbot/auth_handler.py", line 220, in _poll_challenges  
    raise errors.FailedChallenges(all_failed_achalls)
certbot.errors.FailedChallenges: Failed authorization procedure. example.com (dns-01): urn:ietf:params:acme:error:dns :: DNS problem: NXDOMAIN looking up TXT for _acme-challenge.example.com
Please see the logfiles in /var/log/letsencrypt for more details.

IMPORTANT NOTES:
 - The following errors were reported by the server:

   Domain: example.com
   Type:   None
   Detail: DNS problem: NXDOMAIN looking up TXT for
   _acme-challenge.example.com

Nun habe ich am Ubuntu Rechner geschaut, ob er überhaupt an den beiden DNS den TXT Eintrag lesen kann.
Zuerst die Domänencontroller zu der Domäne example.com abgefragt
dig NS example.com
hier werden beide DC`s angezeigt (DC01 und DC02)
dig @dc01 _acme-challenge.exaample.com TXT
dig @dc02 _acme-challenge.exaample.com TXT
Bei beiden wird der richtige DNS TXT Eintrag angezeigt.
RqFrbzdtrjfy5Guva3Bv47fNVWhbyOZUl8eJ_XMa2NM

Nun weiß ich leider nicht mehr was ich noch tun kann, mir kommt es nun so vor, als ob gar nicht von meinen Domänencontroller abgefragt wird.
Ich habe aber auch keinen Parameter gefunden, wo ich explizit den Domänencontroller angeben kann.
Testweise habe ich das ganze auch einmal mit acme.sh probiert,
jedoch komme ich da zur selben Fehlermeldung.

Ich hoffe, das Ihr mir wie immer helfen könnt face-smile
LG
Patrick und einen schönen Freitag den 13. face-smile

Content-ID: 371075

Url: https://administrator.de/contentid/371075

Ausgedruckt am: 22.11.2024 um 05:11 Uhr

135950
135950 13.04.2018 aktualisiert um 07:54:10 Uhr
Goto Top
Moin,
Du hast einen Denkfehler.
Die Einträge gehören auf den "öffentlich" erreichbaren Nameserver für die Domain , nicht auf den internen, denn den kann Let's encrypt ja gar nicht erreichen um die Einträge abzufragen, logisch oder face-smile?!

Gruß m.
sabines
sabines 13.04.2018 um 08:26:33 Uhr
Goto Top
Moin,

wenn Du im DNS Record Deines Anbieters nichts hinterlegen kannst, kann man die TXT Datei alternativ auch auf dem Server ablegen.
Ich find' nur grad nicht mehr wie oder wo.

Gruss
aqui
Lösung aqui 13.04.2018 aktualisiert um 09:12:00 Uhr
Goto Top
Die ct' hatte kürzlich eine gute Doku dazu wie man es löst:
https://www.heise.de/ct/ausgabe/2018-4-acme-sh-bezieht-Wildcard-Zertifik ...
patrickebert
patrickebert 13.04.2018 um 09:25:35 Uhr
Goto Top
Moin,
Ich glaube ich verstehe dies dann falsch.
auf den DNS Server von „Example.com“ habe ich aber keinen Einfluss, der DNS Eintrag zu Example.com steuert bei uns die Vodafone, sodass ich keinen Zugriff auf den öffentlichen DNS -Server habe.
Ich hätte gedacht, das der Parameter DNS-01
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.
mir dies auch offline erteilt.

Unsere Webseite wird zwar auch nicht bei uns apportier, aber ich glaube einen FTP Zugang hätte ich um dort etwas abzulegen.
Nur dazu finde ich keine Info bisher, wie man das lösen könnte.
Ich informier mich aber diesbezüglich mal weiter.

Die C‘t habe ich zu Hause und hatte es auch schon probiert mit acme und dieser Anleitung, doch dort kommt genau die gleiche Fehlermeldung wie mit Certbot, das der TXT Eintrag nicht gefunden wurde.
Es ist glaube die 4. Ausgabe dieses Jahres gewesen.
aqui
Lösung aqui 13.04.2018 aktualisiert um 09:32:02 Uhr
Goto Top
wird zwar auch nicht bei uns apportier,
Macht das nicht der Hund wenn er Stöckchen holt (apportieren) oder wie war das jetzt gemeint ??

Zur Fehlermeldung gibt es diverese Postings im Letsencrypt Forum und Knowledgebase:
https://community.letsencrypt.org/t/dns-challenge-failing-nxdomain-looki ...
https://community.letsencrypt.org/t/letsencrypt-1-9-4-dns-problem-nxdoma ...
https://community.letsencrypt.org/t/dns-01-challenge-failing/47715
135950
Lösung 135950 13.04.2018 aktualisiert um 09:33:29 Uhr
Goto Top
auf den DNS Server von „Example.com“ habe ich aber keinen Einfluss
Dann gibts auch keine Wildcards face-smile. Wie sollte ACME sonst deine Domain validieren? DNS ist bei Wildcard ja Pflicht, und ACME sieht nur das was die öffentlichen DNS Server ihm mitteilen, nicht deine internen die ja nicht extern erreichbar sind!
Lösung, betreibe deinen eigenen öffentlichen DNS Server, oder besorg dir einen Hoster der das manipulieren supported face-smile.
patrickebert
patrickebert 13.04.2018 aktualisiert um 09:57:18 Uhr
Goto Top
Zitat von @aqui:

wird zwar auch nicht bei uns apportier,
Macht das nicht der Hund wenn er Stöckchen holt (apportieren) oder wie war das jetzt gemeint ??

Zur Fehlermeldung gibt es diverese Postings im Letsencrypt Forum und Knowledgebase:
https://community.letsencrypt.org/t/dns-challenge-failing-nxdomain-looki ...
https://community.letsencrypt.org/t/letsencrypt-1-9-4-dns-problem-nxdoma ...
https://community.letsencrypt.org/t/dns-01-challenge-failing/47715

Ups, da ist wohl die Autokorrektur angesprungen.face-smile
Das hatte ich gestern auch schon entdeckt.
Also gibt es wirklich nur die Möglichkeit den DNS TXT Eintrag beim Provider zu setzen.

@135950
Vielen Dank ich werde mich wohl tiefer in die Materie belesen müssen. face-smile