DynDNS Server

Hat man sich bei einem DynDNS Anbieter einen Host erstellt der auf den Server daheim zeigt, dann sollte deinem DynDNS Anbieter regelmäßig deine Internet IP Adresse mitgeteilt werden, da diese sich in einer gewissen Zeit ändert (Falls nicht eine feste IP Adresse bezahlt wird). Dies kann im Router eingestellt werden, da der Speedport von der Telekom aber nur einen Host eintragen lässt, musste ich mir einen kleinen Server erstellen der dies macht

Dazu laden wir uns ein Ubuntu 22.04 Container runter

Wir klicken links auf local

Auf dieser Seite klickt man auf Container Templates

Ein Klick auf Templates

Es öffnet sich eine lange Liste mit Templates

Bevor wir jetzt ewig darin suchen geben wir Ubuntu ein und laden Ubuntu 22.04 standart herunter

So jetzt erstellen wir den Container und dazu klicken wir auf „Erstelle CT“ oben rechts

Hier müssen jetzt ein paar Sachen ausgefüllt werden

Die CT ID: Eure Container und Virtuellen Maschinen werden nach der CT ID sortiert, wenn ihr also vor habt viele CTs und VMs zu erstellen dann ist es praktisch sie zu gruppieren

Bei dem Hostname sollte man einen eindeutigen Namen vergeben

Den Haken bei Unpriviligierter Container lassen wir drin, es hätte keine Auswirkungen aber aus Sicherheitsgründen lassen wir ihn drin

Nesting lassen wir auch drin
und dann vergeben wir das Passwort

Bei Storage wählen wir local aus weil wir es hier runtergeladen haben, man hätte es auch auf eine andere Festplatte runterkaden können und von da aus erstellen aber ich hab bei mir keine sekundäre Festplatte

Bei Template wählen wir Ubuntu 22.04 standart und weiter

Bei Storage wählen wir local-zfs oder local-lvm aus je nach dem wie ihr euer Server gestaltet habt, ist eine Festplatte wir local-lvm da stehen und wenn ihr zwei identische Festplatte in einem ZFS Spiegelung betreibt dann wird local-zfs da stehen, aber hier gibts noch viel mehr Möglichkeiten die man bei der Installation machen könnte

Bei Disk-Größe reichen eigentlich 10 GB voll kommen da das Image ja nur ein paar Hundert Megabytes groß ist und die Updates die kommen sind nicht groß und wenn Benutzer angelegt werden sind das ja auch nur Kilobytes

Da dieser Server Zuhause steht und absolut nicht viele Anfragen hat und selbst mit vielen Anfragen braucht er nicht viel Leistung, daher reicht für Zuhause ein Kern

Auch hier, da nicht viel zu tun ist reichen 512 Megabyte voll aus

Diesmal wählen wir hier DHCP aus

Die Felder lassen wir leer

Den DNS Server teilen wir später über den DHCP Server zu

Hier eine Zusammenstellung die wenn man will nochmal kontrollieren kann, diesesmal machen wir keinen Haken rein bei „Nacher stellen starten“ und klicken auf Abschließen

Steht Task OK da dann ist der Container erstellt

Klickt man auf den Container wird die Übersicht angezeigt

Hier klicken wir diesesmal auf Netzwerkund doppel klicken auf unser Netzwerkadapter

Hier kopieren wir uns die MAC-Adresse raus in ein Text oder Word Dokument

Dann melden wir uns an unserem DHCP-Server an, klicken auf Servers und auf DHCP-Server

Bei Hosts and Host Groups klicken wir auf Add a new host

Jetzt legen wir einen neuen Host und füllen dazu
Host descripton
Host name
Hardware Address
Fixed IP address
aus und klicken dann auf Create

So, wenn das mit dem Host anlegen geklappt hat, sieht man ihn jetzt in der Liste. Wenn alles stimmt klickt man auf Apply Changes.

Wieder zurück in Proxmox und auf den Container. Dann Konsole auswählen und auf Start oben rechts klicken.

Wir klicken auf Konsole und melden und mit root und dem Passwort an das wir bei der Erstellung vom Container gewählt haben

Als erstes bringen wir das System auf den neusten Stand in dem wir es updaten
apt-get update -y && apt-get upgrade -y && apt-get dist-upgrade -y && apt-get full-upgrade -y

Dann wollen wir auch das es immer auf dem neusten Stand bleibt und automatische Updates macht
apt-get install unattended-upgrades -y

dpkg-reconfigure -plow unattended-upgrades

Auf yes klicken

So der Server wäre soweit das der DynDNS Dienst installiert werden kann.
Dazu geben wir den Befehl
apt-get install ddclient -y
ein.

Hier wählen wir other aus, dann müssen wir jetzt nicht soviel unnötiges ausfüllen, das machen wir später schneller und einfacher.

Hier wählen wir dyndns2 aus.

Das lassen wir leer, Tab Taste und enter.

Auch den Benutzer lassen wir leer, Tab Taste und enter.

Auch das Passwort lassen wir leer, Tab Taste und enter.

Das lassen wir natürlich auch leer, Tab Taste und enter.

Da wählen wir Web-based IP ddiscovery service aus, enter.

Leer lassen, Tab und enter.

So jetzt gehen wir in die Konfiguration und verknüpfen unseren Server mit unseren DynDNS Anbieter.
nano /etc/ddclient.conf

Hier fügen wir für jeden Host den wir in Nginx und unserem DynDNS Anbieter erstellen, einen Eintrag ein.

protocol=noip
use=web
web=checkip.dyndns.org
server=dynupdate.no-ip.com
login=Benutzername von No IP oder anderem Anbieter
password=Passwort von No IP oder anderem Anbieter
meinewebseite.ddns.net

Mit STRG und O speichern und mit STRG und X verlassen.

Dann starten wir den DnyDNS Dienst neu.
/etc/init.d/ddclient restart

So jetzt synchronisieren wir mal den DnyDNS Server mit Anbieter.
ddclient -daemon=0 -debug -verbose -noquiet

Sollte alles geklappt haben steht neber jeder Webseite Success links.

Wenn man die Synchronisierung nicht händisch mehrmals am Tag machen möchte, sollte man sich einen Auftrag dafür erstellen.
crontab -e

Hier wählt man die 1 aus.

Hier fügt man am Ende diese Zeile ein.
* */1 * * * /usr/sbin/ddclient --force

Mit STRG und O speichern und STRG und X verlassen.

Bedeutung und Reihenfolge von links
Erster Stern Minuten
Zweiter Stern Stunden
Dritter Stern Tage
Vierter Stern Monate
Fünfter Stern Wochentage

Wenn ein Stern gegen eine Zahl aus getauscht wird bestimmt man Uhrzeit und Datum
Beispiel 
30 10 * * * /usr/sbin/ddclient --force
Hier würde dann immer um 10:30 Uhr jeden Tag die Arbeit ausgeführt werden.

Anderes Beispiel
* */1 * * * /usr/sbin/ddclient --force
Hier wird jede Stunde die Arbeit ausgeführt

Anderes Beispiel
* 10-20 * * * /usr/sbin/ddclient --force
Hier wird stündlich von 10 Uhr bis 20 Uhr die Arbeit ausgeführt