Як правильно налаштувати ім’я хоста сервера та FQDN
Рівень: Початковий
Орієнтовний час: ≈ 15 хвилин
Мета: Налаштувати постійне ім’я хоста сервера та визначити повністю кваліфіковане доменне ім’я (FQDN) для коректної ідентифікації системи й локального DNS-резолву.
Вступ
Hostname – це мітка, призначена пристрою в мережі, тоді як Fully Qualified Domain Name (FQDN) містить і hostname, і домен, до якого він належить (наприклад, web-server-01.example.com). Правильне налаштування критично важливе для сервісів на кшталт поштових серверів (Postfix, Exim), внутрішньої координації в мережі та ідентифікації ваших серверів у підказці термінала у великому парку.
У цьому посібнику ви визначите постійний hostname за допомогою інструментів systemd і налаштуєте локальне перевизначення FQDN.
Щодо типів FQDN:
- Public FQDN: встановлюється через публічний DNS (наприклад, Cloudflare, Route53). Так світ знаходить ваш сервер.
- Local FQDN: як сервер ідентифікує себе та резолвить власне ім’я всередині. В ідеалі вони мають збігатися, але саме локальна конфігурація забезпечує стабільність системи.
Передумови
Перед початком переконайтеся, що у вас є:
- Операційна система: Ubuntu 20.04/22.04/24.04 LTS, Debian 11/12 або RHEL/CentOS/AlmaLinux 8/9.
- Доступ: користувач із правами
sudo. - Необхідні знання: базове користування Linux-терміналом і текстовими редакторами (наприклад,
nanoабоvim).
Крок 1: Перевірте поточну конфігурацію
Спочатку перевірте, яке ім’я наразі вважає своїм ваш сервер.
Виконайте команду статусу:
hostnamectl status
Очікуваний вивід (або подібний):
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
Далі перевірте, чи правильно резолвиться FQDN:
hostname -f
Якщо система повертає порожній рядок, рівно localhost або помилку про неможливість резолву хоста – ваш FQDN налаштовано неправильно.
Крок 2: Встановіть новий Hostname для конфігурації Hostname у Linux
Для більшості дистрибутивів hostnamectl — це правильний спосіб задати Hostname на сервері та зберегти зміну після перезавантаження. У цьому кроці показано практичну конфігурацію Hostname у Linux, включно з типовими сценаріями, коли потрібно налаштувати Hostname в Ubuntu або налаштувати Hostname в Debian без ручного редагування /etc/hostname.
Виконайте команду нижче, замінивши <YOUR_HOSTNAME> на бажане коротке ім’я (наприклад, web-01):
sudo hostnamectl set-hostname <YOUR_HOSTNAME>
Хоча Linux технічно дозволяє крапки в hostname, рекомендується використовувати лише малі літери, цифри та дефіси. Крапки в короткому hostname (наприклад, web.01) можуть спричинити плутанину з FQDN, тому їх зазвичай уникають.
Ця команда застосовує зміни одразу. Ви можете помітити, що поточна підказка термінала (зазвичай user@old-hostname:~$) не змінилася миттєво. Вийдіть і увійдіть знову або відкрийте нову сесію bash, набравши bash, щоб побачити оновлену назву.
Крок 3: Оновіть /etc/hosts для резолву FQDN
На цьому кроці локальний Hostname пов’язується з FQDN і Domain Name, щоб hostname resolution працював передбачувано. Саме тут завершується базове налаштування імені хоста сервера та формується локальна мережева ідентичність системи, потрібна для коректної конфігурації мережевої ідентичності Linux.
Найбезпечніший шаблон для продакшн (особливо на Debian/Ubuntu) – прив’язати FQDN до loopback-адреси 127.0.1.1. Це гарантує резолв імені навіть якщо мережа недоступна або змінюється публічна IP-адреса.
Відкрийте файл hosts:
sudo nano /etc/hosts
Ви побачите наявний вміст, схожий на такий:
127.0.0.1 localhost 127.0.1.1 old-hostname
Не видаляйте рядок 127.0.0.1 localhost. Натомість оновіть рядок 127.0.1.1 (або додайте його), щоб вказати спочатку FQDN, а потім короткий hostname.
Оновіть файл за таким шаблоном:
127.0.0.1 localhost 127.0.1.1 <YOUR_FQDN> <YOUR_HOSTNAME>
Приклад: якщо ваш FQDN – web-01.example.com, а hostname – web-01:
127.0.0.1 localhost 127.0.1.1 web-01.example.com web-01
Уникайте використання публічних IP-адрес у /etc/hosts, якщо це не є необхідним. Якщо IP-адреса зміниться (що часто трапляється в хмарних середовищах), а ви забудете оновити цей файл, резолв імені перестане працювати.
Збережіть і закрийте файл (у nano натисніть Ctrl+O, Enter, потім Ctrl+X).
Крок 4: Перевірте зміни
Тепер переконайтеся, що система коректно реєструє FQDN.
Перевірте активний FQDN:
hostname -f
Очікуваний вивід:
web-01.example.com
Перевірте активний короткий hostname:
hostname -s
Очікуваний вивід:
web-01
Нарешті пропінгуйте FQDN, щоб переконатися, що він успішно резолвиться назад у IP-адресу, яку ви вказали у hosts-файлі:
ping -c 3 <YOUR_FQDN>
Після виконання цих кроків сервер зможе коректно ідентифікувати та резолвити власне мережеве ім’я.
Примітка про cloud-init для налаштування Hostname на VPS
На хмарних VPS, зокрема в AWS, GCP і DigitalOcean, cloud-init може перезаписувати зміни Hostname під час перезавантаження. Якщо після того, як ви змінюєте ім’я хоста в Linux, старе значення повертається, перевірте /etc/cloud/cloud.cfg і встановіть preserve_hostname: true, щоб VPS зберігав потрібний Hostname і пов’язаний Domain Name.
Усунення неполадок
Якщо Hostname не зберігається після перезавантаження, спочатку перевірте, чи hostnamectl status показує очікуване статичне значення, а потім з’ясуйте, чи cloud-init не відновлює попередній параметр. Якщо hostname -f не повертає очікуваний FQDN, перевірте запис 127.0.1.1 у /etc/hosts і переконайтеся, що після FQDN вказано короткий Hostname. Якщо сервіси все одно показують неправильне ім’я, звірте Domain Name сервера, порядок резолву в /etc/nsswitch.conf та метадані провайдера, які можуть впливати на локальне ім’я вузла.
Відкат (Rollback)
Якщо ви помилилися в налаштуваннях і потрібно повернути сервер до стану за замовчуванням:
Скиньте короткий hostname:
sudo hostnamectl set-hostname localhost
Відновіть файл /etc/hosts, видаливши ваш кастомний рядок з IP. Переконайтеся, що loopback виглядає так:
sudo nano /etc/hosts
127.0.0.1 localhost 127.0.1.1 localhost
Висновок
Ви успішно визначили постійний hostname і налаштували локальне зіставлення, щоб отримати коректний FQDN. Правильна конфігурація створює базовий рівень «ідентичності» для вебсервісів, поштових конфігурацій та інструментів віддаленої оркестрації.
Версія документа: 1.0
Останнє оновлення: Квітень 2026
Відповідальний: Команда технічної документації