wg-easy vs LuCI на OpenWrt: что удобнее новичку
Сравнение двух способов настройки WireGuard на OpenWrt: стандартный модуль LuCI и внешний инструмент wg-easy. Помогаем новичку выбрать удобный вариант.
Содержание
Если вы только начали осваивать OpenWrt и хотите поднять WireGuard, перед вами возникает выбор: настроить всё во встроенном интерфейсе LuCI или использовать сторонний инструмент wg-easy. Путаница возникает потому, что эти средства работают на разных уровнях. Разберёмся, что к чему.
LuCI и wg-easy: в чём разница
LuCI — это стандартная веб-панель OpenWrt, которая позволяет управлять маршрутизатором и встроенными службами. Для WireGuard в LuCI есть специальный протокол: вы создаёте интерфейс с типом wireguard, задаёте ключи, адреса и правила межсетевого экрана. Всё происходит на самом устройстве, без внешних зависимостей.
wg-easy — это веб-приложение, которое разработано для упрощения управления WireGuard-сервером. Оно работает не на OpenWrt, а на отдельном Linux-сервере (или в Docker), и предоставляет красивый интерфейс для добавления клиентов, создания QR-кодов и просмотра подключений. Оно использует стандартный WireGuard, но само по себе не является частью OpenWrt.
Установка и настройка: пошаговое сравнение
LuCI на OpenWrt
- Убедитесь, что ваша сборка OpenWrt поддерживает WireGuard (ядро 5.4 и выше). Проверьте версию командой
uname -a. - Обновите список пакетов:
opkg update - Установите пакет:
opkg install luci-proto-wireguard - В LuCI перейдите в Network → Interfaces, нажмите «Add new interface…», выберите протокол WireGuard и дайте имя, например,
wg0. - В настройках интерфейса укажите Private Key (сгенерируйте командой
wg genkey), Listen Port (например, 51820), IP Address (например, 10.0.0.1/24). - Добавьте пиров (клиентов): укажите их Public Key и Allowed IPs, например,
10.0.0.2/32. - Настройте зону межсетевого экрана: разрешите вход из WAN на порт 51820/UDP и разрешите пересылку между wg0 и LAN.
- Сохраните и примените. Теперь у вас есть работающий WireGuard-сервер на роутере.
wg-easy на отдельном устройстве
- Подготовьте Linux-сервер (VPS или мини-ПК). Установите Docker и wg-easy:
docker run -d --name=wg-easy -e WG_HOST=vpn.example.com -e PASSWORD=ваш-пароль -p 51820:51820/udp -p 51821:51821/tcp weejewel/wg-easy - Откройте веб-интерфейс по адресу http://сервер:51821, введите пароль.
- В интерфейсе wg-easy добавьте клиента, нажав «New», появится QR-код для скачивания.
- На роутере OpenWrt настройте проброс порта: если WireGuard-сервер находится за роутером, перенаправьте внешний UDP-порт 51820 на внутренний адрес сервера.
- Не забудьте открыть в файрволе роутера соответствующий UDP-порт.
Что удобнее новичку: критерии сравнения
| Критерий | LuCI | wg-easy |
|---|---|---|
| Сложность установки | Один пакет через opkg, настройка в том же интерфейсе | Нужен Docker и отдельный сервер; установка сложнее |
| Скорость настройки | 10–15 минут, если вы знаете IP-адреса и ключи | 5–10 минут при базовом знании Linux |
| Управление клиентами | Добавление вручную, нет QR-кодов | Кнопка «New» и QR-код для каждого клиента |
| Требования к оборудованию | Только роутер | Дополнительный сервер или VPS |
| Настройка маршрутизации | Интеграция с межсетевым экраном OpenWrt | Требует ручного проброса портов |
| Обновления | Через обновление OpenWrt | Отдельная проверка версий wg-easy |
Типичные сценарии для начинающих
Сценарий А: у вас уже есть роутер с OpenWrt, и вы хотите быстро поднять VPN для доступа к домашней сети.
Вам достаточно LuCI. Всё делается на роутере, не нужен дополнительный сервер. wg-easy добавит лишние расходы и сложность.
Сценарий Б: у вас есть сервер (VPS) и вы хотите иметь красивый веб-интерфейс для раздачи VPN-доступа другим людям.
Тогда wg-easy окажется удобнее: QR-коды, простая выдача «билетов». Однако он требует отдельной машины и осторожности с безопасностью.
Безопасность и стабильность
LuCI использует нативные механизмы OpenWrt: межсетевой экран, цепочки iptables/nftables. Вы контролируете каждое правило. wg-easy работает как отдельный демон; его необходимо обновлять вручную, и зачастую он использует собственные правила, что может приводить к конфликтам с основным файрволом. Перед использованием проверяйте актуальность версии wg-easy.
Вывод
Для новичка, который хочет просто подключить телефон и ноутбук к домашней сети, оптимален LuCI. Для тех, кто уже знаком с Linux и планирует раздавать VPN многим клиентам, удобнее wg-easy. Главное — не пытаться ставить wg-easy в OpenWrt; это нестандартный путь. Проверьте команды и настройки для вашей версии OpenWrt и вашего региона.
Мини-чеклист
- Проверьте поддержку WireGuard в вашей версии OpenWrt (ядро 5.4+).
- Для LuCI установите пакет luci-proto-wireguard.
- Для wg-easy убедитесь, что у вас есть отдельный хост и указан корректный WG_HOST.
- Откройте UDP-порт (обычно 51820) в файрволе роутера.
Частые ошибки
- Попытка установить wg-easy в OpenWrt через opkg — он не является пакетом OpenWrt.
- Забывают добавить правило межсетевого экрана для WireGuard-интерфейса.
- Использование одного и того же приватного ключа на роутере и в wg-easy.
- Не учитывают, что wg-easy требует DNS-имени для генерации корректных QR-кодов.
Источники и документация
FAQ
Можно ли установить wg-easy прямо на OpenWrt?
Официально в репозитории OpenWrt нет пакета wg-easy. Вы можете попробовать установить Node.js через Entware, но это вызовет проблемы с библиотеками и не гарантирует стабильной работы. Проще использовать отдельный сервер.
Какой способ лучше для доступа к домашней сети с телефона?
Если роутер уже работает на OpenWrt, проще настроить WireGuard через LuCI — не нужен второй устройство. Достаточно открыть порт и создать конфигурацию для мобильного клиента.
Могу ли я пользоваться wg-easy вместе с OpenWrt?
Да, если у вас есть другой Linux-сервер. Роутер при этом должен пробрасывать порт на этот сервер. Вы получите красивый интерфейс, но без встроенной интеграции с межсетевым экраном OpenWrt.
Готовы перейти от сравнения к практике?
Если общая картина уже понятна, не тратьте время на еще один круг сравнений. Проще оформить рабочий доступ и проверить WireGuard в своем сценарии.
Получить доступ