OpenVPN настройка клиента на роутере Asus RT-N10U, с прошивкой DD-WRT
В статье Настройка OpenVPN я описал общие принципы настройки OpenVPN сервера и клиента.
В этой статье опишу процесс настройки OpenVPN на конкретном примере, в данном случае роутер компании Asus RT-N10U
По умолчанию данный роутер OpenVPN не поддерживает. Но с помощью прошивки DD-WRT и расширения openVPN мы это исправим.
Для начала несколько ссылок:
База роутеров которые поддерживают прошивку:
http://www.dd-wrt.com/site/support/router-database
в строке поиска вводишь N10U, выбираешь роутер и качаешь прошивки:
Собственно прошивка для этого роутера:
http://www.dd-wrt.com/routerdb/de/download/Asus/RT-N10U/-/dd-wrt.v24-21061_NEWD-2_K2.6_mini_RT-N10U.trx/3909
Расширение Опен-ВПН
http://www.dd-wrt.com/routerdb/de/download/Asus/RT-N10U/-/dd-wrt.v24-21061_NEWD-2_K2.6_openvpn.bin/3906
Тут инструкция по установке на английском:
http://www.dd-wrt.com/wiki/index.php/Asus_RT-N10U
Огромное преимущество этого роутера в том, что его можно перепрошить прямо через админку, буквально в несколько шагов — красота.
UPD
Основные шаги:
-
- Сбросить настройки роутера (Clear NVRAM)
- Установить прошивку подходящую версию прошивки DD-WRT (файл с расширением .trx)
- Еще раз сбросить настройки роутера (Clear NVRAM)
- Установить необходимые расширения, в нашем случае OpenVpn (файл с расширением .bin)
- Еще раз сбросить настройки роутера (Clear NVRAM)
-
-
- Установка dd-wrt через web-консоль
-
-
- В браузере набрать адрес: http://192.168.1.1
- Сбросить настройки роутера: Advanced settings -> Administration -> Restore/Save/Upload Setting -> кнопка Restore
- Загрузить .trx файл: Advanced settings -> Administration -> Firmware upgrade
- Дождаться пока роутер перезагрузится. Питание не отключать, кнопок на роутере не нажимать, процесс длительный может занять от 3 до 15 минут.
- После того как роутер загрузится опять открываем в браузере: http://192.168.1.1
- Собственно вот она прошивка. Установите для администатора имя root и пароль на ваш выбор.
- Еще раз сбросим настройки, в DD-WRT web-консоли это можно сделать здесь так: Administration -> Factory Defaults -> yes -> Apply settings
- Теперь загрузим дополнение с OpenVPN(.bin): Advanced settings -> Administration -> Firmware upgrade
- И еще раз сбросим настройки DD-WRT: Administration -> Factory Defaults -> yes -> Apply settings
- Собственно всё. Осталось задать имя пользователя и пароль и можно переходить к настройке OpenVPN
Настройка OpenVPN на роутере с DD-WRT
Если всё было сделано правильно, тогда в разделе Services ->VPN появятся OpenVPN Client, и OpenVPN Server.
Включаем клиента:
Start OpenVPN Client — Enable
Server Ip/Name — тут вводим адрес или DNS имя сервера OpenVPN
Port — Номер порта по которому поднят сервер, по умолчания 1194
Tunnel Device — TUN либо TAP. TAP — это виртуальный адаптер локальной сети, TUN виртуальная IP соединение типа точка-точка (point-to-point). Выбираем в зависимости от того что у нас в настройках сервера.
Tunnel Protocol — TCP либо UDP, опять же должно соответствовать настройкам сервера.
Encryption Cipher — тип шифрования используемый на сервере
Hash Algorithm — алгоритм криптографического хеширования, должен соответствовать тому который применяется на сервере. В моем случа SHA-1
После применения всех настроек во вкладке Status \ OpenVPN можно посмотреть текущее состояние OpenVPN подключения. Если всё верно то в первом блоке будет что то типа этого:
нас больше всего интересует CONNECTED: SUCCESS — значит подключение прошло успешно совершено. Local Address: XX.XX.XX.XX — сообщает о том какой адрес был присвоен устройству VPN Server’ом.
Если при это сервер не пингует новый адрес, то поможет следующий пункт:
Отключаем SPI фаервол
идем во вкладку Security\Firewall, и отключаем SPI Firewall, после этого сервер увидит и будет пинговать клиента.
Ошибки openVPN:
Authenticate/Decrypt packet error: packet HMAC authentiction failed
Вылечил изменением Hash Algorithm на SHA1.
TLS Error: Unroutable control packet received
Эта ошибка связана с синхронизацией времени на сервере и клиенте OpenVPN. Соответственно нужно убедится в том, что время синхронизированно.
Поменять дату и время на роутере с прошивкой dd-wrt в Administraton\Commands с помощью комманды вида:
date -s YYMMDDHHMM
date -s 1504021101
Thu Apr 2 11:01:00 UTC 2015
UPDATE:
Подключение dd-wrt роутера с openVPN через NAT
Итак есть роутер с openVPN который стучит на удаленный хост. Путь его пролегает через другой роутер с натом, где заблокировано все кроме доступа к хосту. Т.е. разрешены udp пакеты, и собственно всё. Результат — openVPN подключается но соединение не устанавливается.
Одна из возможных причин — ntpd. Если проанализировать сетевую активность роутера сразу после запуска можно обнаружить, что он очень активно стучится сразу по трем десяткам адресов. Потом лишние соединения выключается и роутер работает в нормальном режиме. Большая часть из них является обращением к известным серверам времени для синхронизации. Соответственно, роутер после перезагрузки сбрасывает значение на 1970й год, и пытается синхронизироваться. Если ему это не удается, на борту так и остается 1970, из-за чего openVPN не может установить правильное соединение.
Решение:
Разрешить доступ устройства кроме хоста еще и к серверу времени, либо прописать свой сервер, в базовых настройках
Setup\Basic Setup\Time Settings\ServerIP(name)
если прописать вместо айпи адреса — DNS имя, то так же нужно разрешить устройству доступ к dns.
Еще одна полезная статья по работе:
Настройка файрвола для работы openvpn сервера — команды из статьи подходят и для применения на dd-wrt роутерах.
UPD
О чем еще часто забывают — если машина с openvpn клиентом не является шлюзом для данной сети, то на шлюзе нужно добавить маршрут
route add -net 10.8.0.0 netmask 255.255.255.0 gw 192.168.11.2
После настройки всех параметров впн не поднимается. можно как то с вами связаться и показать логи?
Отписался по указанному почтовому адресу. 🙂
У меня возникла странная проблема. После настройки openvpn клиента на роутере я могу выйти в интернет только с одного компьютера, а со всех остальных устройств — нет. openvpn клиент настраивался так, чтобы дать доступ в интернет через vpn как для компьютеров, так и для телевизора на который клиента не поставишь. Не могу найти в чем причина. если отключаю на роутере openvpn client — все сразу же работает
Т.е. компьютер через шлюз и впн интернет видит, а телевизор нет?
Как вариант какие-то различия в сетевых настройках телевизора и компа.
Здравствуйте
все делал по инструкции ничего не получилось.
как с вами связаться
Здравствуйте!
Статья помогла, но есть одно но! Роутер к серверу подключается, пинги на все адреса проходят. А вот с компов из локалки роутера ни в какую. Дайте направление куда копать.
Заранее благодарен.
Судя по описанию в роутере не настроен проброс трафика к VPN серверу. Ищи по OpenVPN у меня на сайте, где-то были примеры настройки маршрута на роутере через админку.
Здравствуйте
Готов оплатить ваши услуги по настройке Open VPN (или PPTP) клиента на моем Asus RT-N10U B
Предоставлю доступ на роутер а так же доступ на VPS на которой настроены Open VPN и PPTP серверы
Здравствуйте Игорь.
К сожалению я этим давно уже не занимаюсь. Собственно процесс прошивки настройки описан в этой и других статьях. Дело нудное сложно и полное ошибок. Но получите удовольствие когда всё заработает ) дерзайте и просто не сдавайтесь, тогда всё получится.
Но может уйти пара другая недель.