Server-Hostname und FQDN richtig konfigurieren
Niveau: Anfänger
Geschätzte Dauer: ca. 15 Minuten
Ziel: Einen dauerhaften Hostnamen für den Server konfigurieren und einen Fully Qualified Domain Name (FQDN) für die korrekte Systemidentifikation und lokale DNS-Auflösung einrichten.
Einführung
Ein Hostname ist die Bezeichnung eines Geräts in einem Netzwerk. Ein Fully Qualified Domain Name (FQDN) besteht aus dem Hostnamen und der Domain, zu der er gehört (z. B. web-server-01.example.com). Die korrekte Konfiguration ist entscheidend für Dienste wie Mailserver (Postfix, Exim), die interne Netzwerkkoordination und die Identifikation Ihrer Server in Terminal-Prompts innerhalb einer großen Serverflotte.
In dieser Anleitung legen Sie mit den systemd-Werkzeugen einen dauerhaften Hostnamen fest und richten eine lokale FQDN-Zuordnung ein.
Hinweis zu den FQDN-Typen:
- Öffentlicher FQDN: wird über das öffentliche DNS gesetzt (z. B. Cloudflare, Route53). Darüber wird Ihr Server im Internet gefunden.
- Lokaler FQDN: der Name, mit dem sich der Server selbst identifiziert und intern auflöst. Beide sollten idealerweise übereinstimmen, die lokale Konfiguration sorgt jedoch für die Systemstabilität.
Voraussetzungen
Stellen Sie vor dem Start sicher, dass Folgendes vorhanden ist:
- Betriebssystem: Ubuntu 20.04/22.04/24.04 LTS, Debian 11/12 oder RHEL/CentOS/AlmaLinux 8/9.
- Zugriff: ein Benutzer mit
sudo-Rechten. - Erforderliche Kenntnisse: grundlegende Bedienung des Linux-Terminals und von Texteditoren (z. B.
nanoodervim).
Schritt 1: Aktuelle Konfiguration prüfen
Prüfen Sie zunächst, welchen Namen der Server derzeit verwendet.
Führen Sie den Statusbefehl aus:
hostnamectl status
Erwartete Ausgabe (oder ähnlich):
Static hostname: localhost.localdomain Icon name: computer-vm Chassis: vm Machine ID: abc123def456 Boot ID: 123abc456def Virtualization: kvm Operating System: Ubuntu 24.04 LTS Kernel: Linux 6.8.0-31-generic Architecture: x86-64
Prüfen Sie anschließend, ob der FQDN korrekt aufgelöst wird:
hostname -f
Gibt das System eine leere Zeile, genau localhost oder eine Fehlermeldung zurück, dass der Host nicht aufgelöst werden kann, ist der FQDN nicht korrekt konfiguriert.
Schritt 2: Neuen Hostnamen festlegen (Hostname-Konfiguration auf dem Linux-Server)
Auf den meisten Distributionen ist hostnamectl der richtige Weg, um den Hostnamen eines Servers zu setzen und dauerhaft zu speichern. Dieser Abschnitt behandelt die praxisnahe Hostname-Konfiguration unter Linux für gängige Szenarien, einschließlich der üblichen Vorgehensweise unter Ubuntu und Debian, ohne /etc/hostname manuell zu bearbeiten.
Führen Sie den folgenden Befehl aus und ersetzen Sie <YOUR_HOSTNAME> durch den gewünschten Kurznamen (z. B. web-01):
sudo hostnamectl set-hostname <YOUR_HOSTNAME>
Linux erlaubt technisch gesehen Punkte im Hostnamen, empfohlen werden jedoch ausschließlich Kleinbuchstaben, Ziffern und Bindestriche. Punkte im Kurznamen (z. B. web.01) können zu Verwechslungen mit dem FQDN führen und werden in der Regel vermieden.
Der Befehl wirkt sich sofort auf das System aus. Möglicherweise ändert sich Ihr aktueller Terminal-Prompt (meist user@old-hostname:~$) nicht sofort. Melden Sie sich ab und wieder an oder starten Sie mit bash eine neue Shell-Sitzung, damit der Prompt den neuen Namen anzeigt.
Schritt 3: /etc/hosts für die FQDN-Auflösung anpassen
In diesem Schritt wird der lokale Hostname mit einem FQDN und einer Domain verknüpft, damit die Namensauflösung zuverlässig funktioniert. In der Praxis definiert dieser Teil der Server-Hostname-Einrichtung die lokale Netzwerkidentität der Maschine und vervollständigt die zugrunde liegende Konfiguration der Netzwerkidentität unter Linux, auf die viele Dienste zugreifen.
Die Zuordnung Ihres FQDN zur Loopback-Adresse 127.0.1.1 ist das sicherste Muster für den Produktivbetrieb (insbesondere unter Debian/Ubuntu). So wird der Name auch dann aufgelöst, wenn das Netzwerk ausfällt oder sich Ihre öffentliche IP-Adresse ändert.
Öffnen Sie die hosts-Datei:
sudo nano /etc/hosts
Der vorhandene Inhalt sieht in etwa so aus:
127.0.0.1 localhost 127.0.1.1 old-hostname
Entfernen Sie nicht die Zeile 127.0.0.1 localhost. Passen Sie stattdessen die Zeile 127.0.1.1 an (oder fügen Sie sie hinzu), sodass sie Ihren FQDN gefolgt vom Kurznamen enthält.
Verwenden Sie dafür folgendes Muster:
127.0.0.1 localhost 127.0.1.1 <YOUR_FQDN> <YOUR_HOSTNAME>
Beispiel für den FQDN web-01.example.com und den Hostnamen web-01:
127.0.0.1 localhost 127.0.1.1 web-01.example.com web-01
Vermeiden Sie öffentliche IP-Adressen in /etc/hosts, sofern sie nicht ausdrücklich erforderlich sind. Ändert sich die IP-Adresse (in Cloud-Umgebungen üblich) und vergessen Sie, diese Datei zu aktualisieren, funktioniert die Namensauflösung nicht mehr.
Speichern Sie die Datei und beenden Sie den Editor (in nano: Ctrl+O, Enter, anschließend Ctrl+X).
Schritt 4: Änderungen überprüfen
Stellen Sie nun sicher, dass das System den FQDN korrekt übernommen hat.
Aktiven FQDN prüfen:
hostname -f
Erwartete Ausgabe:
web-01.example.com
Aktiven Kurznamen prüfen:
hostname -s
Erwartete Ausgabe:
web-01
Senden Sie abschließend einen Ping an den FQDN, um zu prüfen, dass er auf die in der hosts-Datei angegebene IP-Adresse aufgelöst wird:
ping -c 3 <YOUR_FQDN>
Nach diesen Schritten kann der Server seinen eigenen Netzwerknamen korrekt identifizieren und auflösen.
Cloud-init-Hinweis zur Hostname-Konfiguration auf VPS
Auf Cloud-VPS-Instanzen wie AWS, GCP und DigitalOcean kann cloud-init Hostname-Änderungen beim Neustart überschreiben. Kehrt nach einem Neustart der alte Wert zurück, prüfen Sie /etc/cloud/cloud.cfg und setzen Sie preserve_hostname: true, damit Ihr VPS den gewünschten Hostnamen und die zugehörigen Domain-Einstellungen beibehält.
Fehlerbehebung
Bleibt der Hostname nach einem Neustart nicht erhalten, prüfen Sie zunächst, ob hostnamectl status den erwarteten statischen Wert anzeigt, und kontrollieren Sie anschließend, ob cloud-init eine alte Einstellung wiederherstellt. Liefert hostname -f nicht den erwarteten FQDN, prüfen Sie den Eintrag 127.0.1.1 in /etc/hosts und stellen Sie sicher, dass der Kurzname nach dem FQDN steht. Melden Dienste weiterhin einen falschen Namen, kontrollieren Sie, ob die Server-Domain, die Reihenfolge der Namensauflösung in /etc/nsswitch.conf und alle Metadaten des Providers zur beabsichtigten Konfiguration passen.
Zurücksetzen (Rollback)
Wenn Sie die Namen falsch konfiguriert haben und den Server in den Standardzustand zurückversetzen möchten:
Kurznamen zurücksetzen:
sudo hostnamectl set-hostname localhost
Stellen Sie die Datei /etc/hosts wieder her, indem Sie Ihre angepasste IP-Zeile entfernen. Der lokale Loopback-Bereich sollte so aussehen:
sudo nano /etc/hosts
127.0.0.1 localhost 127.0.1.1 localhost
Fazit
Sie haben erfolgreich einen dauerhaften Hostnamen festgelegt und die lokale Netzwerkkonfiguration so angepasst, dass ein korrekter FQDN bereitsteht. Damit schaffen Sie die grundlegende Identitätsebene für Ihre Webdienste, Mailkonfigurationen und Orchestrierungswerkzeuge für die Fernverwaltung.
Dokumentversion: 1.0
Zuletzt aktualisiert: April 2026
Verantwortlich: Team für technische Dokumentation