GoDaddy API für dynamischen DNS Eintrag unter pfSense einrichten

API Key

Die meisten Privatnutzer haben einen Internetanschluss mit wechselnder IP-Adresse. Möchte man damit Dienste von außen verfügbar machen, sollte eine Technik wie dynamisches DNS eingesetzt werden. Hierbei wird im DNS-Server einer Domain ein A-Record mit der aktuellen IP-Adresse hinterlegt.

Es gibt diverse Anbieter, welche die Möglichkeit für dynamische DNS-Einträge anbieten. Manche unterstützen dabei weniger Funktionen, andere mehr. Beispielsweise kann man bei Strato nur A-Records über die Update-URL eintragen lassen. Das reicht für Zwecke wie VPN- oder Webserver, stößt aber bei komplexeren Dingen wie Let’s Encrypt Wildcard-Zertifikaten über DNS-Authentifizierung oder Mailserver an seine Grenzen.

Daher habe ich meine Domains zu GoDaddy übertragen. GoDaddy bietet eine sehr umfangreiche API an, mit der man noch viel mehr als nur DNS-Einträge verwalten könnte. Außerdem ist GoDaddy als Provider für dynamisches DNS und Let’s Encrypt in pfSense von Haus aus unterstützt.

GoDaddy API Zugangsdaten einrichten

Um die API von GoDaddy nutzen zu können, muss unter https://developer.godaddy.com/ ein API Key erstellt werden.

Auf der Seite dann einen Klick auf „Create New API Key“. Hier einen Namen eintragen, welcher am besten den Verwendungszweck für diesen API Key beschreibt. Als Environment sollte Production ausgewählt werden.

Anschließend wird ein Key und dazu ein Secret angezeigt. Der Key ist so etwas wie ein Benutzername. Das Secret ist das dazugehörige Kennwort.

Einrichtung pfSense Dynamic DNS Service

Die Einrichtung unter pfSense ist sehr einfach zu erledigen. Unter Services > Dynamic DNS mit dem „+ Add“ Button ein neues Konto anlegen und mit den gewünschten Daten ausfüllen.

Das @ im Screenshot wird verwendet, wenn die Hauptdomain für dynamisches DNS verwendet werden soll. Hier würde sonst die Subdomain (z. B. www oder mail) stehen.
Username ist der Key des vorher angelegten API Zugangs und das Secret wird unter Password eingetragen.
Damit das nutzen der API klappt muss eine TTL angegeben werden. Der GoDaddy Standard-Wert ist 600.

Nach einem Klick auf „Save & Force Update“ wird im DNS-Server von GoDaddy die IP-Adresse eures Anschluss eingetragen.
pfSense ermittelt die IP-Adresse standardmäßig mit http://checkip.dyndns.org.

In der Übersicht „Dynamic DNS Clients“ sollte nun unter Cached IP in grün die aktuelle IP-Adresse neben der Domain angezeigt werden.