Использование Интерфейса Openvpn Tap На Synology Nas (С Проверкой Подлинности Сертификата)



Фон Радость от внедрения пакета OpenVPN для сетевого хранилища Synology быстро прошла.

Попытка настроить сеть для небольшого офиса закончилась практически не успев начаться.

В интерфейсе настройки пакета отсутствуют все прелести этого самого пакета (доступна только авторизация по логину и паролю).

Недавно наткнулся на статью: «Обучение NAS Synology маршрутизации трафика в туннель OpenVPN с проверкой подлинности сертификата» .

Кажется, это то, что нам нужно.

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

Хорошо.

Не останавливайся на полпути.



Суть проблемы

Если сделать все, как указано в упомянутой выше статье, только с адаптером типа TAP, то получим следующий эффект: 1. Выберите VPN-соединение и нажмите «Подключиться».

2. В SSH-сессии видим, что туннель работает, сервер пингуется, данные идут. Но интерфейс Synology сообщает нам, что происходит «Соединение».

3. Через 15-20 секунд интерфейс вежливо сообщает, что соединение не удалось и закрывает рабочее соединение.

Детальное изучение происходящего выявило, что во всех скриптах устройства прописаны алгоритмы определения статуса OpenVPN-соединения, исходя из того, что они могут быть только TUN. Об этом также свидетельствуют все комментарии в сценариях.



Решение

На момент написания на устройстве установлена прошивка DMS 5.0-4493 Update 1. Соответственно, все описанное здесь актуально для нее .

Для удобства управления скриптами было решено хранить всё на админской сетевой папке.

Создаем на нем папку OpenVPN, в ней будет все необходимое для работы клиента: 1. Файл конфигурации OpenVPN «tap.conf»:

  
   

dev tap proto udp remote ServerIP 444 client tls-client ns-cert-type server ca key/ca.crt cert key/Client1.crt key key/Client1.key comp-lzo yes tun-mtu 1500 tun-mtu-extra 32 mssfix 1450 ping-restart 12 ping 3 status log/openvpn-status.log log log/openvpn.log script-security 2 float

2. Папка с сертификатами: «ключ» 3. Папка с логами: «log» 4. Скрипты запуска/остановки VPN. Start.sh (начало туннеля):

#!/bin/sh CONF_DIR="/volume1/adm/OpenVPN/" OPENVPN_CONF="tap.conf" KERNEL_MODULES="x_tables.ko ip_tables.ko iptable_filter.ko nf_conntrack.ko nf_defrag_ipv4.ko nf_conntrack_ipv4.ko nf_nat.ko iptable_nat.ko ipt_REDIRECT.ko xt_multiport.ko xt_tcpudp.ko xt_state.ko ipt_MASQUERADE.ko tun.ko" SERVICE="ovpnc" # Make device if not present (not devfs) if [ ! -c /dev/net/tun ]; then

Теги: #Системное администрирование #openvpn #nas #vpn-tunnel #vpn-client #tap #synology #DSM
Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.