Flex-VPN

Flex-VPN Journal

VPN для роутера: настройка на Keenetic и OpenWrt

VPN для роутера нужен, когда защищённый туннель удобнее один раз поднять на уровне домашней сети, чем настраивать каждое устройство отдельно. Тогда через VPN работают и устройства, на которые клиент не установить: телевизор, игровая приставка, медиаплеер. Ниже разберём, какие прошивки понимают AmneziaWG и WireGuard, как импортировать конфигурацию на Keenetic и OpenWrt, как пустить в туннель только выбранные устройства и что проверить, если подключение не заработало.

Материал посвящён законным сценариям сетевой защиты и настройки. Соблюдайте правила, действующие в вашей юрисдикции.

Зачем нужен VPN для роутера и когда без него проще

Роутер с настроенным туннелем работает как ещё один VPN-клиент, но через него идёт трафик всех подключённых устройств или только выбранных вами. Самим устройствам ничего устанавливать не нужно: для них туннель прозрачен, а внешние сайты видят IP-адрес VPN-сервера, а не адрес вашего провайдера.

  • Устройства без VPN-клиентов. Smart TV, приставки, медиаплееры и часть «умной» техники не поддерживают импорт ключей. Варианты для телевизоров подробно разобраны в статье VPN на телевизор.
  • Одна настройка вместо многих. Профиль хранится на роутере, и новые устройства в сети подхватывают его автоматически, если вы не ограничили туннель политиками.
  • Постоянная защита домашнего трафика. Не нужно включать приложение на каждом гаджете и следить, не забыли ли его запустить.

Есть и обратная сторона. Роутерный VPN не защищает вне дома: в кафе, гостинице или аэропорту телефон и ноутбук подключаются к чужой сети, и шифровать их трафик должно приложение на самом устройстве. Если через туннель идёт вся сеть, банковские приложения, сервисы провайдера или рабочие системы могут вести себя иначе, увидев незнакомый IP-адрес, — такие устройства лучше оставить на прямом подключении. Наконец, скорость ограничивает процессор роутера: на недорогих моделях шифрование нередко становится узким местом раньше, чем канал провайдера. Если VPN нужен только на телефоне и ноутбуке, приложения на этих устройствах проще и гибче.

Какие роутеры подходят: прошивка, протокол и ключ

Решает не бренд, а прошивка: понимает ли она нужный протокол. Конфигурация AmneziaWG устроена как у WireGuard, но содержит дополнительные параметры маскировки служебных пакетов — Jc, Jmin, Jmax, S1, S2, H1–H4, а в новых версиях протокола и другие. Обычный WireGuard-клиент такие строки не принимает, а без них к серверу AmneziaWG с включённой маскировкой не подключиться. Чем протоколы отличаются по устройству, мы разбирали в статье WireGuard VPN и AmneziaWG.

ПлатформаWireGuardAmneziaWGVLESS + RealityСложность
Keenetic (KeeneticOS)Штатный компонентВ новых версиях прошивки; способ ввода параметров зависит от версииНет в стандартном наборе компонентовНизкая или средняя
OpenWrtПакеты из официального репозиторияПакеты amneziawg-openwrt под конкретную версию и платформуТолько сторонние пакетыСредняя или высокая
Заводские прошивки других производителейЕсть на части моделейКак правило, нетКак правило, нетЗависит от модели

Шифрование выполняет процессор роутера. WireGuard и AmneziaWG относительно лёгкие, но на бюджетных моделях скорость в туннеле может оказаться заметно ниже тарифа провайдера. VLESS-клиентам дополнительно нужен запас оперативной и флеш-памяти. Если роутер покупается под OpenWrt, ориентируйтесь минимум на 16 МБ флеш-памяти и 128 МБ ОЗУ: на моделях скромнее свежие версии прошивки и дополнительные пакеты могут просто не поместиться.

Какой ключ нужен роутеру

Роутер импортирует файл конфигурации .conf с секциями [Interface] и [Peer]. Ссылка формата vpn:// предназначена для приложения Amnezia VPN, а ссылка подписки — для клиентов вроде Happ; роутеры их не принимают. Ключи Flex-VPN рассчитаны на импорт в приложения, поэтому до настройки уточните в поддержке (@vpn_flex_support), можно ли получить конфигурацию файлом и подойдёт ли она вашей прошивке.

Выделите роутеру отдельный профиль. Если тот же ключ одновременно активен на телефоне, сервер получает пакеты с одним ключом из двух мест, переключается между ними, и соединения мешают друг другу. Не пересылайте файл конфигурации в открытых чатах: в нём хранится приватный ключ.

Keenetic: компоненты KeeneticOS и импорт AmneziaWG или WireGuard

Настройка VPN на Keenetic проходит в веб-интерфейсе, и для обычного WireGuard командная строка не нужна. WireGuard — штатный компонент KeeneticOS; если такого типа подключения в списке нет, компонент нужно доустановить.

  1. Обновите KeeneticOS до актуальной версии. Поддержка параметров AmneziaWG появилась не сразу; с какой версии она доступна для вашей модели, сверьте с документацией Keenetic.
  2. В общих настройках системы откройте набор компонентов, отметьте WireGuard VPN и установите обновление — роутер перезагрузится.
  3. Перейдите в раздел других подключений, найдите WireGuard и выберите загрузку конфигурации из файла.
  4. Проверьте, что адрес и порт сервера, ключи и разрешённые подсети подтянулись из файла, и включите для подключения опцию выхода в интернет.
  5. Активируйте подключение. В его статусе должны появиться сведения о последнем рукопожатии, а счётчики трафика — расти.

Параметры AmneziaWG на Keenetic

В зависимости от версии KeeneticOS параметры маскировки либо подхватываются при импорте файла, либо задаются вручную в командной строке роутера — через встроенную веб-консоль или по Telnet/SSH, если такой доступ включён. Значения должны в точности совпадать с указанными в вашем ключе: подбирать или менять их не нужно, сервер ожидает конкретные числа. Настройки, введённые в командной строке, сохраните отдельной командой, иначе после перезагрузки они пропадут. Если в файле есть параметры, которых ваша версия прошивки не знает, импорт может завершиться ошибкой — тогда уточните в поддержке, есть ли совместимый вариант конфигурации.

Keenetic: какие устройства пускать через VPN

Если поставить VPN-подключение в списке приоритетов выше основного подключения провайдера, через туннель пойдёт весь трафик сети. Обычно удобнее другой путь — политики доступа в интернет: они позволяют отправить в VPN только телевизор или приставку, а остальным устройствам оставить прямое подключение.

  1. Зарегистрируйте нужные устройства в списке устройств домашней сети: политику можно назначить только зарегистрированному клиенту.
  2. В разделе приоритетов подключений создайте новую политику, например «Через VPN», и отметьте в ней WireGuard-подключение.
  3. Решите, оставлять ли в политике основное подключение как резервное. Если отмечен только туннель, при его падении устройства останутся без интернета, а не перейдут на прямой канал. Для приватности это скорее плюс: трафик не уйдёт мимо туннеля незаметно.
  4. Назначьте политику выбранным устройствам. Её можно применить и к целому сегменту, например к отдельной Wi-Fi-сети, чтобы все её клиенты шли через туннель.
  5. Проверьте результат с одного из устройств, как описано ниже.

По сути это раздельная маршрутизация на уровне сети: решение принимается по устройству, а не по приложению или сайту. Как тот же принцип работает внутри VPN-клиентов, описано в статье Раздельное туннелирование VPN.

OpenWrt: пакеты AmneziaWG и настройка интерфейса

OpenWrt даёт больше всего контроля, но требует аккуратности. Для обычного WireGuard достаточно пакетов из официального репозитория: kmod-wireguard, wireguard-tools и luci-proto-wireguard. Для AmneziaWG проект Amnezia ведёт репозиторий amneziawg-openwrt: модуль ядра kmod-amneziawg, утилиты amneziawg-tools и модуль для веб-интерфейса LuCI. Готовые сборки есть не для всех платформ — для редких моделей пакеты, возможно, придётся собирать самостоятельно.

  1. Узнайте версию OpenWrt, целевую платформу (target и subtarget) и версию ядра — всё это есть на странице состояния в LuCI.
  2. Установите пакеты AmneziaWG, собранные именно под эту версию и платформу. Менеджер пакетов зависит от ветки прошивки: opkg или apk.
  3. Перезапустите сеть или роутер, чтобы в LuCI появился новый тип протокола.
  4. Создайте интерфейс с протоколом AmneziaWG. Если ваша версия LuCI умеет импортировать конфигурацию из файла, воспользуйтесь этим; если нет, перенесите поля вручную: приватный ключ, адрес интерфейса, параметры маскировки, а в разделе пира — публичный ключ сервера, общий ключ (если он есть в файле), адрес и порт сервера и разрешённые IP из файла (обычно 0.0.0.0/0).
  5. Включите для пира маршрутизацию разрешённых IP — без неё маршрут через туннель не появится. Если в ключе указан PersistentKeepalive, перенесите и его.
  6. Добавьте интерфейс в зону брандмауэра с маскарадингом (например, в зону wan) либо создайте отдельную зону и разрешите в неё переадресацию из lan.

Модуль ядра должен в точности соответствовать ядру прошивки: пакет от другой версии OpenWrt не установится из-за зависимостей или не загрузится. После обновления прошивки пакеты AmneziaWG придётся поставить заново под новую версию.

Чтобы пустить в туннель только часть устройств, на OpenWrt используют маршрутизацию по политикам — например, пакет pbr из официального репозитория. Это отдельная настройка, в которой легко ошибиться, поэтому начните со схемы «весь трафик через туннель» и усложняйте её только после того, как она заработает.

Можно ли поставить Happ или VLESS на роутер

Happ — нет: это приложение для Android, iOS, Windows и macOS, версии для роутерных прошивок у него нет. Ссылку подписки VLESS + Reality роутер тоже не примет: в стандартном наборе компонентов KeeneticOS VLESS-клиента нет (сверьтесь со списком компонентов своей версии), в базовой сборке OpenWrt — тоже. Опытные пользователи ставят сторонние пакеты на основе Xray-core или похожих ядер (на Keenetic — через репозиторий Entware), но такой вариант требует запаса памяти, ручной настройки маршрутизации и готовности самостоятельно чинить всё после обновлений. Производители роутеров такие сборки не поддерживают.

Практичная схема для дома выглядит так: на роутере — AmneziaWG для устройств без собственных клиентов, на телефонах и ноутбуках — Happ с подпиской VLESS + Reality от Flex-VPN или Amnezia VPN с отдельным ключом. Подписка в Happ сама обновляет список серверов, а каждое устройство получает свой профиль. Учтите, что роутеру тоже нужен собственный профиль: базовый тариф рассчитан на три устройства, дополнительные подключаются отдельно — подробности на странице тарифов.

Проверка подключения, скорость и нагрузка на роутер

  1. Статус туннеля. На Keenetic смотрите карточку подключения, на OpenWrt — страницу интерфейсов в LuCI или вывод команды awg show (для обычного WireGuard — wg show). При активном обмене данными рукопожатие обновляется примерно раз в две минуты, а счётчики переданных и полученных данных растут.
  2. IP-адрес. С устройства, которое должно идти через туннель, откройте любой сервис проверки IP: он должен показать адрес VPN-сервера, а не провайдера.
  3. DNS. Запустите тест утечек DNS. Если отвечают серверы вашего провайдера, хотя вы этого не планировали, задайте DNS-серверы для туннеля или в настройках роутера.
  4. IPv6. Если провайдер выдаёт IPv6, а туннель передаёт только IPv4, часть соединений может уходить напрямую. Проверьте, какой IPv6-адрес видит сервис проверки, и при необходимости отключите IPv6 для устройств или сегмента, которые идут через VPN.
  5. Скорость и процессор. Сравните замеры с выключенным и включённым туннелем и одновременно посмотрите нагрузку на процессор — в системном мониторе Keenetic или на странице состояния OpenWrt. Если процессор загружен почти полностью, ограничение в железе роутера, а не в сервере.

VPN на роутере не работает: частые причины

Рукопожатия нет

  • Ключ занят другим устройством. Тот же профиль активен на телефоне или компьютере — выдайте роутеру отдельный.
  • Неверное время на роутере. В пакетах рукопожатия WireGuard и AmneziaWG есть метка времени, и сервер отклоняет попытки, метка которых не новее уже принятой. Если часы после перезагрузки отстают, включите синхронизацию по NTP и дождитесь её.
  • Параметры маскировки потерялись. Прошивка приняла файл как обычный WireGuard без значений Jc, S1, H1 и остальных — сервер AmneziaWG на такие пакеты не ответит. Сверьте значения с исходным ключом.
  • Опечатка в адресе или порте сервера, не тот публичный ключ пира или неверный адрес интерфейса.

Keenetic: рукопожатие есть, а интернета нет

Если на Keenetic не работает VPN при живом рукопожатии, причина почти всегда в маршрутизации. Проверьте, включена ли у подключения опция выхода в интернет, зарегистрировано ли устройство, назначена ли ему нужная политика и стоит ли туннель в этой политике выше основного подключения. Если параметры AmneziaWG вводились в командной строке, убедитесь, что конфигурация сохранена.

OpenWrt: интерфейс есть, трафика нет

Чаще всего интерфейс не добавлен в зону брандмауэра или не разрешена переадресация из lan. Второй вариант — выключена маршрутизация разрешённых IP. Если интерфейс вообще не поднимается, загляните в системный журнал: ошибка загрузки модуля ядра обычно означает несовпадение версии пакета и прошивки.

Страницы загружаются частично или зависают

Похоже на проблему с MTU: туннель добавляет к каждому пакету свои заголовки, и крупные пакеты могут теряться по пути. Уменьшите MTU интерфейса туннеля, например до 1280–1380, и проверьте снова. Заодно убедитесь, что на устройстве за роутером не включено собственное VPN-приложение: туннель внутри туннеля снижает скорость и ещё сильнее уменьшает допустимый размер пакета.

Если ничего не помогло, пройдитесь по общему чек-листу из статьи почему не работает VPN и напишите в поддержку, указав модель роутера, версию прошивки и то, что показывает статус туннеля.

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

Какой роутер подойдёт для VPN?

Тот, чья прошивка понимает нужный протокол: для ключей AmneziaWG это Keenetic с актуальной KeeneticOS или роутер на OpenWrt с пакетами AmneziaWG. Скорость туннеля во многом зависит от процессора роутера.

Можно ли добавить на Keenetic ключ vpn:// из Amnezia VPN?

Нет, такая ссылка рассчитана на приложение Amnezia VPN. Роутеру нужен файл конфигурации .conf — уточните в поддержке, можно ли получить ключ в таком формате.

Можно ли установить Happ на роутер?

Нет, Happ работает на Android, iOS, Windows и macOS. На роутере используют AmneziaWG или WireGuard, а VLESS — только через сторонние пакеты, которые производители роутеров не поддерживают.

Нужно ли ставить VPN-приложение на телевизор, если VPN настроен на роутере?

Нет, если телевизор подключён к этому роутеру и его трафик направлен в туннель — целиком или через политику для устройства. Второй VPN на самом телевизоре только снизит скорость.

Почему после перезагрузки роутера VPN не подключается?

Частая причина — роутер ещё не синхронизировал время, и сервер отклоняет рукопожатие. Другие варианты — несохранённые настройки, введённые в командной строке, или пакеты AmneziaWG, которые пропали после обновления OpenWrt.

Насколько VPN на роутере снижает скорость?

Это зависит от процессора роутера, удалённости сервера и канала провайдера. Сравните замеры с туннелем и без и посмотрите загрузку процессора: если она близка к максимуму, ограничение в железе.

Flex-VPN

Готовы настроить подключение?

Выберите тариф на три устройства и получите профили подключения в Telegram.

Открыть бота