В этой статье речь пойдет о настройке OpenVPN на маршрутизаторы в качестве VPN клиента.
Большинство недорогих роутеров таких как TP Link не поддерживают технологию OpenVPN и могут работать только по PPTP VPN, который считается недостаточно надежным.
Благодаря установке прошивки OpenWRT, роутер сможет работать как OpenVPN клиент и обеспечить надежное шифрование всех данных работающих по Wi—Fi или подключенных по кабелю.
Для настройки VPN по технологии OpenVPN на роутер автор использовал TP-Link TL-WR1043ND с версией ПО v3, но можно использовать и более дешевые модели роутеров, на который есть прошивка OpenWRT.
В качестве VPN сервиса выбран VPN Monster, так как в отличие от других сервисов, данные конфигурации и сертификатов находятся в одном файле .ovpn, что избавит от редактирования файла конфигурации вручную и от возможных проблем при этом.
Автор не может гарантировать того, что выполнив данную инструкцию все будет работать, как написано, так как не бывает одинаковых задач и в каждом случае бывают разные условия: модель роутера, версия ПО роутера, тип подключения интернет провайдера и много других условий. Выполняя инструкцию у вас должен быть хотя бы минимальный опыт работы с OS Linux и с железом.
Установка OpenVPN на роутер можно разделить на два этапа – это установка прошивки OpenWRT и настройка OpenVPN на нем.
Приступим.
Установка прошивки OpenWRT на роутер TP-Link
ВНИМАНИЕ! Перепрошивка роутера снимает его с гарантии, неправильные и непоследовательные действия с прошивкой могут привести к выходу из строя вашего устройства. Только на свой страх и риск можете приступать к выполнению данной инструкции. Автор статьи и прошивки не несет ответственности за ваши действия.
Заходим на сайт OpenWRT и качаем 2 прошивки для вашей модели роутера. Выбираем прошивку в соответствии с версией роутера и версией программного обеспечения раутера. Первая прошивка должна заканчиваться на factory.bin вторая на sysupgrade.bin. Первой прошивкой мы будем прошивать роутер из веб интерфейса старой прошивки, второй будем обновлять прошивку уже из прошивки с новым интерфейсом.
Заходим в веб-интерфейс роутера по адресу 192.168.0.1 или 192.168.1.1 и переходим в раздел системные инструменты далее обновление ПО. Еще раз убеждаемся, что версия ПО совпадает с версией ПО новой прошивки, (в противном случае роутер может выйти из строя) и обновляем прошивку новой прошивкой с окончанием factory.bin. Ждем несколько минут, не обновляя страницу и не выключая питание роутера. Прошивка готова.
Подключаем роутер к кабелю интернета, активируем интернет, перейдя на любой сайт.
Заходим на роутер по протоколу SSH, для этого качаем программу PuTTY или любой другой SSH клиент, введя IP адрес роутера и стандартный порт 22. Пользователь root, пароль пустой или тоже root. Если войти не получается, перезагружаем роутер.
Выполняем следующую команду в SSH клиенте: opkg update
для обновления системы и команду opkg install luci
для установки веб сервера для веб-интерфейса.
Если не удается установить luci по причине отсутствия интернета на роутере, установите все пакеты вручную локально.
Заходим по адресу 192.168.1.1 в браузере в веб интерфейс. Логин и пароль root.
При первом входе система будет предлагать сменить пароль, меняем его.
Далее заходим в раздел System подраздел Backup Flash Firmware и обновляем роутер второй прошивкой в разделе Flash new firmware image указываем путь к прошивке с окончанием sysupgrade.bin и подтверждаем.
На этом прошивка роутера завершена, приступаем к установке OpenVPN.
Установка OpenVPN на прошивку OpenWRT
Смотрите обновленную инструкцию https://vpnmonster.ru/blog/?p=2855
Если прошивка OpenWRT уже установлена, значит основная работа уже выполнена.
Заходим в роутер через PuTTY терминал введя адрес 192.168.1.1, логин root и ваш пароль.
Выполняем команду opkg update
Далее opkg install openvpn
Последнюю команду можно выполнить через веб интерфейс роутера. Для этого зайдем в веб интерфейс далее в раздел “System” и подраздел “Software”.
Нажимаем кнопку «update lists»
В Filter указываем openvpn нажимаем «найти пакет» переходим в раздел Available packages (openvpn). Возможно немного придется подождать, пока пакеты обновятся. Из всех пакетов выбираем openvpn-openssl и устанавливаем его. Если будете работать с VPN через веб интерфейс, понадобится еще luci-app-openvpn, тоже можно его установить.
Далее приобретаем лицензию VPN Monster, скачиваем файлы конфигурации в разделе «для других устройств» по своему секретному коду активации. Распаковываем архив и выбираем тот сервер который вам нужно, можно выбрать сервер с окончанием UDP, если уверены, что ваш провайдер не запрещает этот трафик.
Теперь понадобится еще одна программа для доступа к роутеру по протоколу SCP для этого хорошо подойдет программа WinSCP.
С помощью WinSCP заходим на роутер по адресу 192.168.1.1 введя логин root и свой пароль. Не забудьте, что необходимо выставить протокол подключения SCP.
В раздел root копируем файл конфигурации с выбранным сервером. Для удобства можно переименовать его, например на vpn.ovpn
Далее через терминал PuTTY выполняем команду openvpn --config vpn.ovpn
, ждем подключения и если все в порядке в конце увидим такое сообщение «nitialization Sequence Completed «.
Если не получается, убедитесь, что имя файла ovpn соответствует указанному, а также попробуйте выбрать сервер с протоколом TCP или другой сервер.
На этом этапе OpenVPN подключен и работает.
Далее вам необходимо настроить фаервол, чтобы VPN смотрел в интернет.
Сделать это можно из командной строки по iptables, но я расскажу как это сделать через веб-интерфейс.
Заходим в браузере на 192.168.1.1
Далее Network -> Interfaces -> Add
Name of new interface: VPN
Protocol of new interface: Unmanaged
Cover of following interface: tun0
Submit.
Добавить в Firewall зону VPN c интерфейсом tun0 и разрешить с него доступ на LAN, разрешить доступ с LAN на VPN.
Пробуем зайти на сайт vpnmonster.ru и проверить свой IP адрес.
Если Вы видите IP VPN сервера, значит вы настроили фаервол правильно. Если не удалось зайти на сайт, значит фаервол настроен неправильно но VPN работает.
Добавляем OpenVPN и автоподключение к серверу в автозагрузку.
Для этого заходим на роутер по протоколу SCP через программу WinSCP находим файл /etc/rc.local и вписываем в него такие строки:
openvpn --config /root/vpn.ovpn &
exit 0
Перезагружаем роутер, после загрузки и подключению к интернету проверяем IP.
Если необходимо выбрать другой сервер, просто заменяем файл /root/vpn.ovpn на другой с таким же именем.
Не лишним будет сразу же поменять DNS сервер.
Для этого переходим в Network > Interfaces > WAN > Advanced Settings.
Снимаем галочку Use DNS servers advertised by peer.
В поле Use custom DNS servers указываем адрес DNS сервера, можно два.
Если все это сложно, можно просто купить готовый роутер с прошивкой OpenWRT и лицензией VPN Monster, для этого обратитесь в поддержку.
LEDE
Смотрите обновленную инструкцию: https://vpnmonster.ru/blog/?p=2855
Константин
Спасибо, все прошилось и заработало.
Только интерфейс luci достаточно сильно поменялся и настройка firewall уже другая.
А так же автозагрузка openvpn не работает через /etc/rc.local . Чтобы openvpn загружался автоматически, нужно выполнить команду
/etc/init.d/openvpn enable
А конфигурационный файл поместить в папку /etc/openvpn и переименовать из .ovpn в .conf , тогда openvpn автоматически подхватит его при загрузке
Муслим
/etc/rc.local все делал как у вас указано
Муслим
Ура, все заработало, кроме автозагрузки… в файле осталось
openvpn —config /root/vpn.ovpn &
exit 0
почему-то только вручную стартует… Что не так?
VPN Monster
В какой папке лежит конфиг и как он называется?
ник
снимите видео настройки
Аноним
Снимите видео настройки
Di
Пардон господа! У меня Роутер подохлее TL-WR740N 🙂 В него не влезло )))
Di
openvpn физически не влезает. Свободно из 400 кб, а требуется 720.
Как у вас все влезло? Сделал все по инструкции. Чтобы перекомпилировать сборку нужен Linux 🙁
VPN Monster
Да есть проблема когда нехватает памяти. На более дорогих устройствах проблемы нет.
Владимир
Сами собрали прошивку, выкинув лишнее.
Я выкидываю luci, opkg, odhcp, ipv6.
И получается в 4MB роутер влазиет openvpn-polarssl и даже zabbix-agent
Александр
Спасибо, самый лучший vpn Монстер из всех что я пробовал
Александр
Спасибо разработчиком все работает самый лучший VPN Монстер и работает хорошо с роутерами, еще раз спасибо
Александр
Молодцы спасибо за программу все работает замечательно. Через роутер все перепробовал это единственная которая замечательно пашет спасибо
Evgen
Подскажите. Нужно чтобы VPN работал только на одном порту роутера, остальные порты и вай фай должны ходить без VPN. Прошивка openwrt
Владимир
Правильно ли я понял, что из LAN только с одного порта должен быть доступ через туннель?
Если так, то нужно этот порт выделить в отдельный vlan (и задать свою подсеть, например, 192.168.2.0/24) и создать для него отдельную зону (LAN2, например).
Затем разрешаем форвард
LAN-LAN2
LAN2-VPN
И маскарадинг
LAN2-VPN
LAN2-WAN
Alex
Полёт нормальный всё работает замечательно, впн монстру респект!
Atomiz
Все работает, спасибо (пришлось помучиться с firewall)
Евгений
А что было не понятного с firewall, не поделитесь?
Tim
не рабочий гайд… фуфел какой то!!!
Аноним
фуфел — это ты)
Tim
на картинке в wan
Tim
так в lan или в wan?
Yuriy
Купил на пробу на месяц. Прислали длинный код . У меня роутер asus ac 87 в нем есть openVPN. Но в настройках openVPN необходимо указать файл , имя , логин и пароль . А мне не выдали ни логин ни пароль. Как настроить ?
VPN Monster
Здравствуйте. Обратитесь в техническую поддержку.
Аноним
Вы в своем уме? Думаете этим кто-то будет заниматься?
VPN Monster
Занимаются ведь, а почему нет?
Владимир
Зачем прошивать роутер sysupgrade?? В этом нет смысла!
Евгений
Будут и занимаются.