Let's Encrypt mit selfhost.de und DNS-01 challenge

Started by His.Dudeness, February 21, 2022, 06:52:22 PM

Previous topic - Next topic
Hi,

ich habe Let's Encrypt mit der HTTP challenge bei selfhost für HA-Proxy schon recht lange am laufen.
Jetzt wollte ich auf DNS-01 wechseln um mir ein wildcard-zert erstellen zu können.

Irgendwie bin ich zu blöd dafür.  :-|

Man kann ja selfhost.de als DNS-Provider im ACME Plugin auswählen, und das obwohl die beim acme.sh garnicht als unterstützte Provider aufgelistet werden. 

Welchen User+PW muss ich denn da eingeben? Den von meinem Kundenkonto oder den für's DynDNS für die entsprechende Domain?
Und was trag ich bei RID und RID2 ein?

Muss man überhaupt User+PW hinterlegen oder kann man den Token auch einfach von Hand bei dem TXT Eintrag hinterlegen? Oder ändert der sich jedes Mal?

Gruß & Dank
Michael


Hm, kann es sein, dass der acme client hier in der OPNSense buggy ist?  Oder zumindest wenn man selfhost auswählt?

Hab das hier im Log gefunden:

2022-02-24T21:15:42   acme.sh   [Thu Feb 24 21:15:42 CET 2022] You need to add the txt record manually.
2022-02-24T21:15:42   acme.sh   [Thu Feb 24 21:15:42 CET 2022] Can not find dns api hook for: dns_selfhost

Automatisiert Wildcard Zertifikate unter Selfhost zu erstellen funktioniert nicht. Dazu wäre eine entsprechende API notwendig die Selfhost nicht anbietet.

Manuell funktioniert es, wenn beim Erstellen des Wildcard Zertifikates der angezeigte Token als TXT-Record im Selfhost DNS hinterlegt wird. Dieser Token ändert sich aber bei jeder Erstellung, deswegen geht das nur manuell und nicht automatisch.

Diese Prozedur wäre mir aber alle 2-3 Monate zu umständlich.

Au contraire, monsieur!  ;D
Ich habe den Support da mal angefragt  und die haben eine API. Hier die Antwort:

Unter "Ihr Account -> Domainverwaltung -> Domain : einloggen -> TXT-Record : ändern"
finden Sie auch die ID, welche Sie für folgendes benötigen:
=======
curl -X POST -F 'username=%USERNAME%' -F 'password=%PASSWORD%' -F 'rid=%RECORDID%' -F 'content=%CONTENT%' https://selfhost.de/cgi-bin/api.pl
bzw. hier die reine Update URL
https://selfhost.de/cgi-bin/api.pl?username=%USERNAME%&password=%PASSWORD%&rid=%RECORDID&content=%CONTENT%
Dies sind die POST & GET Möglichkeit, den Inhalt dieses TXT-Records dann zu ändern.
Bei Einrichtung von PFSENSE oder anderen Gerätschaften & Software müssten Sie entsprechenden Support anfragen, ob und wie Unsere API dafür eingetragen werden kann.
Beachten Sie: Für diese API ist der Benutzername und das Passwort des Logins, Nicht DynDNS Accounts, notwendig.

February 27, 2022, 11:18:14 AM #4 Last Edit: February 27, 2022, 11:45:12 AM by Helge
Das mit der API ist völlig an mir vorbeigegangen, man findet dazu auch kaum etwas. Ich habe es noch nicht getestet, aber das könnte theoretisch funktionieren. Praktisch vermutlich nicht umsetzbar, da das ACME Plugin keine Möglichkeit dazu anbietet, zumindest nicht bei meiner pfSense.

Hm. Also die Konfig-Oberfläche des ACME-Clients auf der OPNSense hat in der Liste der DNS-Provider einen Eintrag für selfhost. Und da gibt es auch das Feld für den RID (Record-ID). Die Felder die man ausfüllen kann/muss sind auch unterschiedlich bei den verschiedenen Providern, andere haben das z.B. nicht.

Also der Entwickler des ACME-Client Plugins auf der OPNSense wird also an irgendeine Punkt versucht haben selfhost.de einzubauen. Scheint halt nur nicht zu funktionieren ^^ 

Wie machen das denn andere DNS-Provider?

Auf der pfSense gibt es leider keinen Eintrag für Selfhost, deswegen kann ich es nicht nachvollziehen.

Ich habe aber mal einen TXT-Record angelegt und anschließend über den Webbrowser die URL mit entsprechenden Daten abgesetzt, funktioniert!

https://selfhost.de/cgi-bin/api.pl?username=Benutzername&password=Passwort&rid=3304322&content=0815

Benutzername und Passwort vom Selfhost Account-Login (https://kirk.selfhost.de/cgi-bin/selfhost?p=account), nicht die vom DynDNS Account!

Dann müssen wir wohl hoffen, dass der Entwickler des ACME-Clients den Thread hier liest  ;D

Hi,

man kann auch unter https://github.com/opnsense/plugins/issues einen Bug für security/acme-client eintragen. @fraenki reagiert meist sehr schnell.

KH

Hallo zusammen,

Ich hatte gehofft das der Pull Request bei ACME schneller geht. Leider warte ich hier immer noch auf einen Merge.

Ihr könnt die benötigte dns_selfhost.sh aber auch sehr leicht selber hinzufügen:
https://github.com/opnsense/plugins/issues/2878#issuecomment-1084092518

What do I have to put in the input fiel in the OPNsense GUI?

Whatever I try, I get this error:
"SELFHOSTDNS_MAP must contain the fulldomain incl. prefix and at least one RID"

I did create 2 TXT records in selfhost.de and I do have the RIDs

but
_acme_challenge.mydomain.selfhost.eu:123456:54327
or

_acme_challenge.mydomain.selfhost.eu:123456:54327
alias.mydomain.selfhost.eu:111445


does not work.

Is it in the wrong format?

Hi, trying to issue a cert with DNS-01 in OPNsense ACME client, I can reproduce the issue with selfhost. I also replied in the issue tracker https://github.com/acmesh-official/acme.sh/issues/4291

has anyone got this to work at all?