WireGuard-клиент на UniFi Gateway: как направить выбранные устройства через свой VPS
Шлюз UniFi может подключаться к вашему VPS по WireGuard как клиент, а затем отправлять в туннель трафик только тех устройств, которые вы укажете. Остальная сеть продолжает работать через обычного провайдера. Ниже описано, как подготовить профиль, подключить шлюз, создать правило маршрутизации и проверить результат, включая DNS, IPv6 и поведение при обрыве туннеля.
Чтобы развернуть свой собственный VPN за 10 минут, Вам нужно:
- Заказать у нас Виртуальный сервер VPS MAATRIX в США, Великобритании или Франции (на Ваш выбор) и выбрать при установке тип VPN - WireGuard, OpenVPN, Amnezia (в зависимости от Вашего роутера). После оплаты этот сервер автоматически настроит VPN сразу для всей Вашей домашней или офисной сети.
- Вам останется просто подключить Ваш компьютер или роутер к этому серверу. Для роутера инструкцию можно взять с нашего сайта: просто введите модель Вашего роутера в каталоге и выполните указанные действия для настройки. Если Вашего роутера в списке нет - напишите пожалуйста нам в telegram @maatrixserv и мы предоставим Вам инструкцию.
- После подключения роутера к арендованному Вами серверу, все Ваши телефоны, планшеты, компьютеры и телевизоры заработают через него сами по Wi-Fi.
Ну а если что-то не будет получаться - наша техническая поддержка с радостью Вам поможет в telegram @maatrixserv , пожалуйста, обращайтесь!
Содержание
- Проверьте оборудование и подготовьте тестовое устройство
- Подготовьте отдельный профиль WireGuard для шлюза
- Добавьте VPN-клиент в UniFi Network
- Создайте правило маршрутизации для тестового компьютера
- Проверьте внешний адрес с самого компьютера
- Разберитесь с IPv6 и DNS
- Проверьте, что происходит при обрыве туннеля
- Диагностика типичных проблем
- Подключите остальные устройства или откатите настройку
Подключение туннеля и маршрутизация трафика в UniFi настраиваются отдельно. После импорта профиля шлюз устанавливает соединение с сервером, но компьютеры и телефоны в сети продолжают ходить в интернет напрямую. Чтобы их трафик пошёл через VPS, нужно отдельное правило маршрутизации на основе политик. Поэтому в статье два основных этапа: сначала подключается сам шлюз, затем ему назначается трафик.
Проверьте оборудование и подготовьте тестовое устройство
Штатный WireGuard-клиент есть на Next-Gen UniFi Gateway и UniFi Cloud Gateway. Список поддерживаемых устройств и требования к прошивке приведены в документации Ubiquiti по WireGuard VPN Client. Старый USG, EdgeRouter и точка доступа UniFi без шлюза под эту инструкцию не подпадают: точка доступа сама не маршрутизирует трафик и не может отправить его в туннель.
Важно и то, чтобы шлюз UniFi действительно был маршрутизатором для нужных устройств. Если в сети роль шлюза выполняет другой роутер, а UniFi стоит за ним или работает только как контроллер, правила в Network на трафик клиентов не повлияют.
Перед началом сделайте резервную копию конфигурации и убедитесь, что у вас есть административный доступ к UniFi Network. Настраивать удобнее из локальной сети. Если вы зайдёте удалённо и ошибётесь в правиле, можно потерять доступ к панели.
Для первого запуска выберите один компьютер. Запишите его имя в списке клиентов, локальный адрес и текущий внешний IPv4, чтобы потом было с чем сравнивать. Удобно закрепить за ним адрес в DHCP. Если ноутбук подключается по Wi-Fi с частным (случайным) MAC-адресом, проверьте, что в UniFi вы выбираете именно текущую запись этого устройства: в списке клиентов могут остаться старые записи с похожими именами.
Подготовьте отдельный профиль WireGuard для шлюза
Для UniFi нужен свой файл .conf, выданный сервером отдельно для шлюза. Обычно он выглядит примерно так (ключи и адреса здесь вымышленные):
[Interface]
PrivateKey = CLIENT_PRIVATE_KEY_PLACEHOLDER
Address = 10.8.0.2/32
DNS = 10.8.0.1
[Peer]
PublicKey = SERVER_PUBLIC_KEY_PLACEHOLDER
PresharedKey = PRESHARED_KEY_PLACEHOLDER
Endpoint = 203.0.113.10:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
Несколько пунктов стоит проверить заранее:
- Endpoint — внешний адрес VPS и порт WireGuard, доступные из обычного интернета. Внутренний туннельный адрес сервера (в примере
10.8.0.1) сюда не подходит. - AllowedIPs со значением
0.0.0.0/0разрешает передавать через туннель весь IPv4-трафик. Это условие внутри WireGuard. Какие устройства реально попадут в туннель, всё равно определяет правило UniFi. - PresharedKey, если сервер его использует, должен остаться в профиле. Без него рукопожатие не состоится.
::/0добавляйте в AllowedIPs только тогда, когда сервер действительно поддерживает IPv6 в туннеле.
Один профиль нельзя одновременно использовать на шлюзе и, например, на телефоне. В WireGuard пара ключей соответствует одному участнику, и сервер запоминает только его последнюю точку подключения. Два устройства с одинаковым ключом будут мешать друг другу. Для каждого самостоятельного клиента создайте отдельный peer на сервере. При этом за самим шлюзом может быть сколько угодно устройств: для сервера они выглядят как один клиент.
Профили AmneziaWG штатным клиентом WireGuard в UniFi не поддерживаются, несмотря на похожий формат. Нужен обычный WireGuard-профиль.
Сервер можно поднять самостоятельно или взять готовый VPS MAATRIX с WireGuard в одной из доступных локаций: США, Великобритания или Франция. Учтите, что зарубежный IP меняет точку выхода в интернет, но не отменяет правил конкретного сервиса, ограничений аккаунта и требований к оплате. Это стоит проверить на рабочих приложениях до того, как переводить на новый маршрут всех пользователей.
Добавьте VPN-клиент в UniFi Network
В UniFi Network откройте Settings → VPN → VPN Client и создайте новый клиент типа WireGuard. Дайте ему понятное имя, по которому его будет легко найти в правилах, например VPS-UK. Конфигурацию можно загрузить файлом или ввести вручную. Импорт файла надёжнее: так меньше шансов перепутать закрытый ключ клиента с открытым ключом сервера.
Примените изменения и дождитесь, пока статус клиента покажет установленное соединение. Подробное описание импорта и ручного ввода есть в руководстве Ubiquiti. Расположение пунктов меню может немного отличаться в зависимости от версии Network.
На этом этапе ни одно устройство в сети ещё не идёт через VPS. Если сейчас проверить внешний IP с ноутбука, он останется прежним, и это нормально.
Создайте правило маршрутизации для тестового компьютера
Путь к настройке зависит от версии UniFi Network:
- в Network 9.4: Settings → Policy Table → Create New Policy → Route;
- в Network 9.3: Settings → Policy Engine → Policy-Based Routes → Create Route.
В более ранних выпусках эта функция называлась Traffic Routes и находилась в другом разделе. Если у вас иная версия, сверьтесь с описанием маршрутизации на основе политик у Ubiquiti. Набор доступных параметров, включая выбор отдельных устройств и Kill Switch, тоже зависит от версии Network и модели шлюза.
В самом правиле укажите:
- Интерфейс — созданный на предыдущем шаге VPN-клиент.
- Источник — тестовый компьютер.
- Назначение — Any, то есть весь интернет-трафик этого устройства.
- Kill Switch — пока оставьте в том состоянии, которое собираетесь использовать постоянно. Подробнее о нём ниже.
Назовите правило по смыслу, например Design-laptop-via-UK, и сохраните. Если для этого устройства уже есть другие политики маршрутизации, проверьте, не пересекаются ли они. Более общее старое правило может перехватить трафик, и тогда туннель будет работать, а компьютер продолжит выходить через провайдера.
Для первой проверки маршрутизируйте весь трафик устройства, а не отдельные домены. Веб-сервисы, особенно ИИ-платформы, используют несколько имён: для входа, API, загрузки файлов и потоковых ответов. Правило по одному домену часто приводит к тому, что сайт открывается, а часть функций не работает. Схему «устройство целиком» проще проверить, а дробить её можно потом, когда базовый вариант заработает.
Проверьте внешний адрес с самого компьютера
Проверять нужно с тестового ноутбука, а не из консоли шлюза. Собственный трафик UniFi подчиняется своим маршрутам, и его внешний адрес ничего не говорит о том, как идёт трафик клиента.
Откройте на ноутбуке любой сервис определения внешнего IPv4. Адрес должен совпасть с внешним адресом VPS (в примере это 203.0.113.10). Если он остался прежним, вернитесь к правилу и проверьте источник: выбрано ли то самое устройство и нет ли конфликтующей политики.
Затем выполните обычный рабочий сценарий. Для ИИ-сервиса это вход в аккаунт, отправка запроса, получение длинного ответа и загрузка тестового файла без конфиденциальных данных. Для файлового сервиса — загрузка и скачивание небольшого файла. Одна открывшаяся главная страница ещё не значит, что работают все нужные функции.
Убедитесь заодно, что локальные ресурсы остались доступны: принтер, сетевое хранилище, внутренние сервисы. Правило маршрутизации управляет только выходом в интернет. Доступ между VLAN и изоляцию сегментов оно не настраивает: для этого есть межсетевой экран UniFi, и проектировать такие ограничения нужно отдельно.
Разберитесь с IPv6 и DNS
Если провайдер выдаёт в сеть IPv6, а туннель передаёт только IPv4, часть соединений может пойти напрямую через провайдера по IPv6. Проверьте внешний IPv6 на тестовом компьютере. Когда сервер работает только по IPv4, а сетью пользуются устройства, которым нужен строго VPN-маршрут, проще всего отключить выдачу IPv6 в этой сети, переподключить клиентов и повторить проверку. Если IPv6 нужен, сначала убедитесь, что его поддерживают сервер, профиль и политика UniFi, а потом проверяйте оба протокола.
С DNS сначала выясните, какой резолвер использует компьютер. Учтите, что в браузере может быть включён собственный защищённый DNS, который не совпадает с системным. Тест DNS показывает, какой резолвер обработал запрос, но не показывает, каким путём этот запрос до него дошёл. Поэтому одно лишь имя провайдера или публичного резолвера в результатах ещё не доказывает утечку. Чтобы сделать выводы, сопоставьте настройки DNS на устройстве и в UniFi с тем, через какой маршрут идёт трафик к этому резолверу.
Если позже вы перейдёте на правила по доменам, учтите требование UniFi: клиенты должны использовать шлюз в качестве DNS-сервера, иначе он не сможет сопоставить имена с адресами и правило может не сработать. Для схемы «всё устройство через VPN» лишние исключения в DNS лучше не добавлять.
Проверьте, что происходит при обрыве туннеля
Заранее решите, как должен вести себя компьютер, если VPS недоступен. Возможны два варианта: продолжить работу через обычного провайдера с прежним IP или полностью потерять доступ в интернет. Второй вариант включается опцией Kill Switch в правиле маршрутизации, если ваша версия Network её поддерживает. Когда Kill Switch выключен, трафик при падении туннеля уходит по другому доступному маршруту.
Проверять это нужно имитацией настоящего отказа. Временно остановите WireGuard на своём VPS, оставив правило в UniFi включённым. На тестовом компьютере установите новое соединение: откройте сайт, который ещё не открывали, или повторите проверку внешнего IP в новой вкладке. Уже загруженная страница может отображаться из кеша и ничего не покажет. При включённом Kill Switch внешние ресурсы должны стать недоступны, при выключенном должен появиться прежний IP провайдера. После проверки запустите WireGuard на сервере и убедитесь, что связь через VPS восстановилась.
Отключать или удалять правило для такой проверки не стоит: так вы проверите другую ситуацию, а не обрыв туннеля. Если в сети есть резервный WAN, повторите проверку после переключения на второго провайдера. Результаты запишите вместе с названием правила, чтобы при следующей настройке не пришлось выяснять всё заново.
Диагностика типичных проблем
| Симптом | Что проверить |
|---|---|
| VPN-клиент не подключается | Endpoint и порт, доступность VPS из интернета, соответствие ключей, наличие PresharedKey, не используется ли этот профиль на другом устройстве |
| Соединение установлено, но IP на компьютере прежний | Источник в правиле, конфликтующие политики, правильная запись клиента в списке |
| IP уже серверный, но часть сайтов не открывается или загрузки зависают | DNS, затем MTU; проверяйте по очереди, а не одновременно |
| Некоторые соединения идут мимо туннеля | Выдача IPv6 в сети, защищённый DNS в браузере |
Если понадобится обращение в поддержку, подготовьте время попытки, модель шлюза, версии Network и прошивки и результат проверки с клиентского устройства. Закрытый ключ в такие материалы не включайте.
Подключите остальные устройства или откатите настройку
Когда тестовый компьютер прошёл все проверки, можно добавить в правило другие устройства или выделить под зарубежный выход отдельную VLAN. Вторая схема удобнее для отдела: одна сеть работает через VPS, другая через провайдера, и пользователю достаточно подключиться к нужной. Перед переводом всех сотрудников проверьте задержку, загрузку крупных файлов и стабильность в рабочее время. Результат одного теста скорости об этом мало говорит.
Откатывать настройку лучше в обратном порядке: сначала отключите правило маршрутизации для устройств, затем остановите VPN-клиент. После этого проверьте на компьютере, что вернулся обычный внешний IP. Сохраните рабочий профиль и резервную копию конфигурации, чтобы при необходимости быстро повторить настройку.
Если UniFi не подходит или нужен другой протокол, есть отдельные инструкции по OpenVPN на UniFi Gateway и VPN-клиенту на UniFi Dream Machine. Варианты для других роутеров собраны в обзоре VPN на роутере для всего дома.
Чтобы развернуть свой собственный VPN за 10 минут, Вам нужно:
- Заказать у нас Виртуальный сервер VPS MAATRIX в США, Великобритании или Франции (на Ваш выбор) и выбрать при установке тип VPN - WireGuard, OpenVPN, Amnezia (в зависимости от Вашего роутера). После оплаты этот сервер автоматически настроит VPN сразу для всей Вашей домашней или офисной сети.
- Вам останется просто подключить Ваш компьютер или роутер к этому серверу. Для роутера инструкцию можно взять с нашего сайта: просто введите модель Вашего роутера в каталоге и выполните указанные действия для настройки. Если Вашего роутера в списке нет - напишите пожалуйста нам в telegram @maatrixserv и мы предоставим Вам инструкцию.
- После подключения роутера к арендованному Вами серверу, все Ваши телефоны, планшеты, компьютеры и телевизоры заработают через него сами по Wi-Fi.
Ну а если что-то не будет получаться - наша техническая поддержка с радостью Вам поможет в telegram @maatrixserv , пожалуйста, обращайтесь!
Обсудить статью, задать вопрос или начать новую тему
Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.
Перейти в сообщество →