WireGuard и AmneziaWG в 3X-UI

Поддержка WireGuard и AmneziaWG

3X-UI официально поддерживает протоколы WireGuard и AmneziaWG через ядро Xray-core. Это один из поддерживаемых протоколов наравне с VLESS, VMess, Trojan, Shadowsocks и Hysteria2. Таким образом, AmneziaWG 3.x можно развернуть и управлять им через панель 3X-UI — создавать входящие подключения (inbound), добавлять пользователей и генерировать конфигурационные файлы.

Важное отличие от AmneziaVPN-приложения:

  • Через 3X-UI вы разворачиваете WireGuard/AmneziaWG как inbound-протокол через Xray-ядро — то есть Xray принимает соединения по WireGuard.
  • Через приложение AmneziaVPN вы разворачиваете отдельный Docker-контейнер с ядром amnezia-wg — это другая реализация, не связанная с Xray.

Оба способа работают независимо и могут сосуществовать на одном сервере на разных портах.

Создание WireGuard Inbound в 3X-UI

Шаг 1: Зайти в панель и открыть Inbounds

  1. Войдите в веб-панель 3X-UI (обычно http://IP:2053/).
  2. В левом меню выберите Inbounds → Add Inbound.

Шаг 2: Выбрать протокол WireGuard

В поле Protocol выберите WireGuard.

Панель автоматически сгенерирует:

  • Private Key сервера (приватный ключ)
  • Public Key сервера (публичный ключ)
  • Пустой список клиентов (Peers)

Шаг 3: Настроить параметры inbound

Поле Описание Пример
Listen IP IP-адрес для прослушивания 0.0.0.0 (все интерфейсы)
Port UDP-порт сервера WireGuard 51820
MTU Размер пакета (рекомендуется уменьшить для надёжности) 1420
IP Ranges Подсеть для клиентов (адреса тоннеля) 10.0.0.1/24

Шаг 4: Добавить клиента (Peer)

Нажмите + Add Client, укажите:

  • Name — имя клиента (метка, не отправляется)
  • Public Key — публичный ключ клиента (генерируется на клиентском устройстве или автоматически панелью)
  • Allowed IPs — IP-адрес, который получит клиент в тоннеле (например, 10.0.0.2/32)
  • Traffic limit и Expiry date — опциональные ограничения

Шаг 5: Сохранить и скачать конфиг

После сохранения Inbound:

  1. Нажмите кнопку QR Code или Config рядом с клиентом.
  2. Панель сгенерирует готовый wg0.conf файл для клиента.
  3. Импортируйте его в WireGuard-клиент на устройстве пользователя.

Настройка AmneziaWG (обфускация) в 3X-UI

AmneziaWG отличается от стандартного WireGuard дополнительными параметрами обфускации, которые скрывают трафик от DPI-систем. В 3X-UI эти параметры настраиваются в блоке Advanced Settings при создании WireGuard inbound.

Параметры обфускации AmneziaWG

Параметр Описание
Jc (Junk packet count) Количество «мусорных» пакетов перед рукопожатием (рекомендуется 3–7)
Jmin Минимальный размер мусорного пакета (рекомендуется 10–50)
Jmax Максимальный размер мусорного пакета (рекомендуется 50–1000)
S1 Смещение для инициирующего пакета
S2 Смещение для ответного пакета
H1, H2, H3, H4 Замена стандартных типов сообщений WireGuard (1, 2, 3, 4) произвольными 32-битными значениями

Важно: параметры обфускации (Jc, Jmin, Jmax, S1, S2, H1–H4) должны точно совпадать между сервером и клиентом. Если они отличаются — соединение не установится.

Пример конфигурации AmneziaWG 3.1

Параметры AWG версии 3.1 включают дополнительные поля RandomTrailers и DisableCookies:

[Interface]
PrivateKey = <приватный ключ клиента>
Address = 10.0.0.2/32
DNS = 1.1.1.1

Jc = 5
Jmin = 10
Jmax = 1000
S1 = 0
S2 = 0
H1 = 1
H2 = 2
H3 = 3
H4 = 4

[Peer]
PublicKey = <публичный ключ сервера>
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = <IP-сервера>:51820
PersistentKeepalive = 25

Совместное использование с другими протоколами

3X-UI позволяет запускать WireGuard/AmneziaWG одновременно с другими протоколами (VLESS Reality, Trojan, Shadowsocks) на одном сервере. Каждый протокол работает на своём порту. Например:

  • Порт 443 — VLESS + REALITY (TCP)
  • Порт 51820 — WireGuard/AmneziaWG (UDP)
  • Порт 8443 — Hysteria2 (UDP)

Совместимые клиенты для AmneziaWG

Конфиги WireGuard из 3X-UI совместимы со следующими клиентами:

Платформа Клиент
Windows AmneziaVPN (поддерживает AWG-параметры), WireGuard for Windows
macOS AmneziaVPN, WireGuard for macOS
Android AmneziaVPN for Android
iOS AmneziaVPN for iOS
Linux amnezia-wg (форк wg-quick), wg-quick

Стандартный клиент WireGuard не поддерживает параметры обфускации AWG (Jc, Jmin и т.д.). Для AWG-конфигов используйте AmneziaVPN или amnezia-wg.

Открытие порта в firewall

После создания WireGuard inbound в 3X-UI, убедитесь, что UDP-порт открыт:

<h1 id="ufw">UFW <a href="#ufw" class="header-anchor" aria-hidden="true">#</a></h1>
sudo ufw allow 51820/udp

<h1 id="iptables">iptables <a href="#iptables" class="header-anchor" aria-hidden="true">#</a></h1>
sudo iptables -A INPUT -p udp --dport 51820 -j ACCEPT

Часто задаваемые вопросы

Q: Чем WireGuard в 3X-UI отличается от AmneziaVPN-контейнера?

A: В 3X-UI WireGuard/AWG работает как inbound внутри Xray-ядра. В AmneziaVPN — это отдельный Docker-контейнер с ядром amnezia-wg. Оба способа поднимают AWG, но через разные реализации. 3X-UI удобнее для управления пользователями, лимитами и статистикой.

Q: Могу ли я установить 3X-UI и AmneziaVPN-контейнер на одном сервере?

A: Да, они не конфликтуют, если используют разные UDP-порты. Например, 3X-UI на порту 51820, AmneziaVPN на порту 51821.

Q: WireGuard в 3X-UI поддерживает параметры обфускации AWG 3.1?

A: Да, начиная с Xray-core v25 поддержка AmneziaWG встроена. Параметры Jc, Jmin, Jmax, S1, S2, H1–H4, а также параметры AWG 3.1 (RandomTrailers, DisableCookies) настраиваются в Advanced Settings inbound.

Q: Нужно ли устанавливать ядро amnezia-wg на сервер отдельно?

A: Нет. 3X-UI использует встроенный Xray-core, который содержит реализацию AWG. Дополнительная установка ядра не требуется.