Ein eigener, gegen extern sichtbarer, Name-Server kann die Flexibilität der eigenen Serverumgebung ziemlich vereinfachen. Zusätzliche Subdomains oder Anpassungen in der IP-Adressierung sind so schnell realisierbar. In meinem Beispiel verwenden wir einen Ubuntu-Server mit BIND als DNS-Programm.
Voraussetzung für die externe Sichtbarkeit ist ein Eintrag beim Registrar mit einer fixen IP für den Name-Server.
- Holen Sie von der Canonical-Webseite die neueste Server-Edition als ISO-Image auf den PC.
- Auf einer virtuellen Umgebung starten Sie einen neuen virtuellen Computer von diesem ISO-Image. Sollten Sie einen physischen Computer nutzen, erstellen Sie aus diesem ISO-Image ein Abbild auf einen USB-Stick. Starten Sie dann den physischen Computer mit diesem Stick.
- Gehen Sie durch die Installation und passen Sie ggf. die notwendigen Parameter an.
- Melden Sie sich an der Konsole mit dem neu erstellten Benutzer an.
- Um Ubuntu zu aktualisieren, geben Sie die die beiden nachstehenden Befehle ein
sudo apt-get update
sudo apt-get upgrade - Um Webmin zu installieren muss zuerst eine ASCII-Datei kopiert werden. Geben Sie dazu den nachstehenden Befehl ein
curl -fsSL https://download.webmin.com/jcameron-key.asc | sudo gpg --dearmor -o /usr/share/keyrings/webmin.gpg - Nun muss das Webmin-Repository hinzugefügt werden, damit Ubuntu Webmin auflösen kann. Öffnen Sie dazu die Date sources.list mit dem Befehl
sudo nano /etc/apt/sources.list - Scrollen Sie ans Ende und fügen Sie die nachstehende Zeile ein
deb [signed-by=/usr/share/keyrings/webmin.gpg] http://download.webmin.com/download/repository sarge contrib - Beenden Sie den Editor mit Ctrl + X und speichern Sie mit Yes
- Damit Webmin installiert werden kann, führen Sie nachstehenden Befehl aus
sudo apt-get update - Installieren Sie nun Webmin mit dem Befehl
sudo apt install webmin -y - Nun installieren wir FirewallD und deaktivieren UFW geben Sie der Reihe nach die folgenden Befehle ein
sudo apt install firewalld
sudo systemctl enable firewalld
sudo systemctl start firewalld
sudo firewall-cmd --state (Kontrolle ob Dienst läuft)
sudo firewall-cmd --add-port=10000/tcp --permanent
sudo firewall-cmd --reload
sudo ufw disable - Jetzt können Sie mit dem Browser und der IP-Adresse auf Webmin zugreifen
https://ihre-IP-Adresse:10000 - Damit sich auch der User root einloggen kann, muss dieser freigegeben werden. Gehen Sie oben auf die Lasche Webmin, dann im Menü auf System und Users and Groups. Klicken Sie auf den User root.
- Vergeben Sie dem Benutzer ein Passwort. Fügen Sie dem Benutzer die Gruppen adm, cdrom, dip, lxd, plugdev und sudo hinzu. Nun kann sich der User root ebenfalls einloggen.
- Damit sich der User root auch über SSH einloggen kann, gehen Sie oben auf die Lasche Webmin, dann im Menü auf Servers und SSH Server.
- Klicken Sie nun auf Authentication und wählen Sie bei Allow login by root die Auswahl Yes aus. Speichern Sie mit einem Klick auf Save.
- Klicken Sie jetzt noch auf dem SSH Server Hauptbild auf Apply Changes. Nun kann sich der Benutzer root auch mit SSH einloggen.
- Jetzt können wir Bind installieren. Dazu können Sie im Webmin auf Tools und Terminal klicken und dann den nachstehenden Befehl eingeben
sudo apt install bind9 bind9utils bind9-doc -y - Klicken Sie nun auf der Menüleiste im Webmin auf Refresh Modules. Damit wird die Menüstruktur an die neu installierten Programme angepasst.
- Damit der Name-Server angesprochen werden kann, müssen Sie in FirewallD den Port 53 für TCP und UDP freigeben. Ist der Name-Server, wie in meinem Beispiel, in einem LAN, muss auf der Firewall eine Port-Weiterleitung des Ports 53 von extern eingerichtet werden. Wird der Name-Server in der DMZ betrieben, muss er die korrekte externe IP-Adresse erhalten.
- BIND erlaubt auch Spiegelungen zu einem Slave-Name-Server. Dazu eine zweite Maschine mit anderem Namen und IP-Adresse mit BIND aufsetzen. Bei der Konfiguration der Master- und Slave-DNS kann auf die jeweils andere Maschine Bezug genommen werden.