Document Beget DNS setup step by step

This commit is contained in:
AlexChard
2026-08-29 23:10:29 +04:00
parent 2b373661d6
commit 4caf18fb9b
+74 -6
View File
@@ -15,26 +15,94 @@
## Быстрая установка
Сначала создайте две A-записи, указывающие на IP нового VPS:
### Шаг 1. Придумайте два поддомена
Нужны не два новых платных домена, а два бесплатных поддомена внутри уже
приобретённого домена:
- `dns` — адрес, который затем указывается в роутере как DoH;
- `node` — HTTPS-адрес панели управления AdGuard Home.
Например, для домена `chardwork.ru` получатся:
```text
dns.example.com -> VPS_IP
node.example.com -> VPS_IP
https://dns.chardwork.ru/dns-query — адрес DNS-over-HTTPS
https://node.chardwork.ru — панель управления
```
Затем выполните одну команду:
Имена можно выбрать другие, например `resolver` и `control`. Они должны быть
разными.
> `dns.chardwork.ru` и `node.chardwork.ru` уже используются действующим
> сервером. Для проверки установщика на другом VPS используйте, например,
> `dns2.chardwork.ru` и `node2.chardwork.ru`. Одно имя нельзя одновременно
> направить на два разных VPS обычной A-записью.
### Шаг 2. Создайте записи в Beget
1. Узнайте публичный IPv4 нового VPS в панели хостинга или командой
`curl -4 https://api.ipify.org` на самом VPS.
2. Откройте Beget → **Домены и поддомены** → выберите нужный домен →
**DNS / Управление DNS-записями**.
3. Добавьте две записи типа `A`. Для тестового VPS с адресом `203.0.113.10`
заполнение выглядит так:
| Тип | Имя/хост в форме Beget | Значение/IP | TTL |
|---|---|---|---|
| `A` | `dns2` | `203.0.113.10` | `300` или по умолчанию |
| `A` | `node2` | `203.0.113.10` | `300` или по умолчанию |
В поле имени обычно вводится только `dns2` или `node2`: Beget сам добавляет
`.chardwork.ru`. Если интерфейс показывает поле полного имени, укажите
`dns2.chardwork.ru` и `node2.chardwork.ru`.
Не создавайте `CNAME` и не добавляйте `http://`, `https://`, порт или путь
`/dns-query` в DNS-запись. Там должны быть только имя и IPv4.
Проверьте записи с компьютера:
```powershell
Resolve-DnsName dns2.chardwork.ru -Type A
Resolve-DnsName node2.chardwork.ru -Type A
```
Или с Linux/VPS:
```bash
getent ahostsv4 dns2.chardwork.ru
getent ahostsv4 node2.chardwork.ru
```
Оба имени должны вернуть IP нового VPS. Распространение записей обычно занимает
несколько минут, иногда дольше из-за DNS-кэша.
### Шаг 3. Запустите установщик
Подключитесь к новому VPS по SSH и выполните:
```bash
curl -fsSL https://git.chardb.ru/VPS/adguard-doh-installer/raw/branch/main/install.sh | sudo bash
```
Скрипт спросит оба домена и пароль администратора. Пароль не попадает в историю shell. Если оставить его пустым, будет создан случайный пароль и показан один раз.
На вопросы скрипта для приведённого примера ответьте:
```text
DoH domain: dns2.chardwork.ru
Admin domain: node2.chardwork.ru
```
Затем задайте пароль администратора. Пароль не попадает в историю shell. Если
оставить его пустым, будет создан случайный пароль и показан один раз.
Скрипт не входит в Beget и не создаёт DNS-записи сам: он только проверяет, что
вы заранее направили оба имени на этот VPS. Это сделано намеренно, чтобы
установщик не требовал API-ключ от аккаунта регистратора.
Неинтерактивный запуск:
```bash
curl -fsSL https://git.chardb.ru/VPS/adguard-doh-installer/raw/branch/main/install.sh | \
sudo bash -s -- --doh-domain dns.example.com --admin-domain node.example.com --email admin@example.com
sudo bash -s -- --doh-domain dns2.chardwork.ru --admin-domain node2.chardwork.ru
```
## Безопасное поведение