Files
homelab-docs/docs/vps/vpn-vps-amneziawg.md

104 lines
7.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# VPN-сервер (VPS, AmneziaWG)
Отдельный VPS в другой стране для обхода блокировок. Развёрнут протокол **AmneziaWG** (маскировка VPN-трафика под обычный UDP, устойчивость к DPI). Трафик с домашнего контура при необходимости можно маршрутизировать через этот сервер.
---
## Доступ и логины
- **SSH:** `ssh root@185.103.253.99` (доступ по SSH-ключу). IP: 185.103.253.99, ОС Ubuntu, ядро 6.8.
- **Веб-интерфейсов на сервере нет.** Управление VPN — через приложение AmneziaVPN на клиенте (добавление сервера по IP, установка AmneziaWG, гостевые конфиги).
**Хостинг (First Byte):**
- Тариф: KVM-SSD-1-FRA
- Дата открытия: 2026-01-24
- Доменное имя: vm3839421.firstbyte.club
- Регион: Германия, Франкфурт-на-Майне
---
## Что развёрнуто
- **Docker** — один контейнер: **amnezia-awg** (образ `amnezia-awg`).
- **AmneziaWG** слушает порт **33118/UDP** на всех интерфейсах.
- Контейнер запущен с `--restart=always`, примонтирован `/lib/modules` (для ядерного модуля WireGuard). Сеть — bridge, проброс порта 33118/udp на хост.
- Дополнительно: **vps-metrics** (systemd-сервис) — API метрик для виджета Homepage.
Каталог образа/скриптов на хосте: `/opt/amnezia/amnezia-awg/` (там лежит Dockerfile; сам сервер AmneziaWG настраивается через приложение AmneziaVPN при установке протокола на этот VPS). Копия Dockerfile и команды для полного развёртывания на новом VPS — в [перенос конфигурации](vpn-migrate-config.md#конфиги-для-полного-восстановления-сервера).
---
## Протокол AmneziaWG
- Форк WireGuard с обфускацией трафика: динамические заголовки, рандомизация размеров пакетов, маскировка под другие UDP-протоколы (QUIC, DNS и т.д.). Это затрудняет определение и блокировку VPN системами DPI.
- Криптография и производительность — как у WireGuard; совместимость с обычным WireGuard ограничена (нужен именно клиент AmneziaWG/AmneziaVPN).
Подробнее: [документация Amnezia](https://docs.amnezia.org/ru/documentation/amnezia-wg), [AmneziaWG 2.0 на self-hosted](https://docs.amnezia.org/ru/documentation/instructions/new-amneziawg-selfhosted).
---
## Как подключиться к VPN
1. Установи клиент **AmneziaVPN** на устройство (Windows, macOS, Linux, Android, iOS): [amnezia.org/downloads](https://amnezia.org/ru/downloads).
2. Добавь сервер: в приложении создай новое подключение и укажи **185.103.253.99** (логин/пароль или SSH-ключ — как настраивал при первом развёртывании). Либо вставь ключ подключения в формате `vpn://...`, если он был сгенерирован и сохранён.
3. В настройках этого сервера установи/выбери протокол **AmneziaWG** (при первом развёртывании он ставится через приложение на VPS).
4. Для доступа с других устройств без полного доступа к серверу: в AmneziaVPN создай **гостевое** подключение по AmneziaWG и передай сгенерированный ключ или конфиг (.conf) на нужное устройство.
Конфигурации и ключи хранятся в приложении и (при экспорте) в выданных тебе файлах; на VPS в открытом виде в доку не дублируются.
---
## Полезные команды на VPS
```bash
# Статус контейнера
docker ps -a | grep amnezia
# Логи (если включены)
docker logs amnezia-awg
# Интерфейс WireGuard внутри контейнера (публичные ключи, пиры, handshake)
docker exec amnezia-awg wg show
# Перезапуск VPN-контейнера
docker restart amnezia-awg
```
Порт на хосте:
```bash
ss -ulnp | grep 33118
```
---
## Связь с домашним контуром
- Домашний сервер (Proxmox): 192.168.1.150, внешний IP 185.35.193.144.
- При необходимости маршрутизировать трафик (например, YouTube/Invidious) через этот VPN настраивается отдельно: маршруты и/или policy-based routing на роутере или на конкретных хостах/контейнерах.
В документе по [архитектуре](../architecture/architecture.md) этот VPS упоминается как отдельный узел; детали доступа и протокола — в этой статье.
---
## Второй VPS (USA)
Есть второй сервер в США; от него возможен отказ в пользу одного Germany или нового хостинга.
- **IP:** 147.45.124.117
- **Сеть:** Netmask 255.255.254.0, Gateway 147.45.124.1
- **SSH:** `ssh root@147.45.124.117`
- **AmneziaWG:** контейнер `amnezia-awg2`, порт **37135/UDP**.
Параметры обфускации на обоих серверах (Германия и США) **одинаковые** — конфиг можно полностью перенести на новый сервер при переезде. На роутере создаётся второе VPN-подключение; переключение между Germany и USA — выбор нужного профиля.
**Подробно:** [Перенос конфигурации AmneziaWG между серверами](vpn-migrate-config.md).
---
## MTProto и сайт-заглушка (план)
На этом же VPS можно развернуть MTProto proxy с маскировкой под обычный HTTPS-сайт (один порт 443): при заходе на домен — статический сайт, при подключении Telegram с секретом — прокси. Домен: katykhin.store. VPN (AmneziaWG) при этом остаётся на порту 33118/UDP без изменений.
**План развёртывания:** [MTProto + сайт на VPS Германия (план)](vpn-vps-mtproto-site-plan.md).