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

> 3x ui wireguard настройка: в панели WireGuard есть, но это inbound Xray, а не служба wg-quick. Отличия, панели wg-easy и WGDashboard, установка и риски.

Источник: https://vpn-ne-rabotaet.ru/nastrojka/3x-ui/
Страница обновлена: 2026-08-15

---

**Да, 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` ничего не выводит. Набор полей минимальный:

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

`secretKey` обязателен, `mtu` по умолчанию 1420. Там же документация предупреждает: протокол не проектировался под сети с глубоким анализом трафика, признаки его узнаваемы, и сервер может попасть под ограничения. Нужна маскировка — поднимают [Xray с VLESS и Reality](/nastrojka/xray-vless/).

## Какие веб-панели существуют именно для 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-easy | WireGuard в своём контейнере | 51821/tcp | задаются в мастере первого запуска |
| WGDashboard | файлами в `/etc/wireguard` | 10086 | `admin` / `admin` |

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

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

Установка занимает около 10 минут. Понадобится VPS с Linux и root-доступом — как его выбрать, разобрано в [сравнении VPS](/server/vps-sravnenie/).

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

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

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

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

```yaml
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` оставляют его в несогласованном состоянии.

```bash
docker compose up -d
ufw allow 51820/udp
```

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

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

```bash
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, подвержены экземпляры в публичной сети.

- **Версия ниже 4.3.2 — непропатченная критическая уязвимость.** Обновление упирается во второй капкан: с 4.3.3 нужен Python 3.12+, а страница Requirements всё ещё называет 3.10–3.13. Верить надо release notes.
- **`admin` / `admin` и `app_ip = 0.0.0.0`.** Пара по умолчанию задокументирована публично, а панель слушает все интерфейсы.
- **TLS внутри WGDashboard нет.** Автор отказался от SSL на Gunicorn как нестабильного и советует терминировать TLS на nginx.

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

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

| Симптом | Причина | Решение |
|---|---|---|
| Инбаунд создан, но `wg show` молчит | Это inbound Xray в пользовательском пространстве | Смотреть параметры в панели, системный туннель ставить отдельно |
| Инбаунд не поднимается на 51820/udp | Порт занят службой `wg-quick@wg0` | Развести порты или остановить одну реализацию |
| Потерян адрес панели 3X-UI | Порт, логин, пароль и путь случайные | Выполнить на сервере `x-ui`: в меню есть сброс данных |
| wg-easy не пускает по http | `INSECURE` по умолчанию `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. Сравнение протоколов — в разделе [«Настройка защищённого канала»](/nastrojka/).

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

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