Jak skonfigurować hostname i FQDN serwera w Linux | INTROSERV
EUR
european

EUR

usa

USD

Poland Pl
Ex. VAT Ex. VAT 0%

Jak poprawnie skonfigurować hostname i FQDN serwera

Poziom: Początkujący
Szacowany czas: ok. 15 minut
Cel: Skonfigurowanie trwałej nazwy hosta serwera oraz ustawienie w pełni kwalifikowanej nazwy domenowej (FQDN) w celu prawidłowej identyfikacji systemu i lokalnego rozwiązywania nazw DNS.

Wprowadzenie

Nazwa hosta (hostname) to etykieta przypisana urządzeniu w sieci, natomiast w pełni kwalifikowana nazwa domenowa (FQDN, Fully Qualified Domain Name) zawiera zarówno nazwę hosta, jak i domenę, do której należy (np. web-server-01.example.com). Prawidłowa konfiguracja jest kluczowa dla usług takich jak serwery pocztowe (Postfix, Exim), koordynacji ruchu w sieci wewnętrznej oraz identyfikacji serwerów w znaku zachęty terminala w dużej flocie maszyn.

W tym samouczku zdefiniujesz trwałą nazwę hosta za pomocą narzędzi systemd i skonfigurujesz lokalne mapowanie FQDN.

Uwaga dotycząca typów FQDN:

  • Publiczny FQDN: ustawiany w publicznym DNS (np. Cloudflare, Route53). To dzięki niemu inni znajdują Twój serwer.
  • Lokalny FQDN: nazwa, pod którą serwer identyfikuje się i rozwiązuje samego siebie wewnętrznie. Najlepiej, aby oba były zgodne, ale to konfiguracja lokalna zapewnia stabilność systemu.

Wymagania wstępne

Zanim zaczniesz, upewnij się, że masz:

  • System operacyjny: Ubuntu 20.04/22.04/24.04 LTS, Debian 11/12 lub RHEL/CentOS/AlmaLinux 8/9.
  • Dostęp: użytkownika z uprawnieniami sudo.
  • Wymagana wiedza: podstawowa obsługa terminala Linux i edytorów tekstu (takich jak nano lub vim).

Krok 1: Sprawdź bieżącą konfigurację

Najpierw sprawdź, jaką nazwę serwer aktualnie uważa za swoją.

Uruchom polecenie wyświetlające status:

hostnamectl status

Oczekiwany wynik (lub podobny):

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

Następnie sprawdź, czy FQDN jest poprawnie rozwiązywany:

hostname -f

Jeśli system zwróci pusty wiersz, dokładnie localhost lub błąd informujący, że nie można rozwiązać nazwy hosta, FQDN nie jest poprawnie skonfigurowany.

Krok 2: Ustaw nową nazwę hosta (konfiguracja nazwy hosta na serwerze Linux)

W większości dystrybucji hostnamectl jest właściwym sposobem ustawienia nazwy hosta na serwerach i trwałego zachowania zmiany. Ta część poradnika opisuje praktyczną konfigurację nazwy hosta w systemie Linux dla typowych wdrożeń, w tym standardowe postępowanie w Ubuntu i Debianie bez ręcznej edycji pliku /etc/hostname.

Uruchom poniższe polecenie, zastępując <YOUR_HOSTNAME> wybraną krótką nazwą (np. web-01):

sudo hostnamectl set-hostname <YOUR_HOSTNAME>

Info

Chociaż Linux technicznie dopuszcza kropki w nazwie hosta, zaleca się używanie wyłącznie małych liter, cyfr i myślników. Kropki w krótkiej nazwie (np. web.01) mogą powodować pomyłki z FQDN i zazwyczaj się ich unika.

Polecenie aktualizuje system natychmiast. Możesz zauważyć, że bieżący znak zachęty terminala (zwykle user@old-hostname:~$) nie zmienił się od razu. Wyloguj się i zaloguj ponownie lub otwórz nową sesję powłoki, wpisując bash, aby zobaczyć nową nazwę w znaku zachęty.

Krok 3: Zaktualizuj /etc/hosts na potrzeby rozwiązywania FQDN

Ten krok łączy lokalną nazwę hosta z FQDN i domeną, dzięki czemu rozwiązywanie nazw działa przewidywalnie. W praktyce to ta część konfiguracji nazwy hosta serwera definiuje lokalną tożsamość sieciową maszyny i uzupełnia podstawową konfigurację tożsamości sieciowej w systemie Linux, z której korzysta wiele usług.

Mapowanie FQDN na adres pętli zwrotnej 127.0.1.1 to najbezpieczniejszy wzorzec w środowisku produkcyjnym (szczególnie w Debianie/Ubuntu). Dzięki temu nazwa jest rozwiązywana nawet wtedy, gdy sieć nie działa lub zmienia się Twój publiczny adres IP.

Otwórz plik hosts:

sudo nano /etc/hosts

Zobaczysz zawartość podobną do poniższej:

127.0.0.1 localhost 127.0.1.1 old-hostname

Nie usuwaj wiersza 127.0.0.1 localhost. Zamiast tego zmodyfikuj wiersz 127.0.1.1 (lub dodaj go), aby zawierał Twój FQDN, a po nim krótką nazwę hosta.

Zaktualizuj plik według tego wzorca:

127.0.0.1 localhost 127.0.1.1 <YOUR_FQDN> <YOUR_HOSTNAME>

Przykład dla FQDN web-01.example.com i nazwy hosta web-01:

127.0.0.1 localhost 127.0.1.1 web-01.example.com web-01

Warning

Unikaj publicznych adresów IP w /etc/hosts, o ile nie jest to bezwzględnie konieczne. Jeśli adres IP się zmieni (co jest częste w środowiskach chmurowych), a zapomnisz zaktualizować ten plik, rozwiązywanie nazwy przestanie działać.

Zapisz plik i zamknij edytor (w nano naciśnij Ctrl+O, Enter, a następnie Ctrl+X).

Krok 4: Zweryfikuj zmiany

Teraz upewnij się, że system poprawnie rejestruje FQDN.

Sprawdź aktywny FQDN:

hostname -f

Oczekiwany wynik:

web-01.example.com

Sprawdź aktywną krótką nazwę hosta:

hostname -s

Oczekiwany wynik:

web-01

Na koniec wykonaj ping na FQDN, aby upewnić się, że jest poprawnie rozwiązywany na adres IP wskazany w pliku hosts:

ping -c 3 <YOUR_FQDN>

Po wykonaniu tych kroków serwer potrafi prawidłowo identyfikować i rozwiązywać własną nazwę sieciową.

Uwaga dotycząca cloud-init przy konfiguracji nazwy hosta na VPS

Na instancjach VPS w chmurze, takich jak AWS, GCP i DigitalOcean, cloud-init może nadpisywać zmiany nazwy hosta podczas restartu. Jeśli po ponownym uruchomieniu wraca poprzednia wartość, sprawdź plik /etc/cloud/cloud.cfg i ustaw preserve_hostname: true, aby VPS zachował zamierzoną nazwę hosta i powiązane ustawienia domeny.

Rozwiązywanie problemów

Jeśli nazwa hosta nie utrzymuje się po restarcie, najpierw sprawdź, czy hostnamectl status pokazuje oczekiwaną wartość statyczną, a następnie zweryfikuj, czy cloud-init nie przywraca starego ustawienia. Jeśli hostname -f nie zwraca oczekiwanego FQDN, sprawdź wpis 127.0.1.1 w /etc/hosts i upewnij się, że krótka nazwa hosta występuje po FQDN. Jeśli usługi nadal zgłaszają błędną nazwę, sprawdź, czy domena serwera, kolejność rozwiązywania nazw w /etc/nsswitch.conf oraz metadane dostawcy są zgodne z zamierzoną konfiguracją.

Przywracanie ustawień (rollback)

Jeśli nazwy zostały skonfigurowane błędnie i chcesz przywrócić serwer do stanu domyślnego:

Zresetuj krótką nazwę hosta:

sudo hostnamectl set-hostname localhost

Przywróć plik /etc/hosts, usuwając dodany wiersz z adresem IP. Upewnij się, że lokalna pętla zwrotna wygląda następująco:

sudo nano /etc/hosts

127.0.0.1 localhost 127.0.1.1 localhost

Podsumowanie

Udało Ci się zdefiniować trwałą nazwę hosta i skonfigurować lokalną sieć tak, aby zapewnić poprawny FQDN. Prawidłowe wykonanie tych czynności tworzy podstawową warstwę tożsamości niezbędną dla usług WWW, konfiguracji poczty i narzędzi do zdalnej orkiestracji.

Wersja dokumentu: 1.0
Ostatnia aktualizacja: kwiecień 2026
Właściciel: Zespół dokumentacji technicznej

VAT

  • Other

    Ex. VAT

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    22%
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • kingdom
  • germany
  • Español
  • French
  • Hrvatska
  • Italiano
  • Poland
  • Slovenski
  • ukraine
  • Türkçe
  • Русский
  • Other
  • Austria
  • Belgium
  • Bulgaria
  • Croatia
  • Cyprus
  • Czech Republic
  • Denmark
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Hungary
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Netherlands
  • Poland
  • Portugal
  • Romania
  • Slovakia
  • Slovenia
  • Spain
  • Sweden
  • USA