В данной статье рассмотрим создание на роутере RTU968/1068 OpenVPN-клиента. Настройка OpenVPN клиента будет производиться на прошивке Build for RTU1068 v.2.6.6S.

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


Для всех роутеров RTU, которые будут подключаться в качестве OpenVPN-клиентов  файлы конфигурации будут одинаковые. Различаться будут лишь сертификаты, которые создаются индивидуально для каждого нового клиента.



1. Настройка OpenVPN клиента через WEB-интерфейс

В WEB-интерфейсе роутера переходим в раздел Сервисы - OpenVPN


Создаем процесс для OpenVPN-клиента:

1. Задаем имя (произвольно)

2. Выбираем конфигурацию: Client configuration for a routed multi-client VPN

3. Нажимаем кнопку "Добавить"


После всех вышеперечисленных действий у нас добавился процесс для OpenVPN, нажимаем кнопку "Редактировать":


Сразу переходим в расширенный режим настройки, нажимаем кнопку "Switch to advanced configuration"


На вкладке Service выставляем следующие параметры для настройки:

1. Параметр verb - данный параметр отвечает за информативность логирования в момент работы OpenVPN. На время настройки клиента рекомендуется установить значение данного параметра не ниже 9.

2. Также установим каталог записи лога, для этого в дополнительном поле выберем параметр log, после чего нажмем кнопку "Добавить". Путь для записи лога оставим по умолчанию. 


Сохраняем настройки.


На вкладке Networking:

1. Позволяем удаленному хосту изменять IP-адрес или порт, активируем галочку у параметра float

2. Не выполняем привязку к локальному адресу и порту, активируем галочку у параметра nobind

3. Выбираем тип туннелирования, в параметре dev прописываем tun


4. Использовать быстрое сжатие LZO - данный параметр является опциональным и не поддерживается некоторыми устройствами при работе с OpenVPN. По умолчанию функция активирована.

5. Активируем параметр persist_tun

6. Активируем параметр persist_key 


Сохраняем настройки.


На вкладке VPN настроим следующие параметры:

1. Активируем режим работы client

2. Указываем IP-адрес удаленного OpenVPN сервера в параметре remote

3. Активируем параметр pull

4. Остальные параметры настраиваются опционально и зависят от конфигурации OpenVPN сервера.


Сохраняем настройки.


На вкладке Cryptography:

1. Добавляем центр сертификации ca
2. Добавляем ключ Диффи-Хелмана

3. Добавляем клиентский сертификат client.crt

4. Добавляем клиентский ключ client.key

5. В параметре remote_cert_tls выбираем server

6. Активируем параметр tls_client


6. Остальные параметры настраиваются опционально и зависят от конфигурации OpenVPN сервера.


Сохраняем и применяем настройки.


1.2 Запускаем OpenVPN клиента

После настройки и сохранения всех параметров, необходимо запустить службу OpenVPN. Переходим Сервисы - OpenVPN, устанавливаем галочку "Включить", сохраняем. После чего нажимаем кнопку "Start".


После запуска клиентской части, WEB-интерфейс должен принять вид:


1.3 Настройка сетевого интерфейса и межсетевой зоны

Настройка сетевого интерфейса и межсетевой зоны аналогична тому, как мы настраивали их для сервера. Переходим в WEB-интерфейсе Сеть - Интерфейсы, нажимаем на кнопку "Добавить новый интерфейс"


1. Задаем имя нового интерфейса, к примеру VPN

2. Выбираем протокол нового интерфейса: Неуправляемый

3. Выбираем тип интерфейса: tun0


Переходим во вкладку "Расширенные настройки", устанавливаем галочку "Запустить при загрузке"


Переходим в "Настройки межсетевого экрана", создаем зону VPN.


После этого интерфейс должен получить IP-адрес, если этого не произошло, необходимо перезапустить интерфейс.


Переходим на вкладку Сеть - Межсетевой экран


Добавляем правило для VPN-зоны:

Настраиваем правило:


Сохраняем и применяем настройки.


2. Настройка OpenVPN клиента через консоль

2.1 Настраиваем клиентскую часть OpenVPN

Открываем файл конфигурации для редактирования:

nano /etc/config/openvpn


Файлы сертификата и ключа клиента, загружаем либо через WEB пункт 1.3.

Либо через файловую систему, в этом случае пути сертификатов прописываем вручную согласно тому, куда загрузили.

Как загружать файлы в роутер Вы можете прочитать в статье: Как загружать и скачивать файлы в роутерах серии RTU?


Приводим файл к нужному виду:

config openvpn 'Client'
        option nobind '1'
        option float '1'
        option client '1'
        option comp_lzo 'yes'
        option reneg_sec '0'
        option dev 'tun'
        option persist_tun '1'
        option persist_key '1'
        option remote_cert_tls 'server'
        option verb '9'
        option log '/var/log/openvpn.log'
        option pull '1'
        list remote '188.170.44.64'
        option proto 'udp'
        option tls_client '1'
        option ca '/lib/uci/upload/cbid.openvpn.Client.ca'
        option dh '/lib/uci/upload/cbid.openvpn.Client.dh'
        option cert '/lib/uci/upload/cbid.openvpn.Client.cert'
        option key '/lib/uci/upload/cbid.openvpn.Client.key'
        option enabled '1'


Сохраняем и применяем настройки.


2.2 Настройка сетевого интерфейса

Открываем файл сетевого интерфейса:

nano /etc/config/network


Добавляем настройки туннеля:

config interface 'VPN'
        option proto 'none'
        option auto '1'
        option ifname 'tun0'


Сохраняем и применяем настройки.


2.3  Настройка межсетевого экрана

Открываем файл настройки межсетевого экрана:

nano /etc/config/firewall

config zone
    option input 'ACCEPT'
    option output 'ACCEPT'
    option name 'vpn'
    option forward 'ACCEPT'
    option masq '1'
    option network 'vpn'

config forwarding
    option dest 'lan'
    option src 'vpn'

config forwarding
    option dest 'vpn'
    option src 'lan'


Сохраняем и применяем настройки.


2.4 Перезагружаем службы, включаем OpenVPN


Прописываем последовательно команды:

/etc/init.d/openvpn restart

/etc/init.d/firewall restart

/etc/init.d/network restart


Проверяем работу туннеля:

cat /var/log/openvpn.log

tail -f /var/log/openvpn.log


На данном этапе настройка OpenVPN клиента на роутере RTU завершена, переходим к следующей статье:

OpenVPN режим мультиклиента: Часть 4 - Добавление клиентов к сети VPN


Сопутствующие статьи: 

Как загружать и скачивать файлы в роутерах серии RTU?

Как подключиться к роутеру RTU?

Wiki Github