Zum Hauptinhalt springen
Zurück zur Kategorie

Server-Hostname und DNS-Konfiguration: Schritt-für-Schritt

Hostname mit hostnamectl setzen, /etc/hosts und /etc/resolv.conf konfigurieren, FQDN einrichten, PTR-Eintrag-Bedeutung und Tests mit dig/nslookup.

Lesezeit: 10 min Serververwaltung
hostnamednsfqdnhostnamectlresolv.confptr-eintraglinux

Inhaltsverzeichnis

Server-Hostname und DNS-Konfiguration: Schritt-für-Schritt

Der Hostname und die DNS-Konfiguration Ihres Servers bilden die Grundlage der Netzwerkkommunikation. Ein falsch konfigurierter Hostname kann zu E-Mail-Zustellungsproblemen, Verwirrung in Log-Einträgen und Fehlfunktionen einiger Anwendungen führen. Diese Anleitung behandelt Hostname-Einrichtung, DNS-Konfiguration und Verifizierungsschritte.

Was ist ein Hostname?

Ein Hostname ist der Name, der Ihren Server im Netzwerk identifiziert. Es gibt zwei Typen:

  • Kurzer Hostname: Nur der Maschinenname (z.B. webserver01)
  • FQDN (Fully Qualified Domain Name): Vollständiger Domainname (z.B. webserver01.rexe.tr)

Der FQDN kombiniert den Hostnamen mit dem Domainnamen und identifiziert Ihren Server eindeutig im Internet.

Verwenden Sie auf Produktionsservern immer FQDN. Dies ist für Mail-Server, SSL-Zertifikate und Log-Management entscheidend.

Aktuellen Hostname anzeigen

hljs bash
# Kurzer Hostname
hostname

# FQDN
hostname -f

# Alle Hostname-Informationen
hostnamectl

Hostname mit hostnamectl setzen

hostnamectl ist das moderne Tool zur Hostname-Verwaltung auf systemd-basierten Systemen.

hljs bash
# Hostname setzen
sudo hostnamectl set-hostname webserver01

# Hostname mit FQDN setzen
sudo hostnamectl set-hostname webserver01.rexe.tr

# Änderung verifizieren
hostnamectl

# Änderung durch neue Shell anwenden
exec bash

Hostname-Typen

hljs bash
# Statischer Hostname (dauerhaft, in /etc/hostname geschrieben)
sudo hostnamectl set-hostname webserver01 --static

# Temporärer Hostname (wird beim Neustart zurückgesetzt)
sudo hostnamectl set-hostname webserver01 --transient

# Schöner Hostname (für Anzeigezwecke)
sudo hostnamectl set-hostname "Web Server 01" --pretty

Die /etc/hostname Datei

Der Hostname wird dauerhaft in /etc/hostname gespeichert:

hljs bash
# Datei anzeigen
cat /etc/hostname

# Manuell bearbeiten
sudo nano /etc/hostname
webserver01

Schreiben Sie in /etc/hostname nur den kurzen Hostnamen, nicht den FQDN. Die FQDN-Konfiguration erfolgt in /etc/hosts.

/etc/hosts Konfiguration

Die /etc/hosts-Datei ist eine lokale Namensauflösungstabelle, die vor DNS-Abfragen geprüft wird.

hljs bash
# Datei anzeigen
cat /etc/hosts

# Bearbeiten
sudo nano /etc/hosts

Korrekte /etc/hosts Konfiguration

127.0.0.1       localhost
127.0.1.1       webserver01.rexe.tr webserver01

# Echte IP-Adresse des Servers
203.0.113.100   webserver01.rexe.tr webserver01

# IPv6
::1             localhost ip6-localhost ip6-loopback
ff02::1         ip6-allnodes
ff02::2         ip6-allrouters

Die Zeile 127.0.1.1 wird auf Ubuntu/Debian-Systemen für FQDN verwendet. Auf CentOS/RHEL-Systemen verwenden Sie die echte IP-Adresse.

/etc/hosts Anwendungsfälle

hljs bash
# Lokale Entwicklungsumgebung
192.168.1.10    db.local database
192.168.1.20    cache.local redis

# Bestimmte Domain blockieren
0.0.0.0         ads.example.com

# Alias für schnellen Zugriff
10.0.0.5        prod-db production-database

/etc/resolv.conf DNS-Konfiguration

/etc/resolv.conf definiert die DNS-Server des Systems.

hljs bash
# Aktuelle DNS-Konfiguration anzeigen
cat /etc/resolv.conf

Beispiel resolv.conf

# DNS-Server
nameserver 8.8.8.8
nameserver 8.8.4.4
nameserver 1.1.1.1

# Suchdomäne (für Kurznamen)
search rexe.tr

# Domain
domain rexe.tr

# Maximale DNS-Wiederholungsanzahl
options attempts:3
# DNS-Timeout (Sekunden)
options timeout:2

DNS-Verwaltung mit systemd-resolved

Auf Ubuntu 18.04+ und modernen Debian-Systemen wird DNS von systemd-resolved verwaltet:

hljs bash
# DNS-Status anzeigen
resolvectl status

# DNS für eine bestimmte Domain abfragen
resolvectl query rexe.tr

# DNS-Cache leeren
resolvectl flush-caches
hljs bash
# Dauerhafte DNS-Einstellung mit systemd-resolved
sudo nano /etc/systemd/resolved.conf
hljs ini
[Resolve]
DNS=8.8.8.8 8.8.4.4
FallbackDNS=1.1.1.1
Domains=rexe.tr
DNSSEC=no
DNSOverTLS=no
hljs bash
# Dienst neu starten
sudo systemctl restart systemd-resolved

FQDN einrichten

Folgen Sie diesen Schritten für eine korrekte FQDN-Einrichtung:

hljs bash
# 1. Hostname setzen
sudo hostnamectl set-hostname webserver01

# 2. /etc/hosts bearbeiten
sudo nano /etc/hosts
127.0.0.1       localhost
127.0.1.1       webserver01.rexe.tr webserver01
203.0.113.100   webserver01.rexe.tr webserver01
hljs bash
# 3. FQDN verifizieren
hostname -f
# Ausgabe: webserver01.rexe.tr

# 4. Kurzen Hostnamen verifizieren
hostname -s
# Ausgabe: webserver01

PTR-Eintrag (Reverse DNS) Bedeutung

Ein PTR-Eintrag ist ein Reverse-DNS-Eintrag, der eine IP-Adresse in einen Hostnamen auflöst.

Warum PTR-Einträge wichtig sind

  • E-Mail-Zustellung: Spam-Filter lehnen E-Mails von IPs ohne PTR-Einträge ab
  • Sicherheit: Netzwerksicherheitstools verifizieren PTR-Einträge
  • Log-Analyse: Hostnamen statt IPs zu sehen erleichtert das Lesen von Logs
  • Einige Dienste: FTP, IRC und ähnliche Dienste können PTR-Einträge erfordern

PTR-Eintrag einrichten

PTR-Einträge werden vom ISP oder Hosting-Anbieter gesetzt, dem Ihre IP-Adresse gehört. Sie können Ihren PTR-Eintrag über das REXE-Kundenpanel verwalten.

hljs bash
# Aktuellen PTR-Eintrag prüfen
dig -x 203.0.113.100

# oder
nslookup 203.0.113.100

DNS-Tests mit dig

dig ist das leistungsstärkste Tool zum Testen von DNS-Abfragen.

hljs bash
# A-Eintrag abfragen
dig rexe.tr A

# MX-Eintrag abfragen
dig rexe.tr MX

# NS-Eintrag abfragen
dig rexe.tr NS

# Bestimmten DNS-Server verwenden
dig @8.8.8.8 rexe.tr A

# Kurze Ausgabe
dig +short rexe.tr A

# Reverse-DNS-Abfrage
dig -x 203.0.113.100

# DNS-Propagierung prüfen
dig +trace rexe.tr

DNS-Tests mit nslookup

hljs bash
# Grundlegende Abfrage
nslookup rexe.tr

# Mit bestimmtem DNS-Server
nslookup rexe.tr 8.8.8.8

# Reverse DNS
nslookup 203.0.113.100

# Interaktiver Modus
nslookup
> server 8.8.8.8
> set type=MX
> rexe.tr
> exit

Fehlerbehebung

Hostname-Änderung wird nicht angewendet

hljs bash
# Neue Shell starten
exec bash

# oder System neu starten
sudo reboot

# /etc/hostname prüfen
cat /etc/hostname

DNS-Auflösung funktioniert nicht

hljs bash
# DNS-Konnektivität testen
dig @8.8.8.8 google.com

# resolv.conf prüfen
cat /etc/resolv.conf

# systemd-resolved Status prüfen
systemctl status systemd-resolved

# nsswitch.conf prüfen
cat /etc/nsswitch.conf | grep hosts

Prüfen Sie bei DNS-Problemen zuerst /etc/hosts, dann /etc/resolv.conf. Die hosts-Zeile in nsswitch.conf bestimmt die Auflösungsreihenfolge.

Fazit

Korrekte Hostname- und DNS-Konfiguration ist einer der Grundpfeiler der Serververwaltung. Die richtige FQDN-Einrichtung auf Ihren REXE-Servern ist für E-Mail-Zustellung, SSL-Zertifikate und Anwendungskonfigurationen entscheidend. Sie können das REXE-Kundenpanel verwenden, um sicherzustellen, dass Ihr PTR-Eintrag korrekt konfiguriert ist.