−25%

на річну оплату Windows, до 31.10. До тарифів

EQVPS

Як прив'язати домен до VPS (A, AAAA і www)

Спрямовуємо домен на VPS записами A й AAAA, налаштовуємо www, перевіряємо DNS через dig і підключаємо HTTPS — плюс чому на NAT-тарифі сайт не підняти.

Домен куплено, VPS є, а браузер однаково пише «не вдається отримати доступ до сайту». Майже завжди бракує двох DNS-записів і вебсервера, який справді відповідає на потрібній адресі. Ось увесь шлях — від реєстратора до зеленого замка HTTPS.

Спершу: чи приймає тариф вебтрафік?

Відвідувачі під'єднуються до портів 80 і 443 вашого сервера. Для цього потрібен тариф зі своєю публічною IP-адресою. NAT-тарифи прокидають лише персональний SSH-порт, тому сайт на домені на них не підняти — різницю пояснює стаття виділений IP чи NAT. Невеликому сайту вистачить Nano-IP.

1. Дізнаємося адреси сервера

IPv4 та IPv6 вказані на сторінці сервера в особистому кабінеті. У прикладах використовуємо документаційні адреси:

2. Створюємо DNS-записи

Зайдіть туди, де зберігається DNS домену (зазвичай це реєстратор), і додайте:

ТипІм'яЗначенняTTL
A@203.0.113.10300
AAAA@2001:db8::10300
CNAMEwwwexample.com.300

@ означає сам домен без піддомену. Короткий TTL на кшталт 300 секунд робить помилки дешевими; коли все запрацює, його можна підняти до 3600.

Якщо IPv6 поки не потрібен, запис AAAA пропустіть — див. попередження в кроці 5.

3. Перевіряємо, що DNS відповідає

Не вірте напису «збережено» в реєстратора. Запитайте DNS напряму:

dig +short example.com A
dig +short example.com AAAA
dig +short www.example.com
dig +short example.com A @1.1.1.1

Останній рядок запитує публічний резолвер — це ближче до того, що бачать відвідувачі. Якщо повертається ваша IP-адреса, з DNS усе.

4. Змушуємо сервер відповідати

Ставимо nginx і відкриваємо порти:

apt update && apt install -y nginx
ufw allow 80/tcp
ufw allow 443/tcp

Відкрийте http://example.com — має з'явитися вітальна сторінка nginx. Тепер додамо HTTPS із безкоштовним сертифікатом:

apt install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.com

Certbot сам редагує конфіг nginx, вмикає редирект на HTTPS і подовжує сертифікат автоматично. Для справжнього застосунку за nginx знадобиться наша інструкція зі зворотного проксі з HTTPS.

5. Пастка з IPv6

На цьому спотикаються багато хто. Ви додали AAAA, а nginx слухає лише IPv4. Відвідувачі з IPv6 (а це багато мобільних мереж) спершу пробують IPv6-адресу — і отримують помилку. Перевірте, що в блоці server є обидва рядки:

listen 80;
listen [::]:80;

У стандартному конфігу nginx на Ubuntu [::] уже є, а в саморобних його часто гублять. Перевірте з машини, де є IPv6:

curl -6 -I https://example.com

Часті проблеми

Про зворотний DNS

Записи A й AAAA ведуть від імені до IP. Зворотний DNS (PTR) — у зворотний бік, і налаштовується він в особистому кабінеті, а не в реєстратора. Потрібен він лише для пошти або коли якийсь сервіс його перевіряє — подробиці в нашій інструкції з PTR.

Якщо викладаєте сайт уперше, на сторінці про сайти розібрано вибір тарифу, а в документації з мережі — які адреси отримує кожен тариф.

Часті питання

Скільки оновлюються DNS-записи?

Зазвичай хвилини. Змінений запис видно скрізь, щойно спливе старий TTL — за TTL 300 це п'ять хвилин. У зовсім нових доменів буває довше, поки реєстр публікує NS-сервери.

Чи потрібен запис AAAA?

Лише якщо вебсервер слухає IPv6. Якщо AAAA додано, а nginx слухає тільки IPv4, відвідувачі з IPv6 отримають помилку з'єднання. Або налаштуйте 'listen [::]:80' і '[::]:443', або не додавайте AAAA.

www — CNAME чи A-запис?

Підійде будь-який варіант. CNAME на основний домен зручніший: у разі зміни IP правите один запис. Головне, щоб сертифікат покривав обидва імені.

Чи можна розмістити сайт на NAT-тарифі?

Напряму ні. NAT-тариф прокидає лише ваш персональний SSH-порт, тож відвідувачі не достукаються до портів 80 і 443. Для сайту на своєму домені потрібен тариф із виділеним IP.

Зворотний DNS — це те саме?

Ні. A й AAAA зіставляють ім'я з IP, а зворотний DNS (PTR) — IP з ім'ям. PTR важливий здебільшого для поштових серверів, і налаштовується він в особистому кабінеті, а не в реєстратора.

Коментарі

Поки немає коментарів. Будьте першим.

Залишити коментар

Коментарі проходять модерацію перед публікацією.