Установка клиента и сервера OpenVPN на маршрутизатор DD-WRT

Маршрутизатор Linksys WRT54GDD-WRT - это прошивка с открытым исходным кодом для широкого спектра маршрутизаторов. Многие маршрутизаторы имеют множество возможностей, к которым производители не предоставляют доступ через административный интерфейс маршрутизатора. Прошивка DD-WRT разблокирует все, на что способен ваш маршрутизатор, включая становление клиентом OpenVPN и / или сервером OpenVPN.


Смотрите также: лучшие VPN для роутеров DD-WRT.

Где взять DD-WRT роутер?

Linksys выпустила оригинальные маршрутизаторы WRT. Сегодняшняя прошивка с открытым исходным кодом DD-WRT основана на прошивке Linksys WRT, разработанной для маршрутизаторов серии WRT54G. «DD» часть DD-WRT - это шляпная подсказка к коду номерного знака для города Дрезден, Германия, где проживает основной сопровождающий проекта DD-WRT.

Сегодня можно приобрести маршрутизаторы, уже использующие DD-WRT, у Linksys и других производителей маршрутизаторов. Также возможно установить DD-WRT на многих других марках маршрутизаторов, которые поставляются с установленной фирменной прошивкой. Например, мой маршрутизатор представляет собой TP-Link c1900 ArcherC9, который поставляется с прошивкой TP-Link. Я его прошил соответствующей прошивкой DD-WRT и теперь это роутер DD-WRT.

Зачем устанавливать OpenVPN на вашем роутере?

Ваш роутер как клиент OpenVPN

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

Подключение маршрутизатора напрямую к вашему провайдеру VPN означает, что вам не обязательно запускать программное обеспечение VPN на любом из ваших устройств. Надеемся, что вы используете WPA2 или другой эквивалентный уровень шифрования во внутренней сети, поэтому разумно предположить, что трафик несколько защищен от посторонних глаз. Но как только ваш трафик попадает в маршрутизатор, он проходит через сеть вашего провайдера к месту назначения. Настройка вашего маршрутизатора в качестве VPN-клиента гарантирует, что трафик, покидающий ваш маршрутизатор, будет зашифрован при прохождении через вашего интернет-провайдера, пока он не достигнет точки выхода VPN в общедоступный Интернет..

Преимущества запуска VPN-клиента на вашем маршрутизаторе включают в себя:

  • Требуется только одно подключение к VPN-серверу. Это может помочь избежать ограничений подключения, установленных некоторыми провайдерами VPN.
  • Многие устройства, такие как Apple TV, не имеют простого способа установки программного обеспечения VPN. Если на вашем маршрутизаторе работает программное обеспечение VPN, весь трафик из вашей сети без проблем проходит через VPN..
  • VPN всегда включен, поэтому вам не нужно запускать его, когда вы хотите его использовать.

Ваш роутер как сервер OpenVPN

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

Как превратить мой маршрутизатор DD-WRT в клиента OpenVPN?

Прошивка DD-WRT делает это очень простым, поскольку поддерживает VPN типа OpenVPN и PPTP. PPTP является очень небезопасным протоколом VPN, поэтому мы рекомендуем OpenVPN поверх PPTP..

Смотрите также: Шпаргалка по нашим протоколам VPN.

Войдите в свой роутер. Адрес входа административного интерфейса DD-WRT обычно 192.168.0.1, но вы, возможно, настроили свою сеть по-другому. Как только вы войдете, перейдите к Сервисы вкладка, затем к VPN табуляция.

верхнее меню dd-wrt

Мы собираемся настроить клиентскую функцию OpenVPN маршрутизатора. Первое, что вам нужно, это сервер OpenVPN для подключения. Возможно, вы создали свой собственный сервер OpenVPN или используете поставщика VPN, который поддерживает OpenVPN. Я буду использовать ProtonVPN для этой статьи, но кроме получения конфигурации OpenVPN от Proton, не должно быть существенной разницы в настройке различных провайдеров.

Включить настройку клиента OpenVPN

Нажмите на включить переключатель для расширения настроек клиента.

DD-WRT VPN экран

Большинство провайдеров VPN, использующих OpenVPN, предоставят вам файл конфигурации для использования. В некоторых случаях вам также понадобятся имя пользователя и пароль. Содержимое любого файла конфигурации OpenVPN может отличаться. Было бы удобно, если бы интерфейс DD-WRT имел функцию импорта, но, поскольку это не нужно, мы должны попытаться определить, какие части файла конфигурации должны входить в каждое поле..

Мой файл конфигурации ProtonVPN имеет некоторые настройки в начале, а затем некоторые файлы сертификатов в конце. На этом снимке экрана я указал несколько параметров, которые вам нужно будет настроить вручную на маршрутизаторе DD-WRT:

настройки протонов dd-wrt

В случае ProtonVPN мне также нужно ввести свое имя пользователя и пароль в соответствующие поля.

Остальные настройки должны быть скопированы и вставлены в поле Additional Config маршрутизатора DD-WRT..

На данный момент мы хотим сохранить наши настройки, нажав Сохранить Кнопка внизу страницы. Люди, заботящиеся о безопасности, захотят проделать некоторую дальнейшую работу над настройками DNS маршрутизатора до активации VPN, поэтому я не хочу нажимать на Применить настройки кнопка еще.

Настройте свой DNS

Когда VPN активен, весь ваш трафик проходит через него в зашифрованном виде за пределами любопытных глаз вашей локальной сети и вашего интернет-провайдера. Тем не менее, чтобы получить доступ к Интернету вообще, вашему компьютеру необходимо выполнить поиск DNS. Поиск DNS разрешает доменные имена сайтов, например example.com, в IP-адрес, который может использовать компьютер. Хотя эти DNS-запросы не содержат никакой реальной информации о том, что вы делаете на каком-либо конкретном сайте, они могут предоставить наблюдателю полный список всех сайтов, которые ваш компьютер просматривал и вполне вероятно посещал..

Некоторые VPN предоставляют услуги DNS в дополнение к своим VPN, но вы также можете просто настроить маршрутизатор на использование большего количества анонимных DNS-серверов, быстро изменив конфигурацию.

Перейдите к Настроить -> Основные настройки и введите DNS-серверы, которые вы предпочитаете использовать в полях «Статический DNS». В этом примере показаны серверы DNS.WATCH..

dd-wrt vpn dns

Нажмите на Применить настройки кнопка. Теперь вы можете запустить VPN. Вернуться к Сервисы -> VPN вкладку и нажмите Применить настройки кнопка. Перейдите к Положение дел -> OpenVPN и вы должны увидеть поощрительное сообщение Client: CONNECTED SUCCESS вверху. Обратите внимание, что вкладка статуса OpenVPN не существует, пока не включена служба OpenVPN..

dd-wrt vpn openvpn клиент успешно

Теперь ваш маршрутизатор отправляет весь трафик со своих подключенных устройств через VPN.

Вы можете подтвердить, что ваши настройки DNS работают с помощью нашего теста на утечку DNS.

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

Как превратить мой маршрутизатор DD-WRT в сервер OpenVPN?

Первым шагом является создание некоторых сертификатов и ключей для использования сервером OpenVPN. Самый простой способ сделать это - установить OpenVPN на ваш компьютер и использовать его утилиты для генерации необходимых файлов. Найдите инструкции о том, как это сделать для систем Windows на сайте OpenVPN. Пользователи Linux могут использовать команды ниже. Если вам нужна дополнительная информация о полной установке, у меня есть более полная статья по настройке Linux OpenVPN здесь. Обратите внимание, что хотя мы на самом деле не устанавливаем сервер OpenVPN на этот раз (маршрутизатор будет сервером), нам все равно нужно выполнить ту же работу для генерации сертификатов..

Для Ubuntu и других пользователей Debian установите пакеты openvpn и easy-rsa:

sudo apt-get intstall openvpn easy-rsa

Вам нужно использовать yum или аналогичный менеджер пакетов для дистрибутивов на основе RedHat. Имена пакетов должны быть одинаковыми или очень похожими.

Создайте каталог для работы, я звоню моей openvpn

mkdir openvpn; cd openvpn

Теперь запустите команды генерации сертификатов. Вставьте это точно, включая точки:

/ usr / bin / make-cadir CA
CD CA
источник ./vars
./clean-all
./build-ca
./build-key-server сервер
./build-dh
./build-key client
CD ключи; openvpn --genkey --secret pfs.key

Обратите внимание, что некоторые команды будут запрашивать информацию о местоположении для включения в сертификат. Можно оставить значения по умолчанию и, возможно, даже желательно, поскольку эту информацию может прочитать любой. Если вы хотите настроить его по какой-либо причине, вы можете обновить строки 64–69 файла CA / vars, указав информацию о местоположении, которую вы предпочитаете использовать. Значения по умолчанию:

экспорт KEY_COUNTRY ="НАС"
export KEY_PROVINCE ="Калифорния"
export KEY_CITY ="Сан-Франциско"
export KEY_ORG ="Форт-Фанстон"
export KEY_EMAIL ="[email protected]"
экспорт KEY_OU ="MyOrganizationalUnit"

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

Обратите внимание, что последняя команда необязательна, но желательна. Это ключ, который позволит вашему маршрутизатору обеспечить идеальную прямую секретность (PFS). PFS позволяет вашему VPN-соединению периодически согласовывать новый статический ключ во время сеанса. Это обеспечивает дополнительную безопасность в случае, если ваши личные ключи будут скомпрометированы. Без PFS все ваши прошлые VPN-соединения могут быть расшифрованы любым, кто имеет ваш закрытый ключ. С PFS это невозможно, потому что ключ периодически меняется, а замененный ключ исчезает в клубе дыма..

Теперь у вас должно быть несколько файлов ключей и сертификатов в каталоге CA / keys:

$ ls -1 CA / keys /
01.pem
02.pem
ca.crt
ca.key
client.crt
client.csr
client.key
dh2048.pem
index.txt
index.txt.attr
index.txt.attr.old
index.txt.old
последовательный
serial.old
server.crt
server.csr
server.key
pfs.key

Нам нужно только несколько из них. Откройте следующие файлы в текстовом редакторе, таком как блокнот или vi. Не используйте текстовый процессор. Скопируйте значения и вставьте их в соответствующее поле страницы DDV-WRT OpenVPN Server / Daemon. В интерфейсе администратора маршрутизатора перейдите к Сервисы -> VPN и нажмите кнопку «Включить» в разделе «Сервер / демон OpenVPN».

поля сервера dd-wrt openvpn

  • Вставьте файл ca.crt в поле CA Cert
  • Вставьте server.crt в поле Сертификат публичного сервера
  • Вставьте server.key в поле Private Server Key
  • Вставьте dh2048.pem в поле DH PEM
  • Вставьте pfs.key в ключ аутентификации TLS (если вы создали этот ключ)

Если вы особенно параноик, вы можете указать список отзыва сертификатов. Это скажет серверу OpenVPN проверить список отзыва, прежде чем принимать какой-либо сертификат от подключающегося клиента. Настройка и использование CRL немного продвинуты для этой статьи.

Нажмите на Применить настройки кнопка и ваш VPN-сервер должен запуститься. Вы можете посетить Положение дел-> OpenVPN страница, чтобы увидеть состояние подключения. Обратите внимание, что на этот раз в сообщении говорится Server: CONNECTED SUCCESS, а не Client: CONNECTED SUCCESS, который вы видели во время работы клиента.

dd- wrt vpn openvpn Успех сервера

Следующим шагом является создание файла конфигурации клиента, который вы можете использовать на своих устройствах для подключения к вашему новому серверу OpenVPN. Важно, чтобы определенные настройки на каждой стороне (клиент / сервер) дополняли друг друга. Я закончил с конфигурацией клиента, которая выглядит следующим образом:

клиент
Dev Tun
прото удп
удаленный YOUR_IP_ADDRESS 1194
шифр AES-256-CBC
TLS-шифр TLS-DHE-RSA-WITH-AES-256-CBC-SHA
auth sha256
Comp-LZO
link-mtu 1570

----- НАЧАТЬ ЧАСТНЫЙ КЛЮЧ -----
Скопируйте содержимое файла client.key и вставьте его сюда.
----- КОНЕЦ ЧАСТНОГО КЛЮЧА -----

----- НАЧАТЬ СЕРТИФИКАТ -----
Скопируйте содержимое файла client.crt и вставьте его сюда.
----- КОНЕЦ СЕРТИФИКАТА -----

----- НАЧАТЬ СЕРТИФИКАТ -----
Скопируйте содержимое вашего файла ca.crt и вставьте его сюда.
----- КОНЕЦ СЕРТИФИКАТА -----

ключ-направление 1

Скопируйте содержимое файла pfs.key и вставьте его сюда

Затем я запустил свой клиент openvpn, и он подключился:

$ sudo openvpn --config client-config.ovpn
Суббота, 23 сентября 16:05:05 2017 OpenVPN 2.3.10 x86_64-pc-linux-gnu [SSL OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6] построено 22 июня 2017 г.
Сб 23 сентября 16:05:05 2017 версии библиотеки: OpenSSL 1.0.2g 1 марта 2016, LZO 2.08
Сб 23 сентября 16:05:05 2017 Проверка подлинности канала управления: tls-auth с использованием файла статического ключа INLINE
Суббота, 23 сентября 16:05:05 2017 UDPv4 ссылка локальная (связанная): [undef]
Суббота, 23 сентября 16:05:05 2017 Удаленное соединение по UDPv4: [AF_INET] 192.168.0.1:1194
Суббота, 23 сентября 16:05:09 2017 [сервер] Одноранговое соединение инициировано с [AF_INET] 192.168.0.1:1194
Суббота, 23 сентября 16:05:12 2017 Устройство TUN / TAP tun0 открыто
Суббота, 23 сентября 16:05:12 2017 do_ifconfig, tt->ipv6 = 0, тт->did_ifconfig_ipv6_setup = 0
Суббота, 23 сентября 16:05:12 2017 / sbin / ip link set dev tun0 up mtu 1497
Суббота, 23 сентября 16:05:12 2017 / sbin / ip addr add dev tun0 10.10.10.2/24, трансляция 10.10.10.255
Сб 23 сентября 16:05:12 2017 Последовательность инициализации завершена

Я использую клиент OpenVPN из командной строки Linux, но этот же файл conf должен работать с любым клиентом OpenVPN на любой платформе, я попробовал его на своем телефоне Android с помощью OpenVPN Connect и смог подключиться.

Обратите внимание на удаленную строку конфигурации моего клиента. Вы можете использовать свой внешний IP-адрес, но если ваш провайдер периодически меняет ваш внешний IP-адрес, вы можете использовать динамическое имя хоста. Динамический DNS - это процесс, при котором статическое доменное имя связывается с IP-адресом маршрутизатора, и это имя хоста остается указанным на правильный IP-адрес, даже если он изменяется. Посетить Настроить -> DDNS вкладка вашего маршрутизатора DD-WRT для просмотра списка поддерживаемых динамических DNS-провайдеров.

OpenVPN является надежным и надежным решением VPN. Он широко используется, особенно среди провайдеров VPN, очень заботящихся о конфиденциальности. Маршрутизаторы, работающие с DD-WRT, позволяют особенно легко защищать как исходящий трафик через конфигурацию клиента OpenVPN, так и входящий трафик через конфигурацию сервера OpenVPN.

Смотрите также: Лучшие Linux VPN провайдеры.

«Маршрутизатор Linksys WRT54-G» от Webmhamster, лицензированный по лицензии CC BY 2.0

Brayan Jackson Administrator
Sorry! The Author has not filled his profile.
follow me

About the author

Leave a Reply

Your email address will not be published. Required fields are marked *

45 − = 39

Adblock
detector