Автор: Редакция «VPN не работает»

3x-ui и панели управления WireGuard

Да, 3X-UI поддерживает WireGuard — но это не тот WireGuard, которым управляет wg-quick. В разделе Features официального README панель перечисляет WireGuard среди входящих протоколов рядом с VLESS, VMess, Trojan и Shadowsocks. Сама 3X-UI описана там же как веб-панель управления серверами Xray-core, поэтому WireGuard живёт в ней как inbound ядра Xray, а не как служба ОС.

Коротко. По документации Xray это реализация в пользовательском пространстве: файла /etc/wireguard/wg0.conf она не создаёт и команде wg show не видна. Релиз 3X-UI v3.4.2 от 29.06.2026 сделал такие инбаунды многоклиентскими, а 3X-UI v3.6.0 от 30.07.2026 снял ограничение пула адресов подсетью /24. Веб-интерфейс к системному WireGuard дают wg-easy (51821/tcp) и WGDashboard (10086). Панель — ещё один сетевой сервис: CVE-2026-44343 закрыта только в 4.3.2.

Поддерживает ли 3X-UI протокол WireGuard?

Поддерживает: WireGuard указан и в README панели, и в документации ядра — среди inbound- и outbound-протоколов Xray. Совет «3X-UI — это только Xray, WireGuard там нет» устарел. Релиз 3X-UI v3.4.2 от 29 июня 2026 года перевёл такие инбаунды в многоклиентскую модель с нативным списком users и адресами клиентов внутри подсети пира.

Путаница измерима: по Вордстату у «3x ui wireguard настройка» около 88 показов в месяц, у «wireguard ui настройка» — 98. Люди ищут веб-интерфейс к WireGuard, а попадают в панель для Xray.

Чем инбаунд Xray отличается от системного wg-quick?

Тем, что это реализация внутри процесса ядра Xray, а не сетевой интерфейс Linux. Параметры лежат в базе панели, поэтому в /etc/wireguard пусто, службы wg-quick@wg0 нет, а wg show ничего не выводит. Набор полей минимальный:

{ "secretKey": "ПРИВАТНЫЙ_КЛЮЧ", "mtu": 1420,
  "peers": [{ "publicKey": "КЛЮЧ_КЛИЕНТА", "allowedIPs": ["0.0.0.0/0", "::/0"] }] }

secretKey обязателен, mtu по умолчанию 1420. Там же документация предупреждает: протокол не проектировался под сети с глубоким анализом трафика, признаки его узнаваемы, и сервер может попасть под ограничения. Нужна маскировка — поднимают Xray с VLESS и Reality.

Какие веб-панели существуют именно для WireGuard?

Самых распространённых — два. wg-easy упаковывает WireGuard и веб-интерфейс в один контейнер (AGPL-3.0-only): клиенты, QR-коды, графики Tx/Rx, одноразовые ссылки, 2FA, вход через OIDC. WGDashboard — надстройка на Python и Vue.js поверх готовых конфигураций (Apache 2.0): автор писал её потому, что иначе за туннелем приходится следить через wg show на сервере.

ПанельЧем управляетПорт веб-UIДанные по умолчанию
3X-UIинбаундами Xrayслучайный, 1024–62000случайные: логин и пароль по 10 знаков, путь из 18
wg-easyWireGuard в своём контейнере51821/tcpзадаются в мастере первого запуска
WGDashboardфайлами в /etc/wireguard10086admin / admin

WGDashboard читает тот же каталог, куда пишет ручная настройка WireGuard на VPS: он не заменяет понимание wg0.conf, а надстраивается над ним. Настройки лежат в wg-dashboard.ini: app_ip, app_port, auth_req.

Как установить wg-easy на своём сервере?

Установка занимает около 10 минут. Понадобится VPS с Linux и root-доступом — как его выбрать, разобрано в сравнении VPS.

Шаг 1. Подготовить сервер и Docker

apt update && apt install docker.io docker-compose-v2 -y

Шаг 2. Описать сервис в docker-compose.yml

Ключевые части официального файла; веб-порт здесь намеренно сужен до localhost:

services:
  wg-easy:
    image: ghcr.io/wg-easy/wg-easy:15
    volumes:
      - etc_wireguard:/etc/wireguard
      - /lib/modules:/lib/modules:ro
    ports:
      - "51820:51820/udp"
      - "127.0.0.1:51821:51821/tcp"
    cap_add:
      - NET_ADMIN
      - SYS_MODULE
    sysctls:
      - net.ipv4.ip_forward=1
      - net.ipv4.conf.all.src_valid_mark=1

Шаг 3. Запустить контейнер и открыть только UDP

Управляйте сервисом парой up / down: документация предупреждает, что start / stop оставляют его в несогласованном состоянии.

docker compose up -d
ufw allow 51820/udp

Шаг 4. Закрыть веб-интерфейс от интернета

Порт 51821 наружу не публикуйте. Без обратного прокси вендор прямым текстом называет доступ небезопасным и требует ограничить его локальной сетью. Вариантов два: прокси с TLS (рекомендация документации) либо проброс порта по SSH — это уже общая практика, а не цитата из доков:

ssh -L 51821:127.0.0.1:51821 root@ВАШ_IP_СЕРВЕРА

По http панель вход не даёт: INSECURE в v15 равна false.

Чем опасен открытый в интернет порт панели?

Цена ошибки уже измерена: CVE-2026-44343 (advisory GHSA-rrf5-q4fp-qvgm, severity Critical) затрагивал WGDashboard ниже 4.3.2 и позволял неаутентифицированной стороне обратиться к файловой системе хоста; риску, по тексту advisory, подвержены экземпляры в публичной сети.

Что делать, если панель не открывается?

Почти все отказы сводятся к шести сочетаниям.

СимптомПричинаРешение
Инбаунд создан, но wg show молчитЭто inbound Xray в пользовательском пространствеСмотреть параметры в панели, системный туннель ставить отдельно
Инбаунд не поднимается на 51820/udpПорт занят службой wg-quick@wg0Развести порты или остановить одну реализацию
Потерян адрес панели 3X-UIПорт, логин, пароль и путь случайныеВыполнить на сервере x-ui: в меню есть сброс данных
wg-easy не пускает по httpINSECURE по умолчанию falseПрокси с TLS либо явное INSECURE=true
«WG_HOST Environment Variable Not Set!»Взят образ с тегом latest — это ещё v14Указать в compose тег :15 и пересоздать (down, up -d)
Туннель поднялся, трафик не идётНет NET_ADMIN / SYS_MODULE или /lib/modulesПривести compose к виду из шага 2

Какую панель выбрать под свою задачу?

Выбор определяет то, что уже стоит на сервере. Работает Xray и нужен второй протокол в той же панели — берите WireGuard-инбаунд 3X-UI. Сервер чистый и нужен классический WireGuard с QR-кодами без консоли — ставьте wg-easy: релиз v15.4.0 вышел 14 августа 2026 года. Конфигурации написаны руками и не хватает наблюдения — подойдёт WGDashboard не ниже 4.3.2 за nginx с TLS. Сравнение протоколов — в разделе «Настройка защищённого канала».

Частые вопросы

Ниже — то, что спрашивают чаще всего при первом знакомстве с панелями.

Создаёт ли 3X-UI файл /etc/wireguard/wg0.conf?

Нет. WireGuard в 3X-UI — это inbound ядра Xray, по документации реализованный в пользовательском пространстве. Параметры хранятся в базе панели, поэтому каталог /etc/wireguard остаётся пустым, службы wg-quick@wg0 не появляется, а команда wg show ничего не выводит. Если нужен именно системный туннель, WireGuard ставится отдельно.

Можно ли одновременно держать инбаунд Xray и wg-quick?

Да, но не на одном UDP-порту. WireGuard-инбаунд Xray и системная служба wg-quick@wg0 конфликтуют за 51820/udp — поднимется только та, что заняла порт первой. Решение простое: развести реализации по разным портам либо остановить одну из них.

Что делать, если потерян адрес панели 3X-UI?

Восстановить его можно только на сервере. Установщик 3X-UI генерирует порт случайно из диапазона 1024–62000, логин и пароль по 10 символов, а секретный путь панели — из 18 символов, и печатает всё это один раз. Подключитесь по SSH и выполните команду x-ui: в меню есть просмотр и сброс учётных данных, управление службой и SSL-сертификатами.

Какая версия WGDashboard безопасна?

Не ниже 4.3.2. В версиях до неё действовала уязвимость CVE-2026-44343 (advisory GHSA-rrf5-q4fp-qvgm, severity Critical): она позволяла неаутентифицированной стороне обратиться к файловой системе хоста, и в advisory прямо сказано, что риску подвержены экземпляры в публичной сети. Отдельный нюанс: начиная с 4.3.3 требуется Python 3.12 и выше, хотя страница Requirements всё ещё называет 3.10–3.13.

Обязателен ли обратный прокси для wg-easy?

Документация вендора для сценария без обратного прокси прямо называет такой доступ небезопасным и просит применять его, только если вы понимаете последствия, а иначе ограничить веб-интерфейс локальной сетью. По умолчанию INSECURE равна false, то есть вход по http панель не даёт. Практический минимум — не публиковать 51821/tcp наружу и оставить снаружи только 51820/udp.

Нужно ли что-то оформлять, чтобы поднять свой канал?

Прямой ответственности за использование VPN физическим лицом законодательство РФ не устанавливает. Отдельные нормы адресованы владельцам публичных средств доступа и рекламе таких средств: с 1 сентября 2025 года реклама средств доступа запрещена (ч. 10.8 ст. 5 ФЗ «О рекламе»), санкция по ч. 18 ст. 14.3 КоАП для граждан — 50 000–80 000 рублей. Материал носит образовательный, научно-технический характер и описывает работу с собственной инфраструктурой.

Поделиться: Telegram ВКонтакте