Jump to content

Recommended Posts

Posted (edited)

Хочу поделиться опытом по настройке OpenVPN на маршрутизаторах SNR-CPE (актуально для моделей с USB-интерфейсом(ME1/ME2/ME2-SFP)). Думаю на фоне новой короновирусной волны, и в случае перехода на удаленный режим работы владельцам сих дивайсов должно быть актуально :)

 

Поехали...

 

OpenVPN - клиент-серверная технология виртуальной частной сети(VPN), позволяющая создавать и присоединяться к зашифрованным каналам связи с помощью туннелирования через порт UDP или TCP. OpenVPN считается одним из безопасных протоколов VPN на сегодняшний день. 
Если у вас SNR-CPE c USB портом(т.е. ME1/ME2/ME2-SFP), вы можете установить OpenVPN на маршрутизатор.

 

Плюсы такого решения:

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

 

Подготовка USB-накопителя

В первую очередь, необходимо подготовить USB-накопитель для работы с маршрутизатором. В качестве примера воспользуемся утилитой Minitool Partition(Windows), скачать её можно с официального сайта www.partitionwizard.com(имеется бесплатная версия). Подготовка подразумевает создание раздела с файловой системой ext4 с меткой optware

Откройте программу через меню Пуск или на рабочем столе. В главном меню программы, отображены накопители обнаруженные вашей операционной системой, выберете дисковое пространство вашего накопителя и нажмите правую кнопку мыши(1), затем нажмите Format(2).

1.thumb.png.bc38fbe3fead3871cb1d4b487174fbe2.png

 

Откроется меню форматирования, в Partition Label впишите название USB-накопителя optware(1), выберите File System Ext4(2) и нажмите OK(3), затем нажмите Apply в левой боковой панели для применения и запуска настроек форматирования(4).

2.thumb.png.412ce861efc9343eed13b61661079e04.png

 

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

 

Настройка Entware.
Entware - это программный репозиторий пакетов для маршрутизаторов или сетевых хранилищ. С помощью репозитория Entware на маршрутизатор можно установить ПО не входящее в состав операционной системы маршрутизатора.  Ранее ранее коллеги из NAG'а описывали пример настройки сервера, посмотреть можно тут

 

Вся дальнейшая подготовка и работа с Entware будет производиться из консоли маршрутизатора. Для подключения к маршрутизатору можно использовать любой удобный SSH-клиент, например Putty, или можно воспользоваться встроенным терминалом в Windows 10 или Linux.

 

Рассмотрим пример подключения из под Windows 10, как наиболее распространенной ОС.

Для подключения необходимо открыть Powershell, для этого нажмите комбинацию клавиш Win+R, в появившемся окне наберите powershell и нажмите ОК для запуска. В появившемся окне наберите ssh Admin@192.168.1.1 и нажмите Enter, затем введите пароль для подключения к маршрутизатору.

PS C:\WINDOWS\system32> ssh Admin@192.168.1.1
Admin@192.168.1.1's password:

ssh Admin@192.168.1.1 - где Admin это имя пользователя для входа в веб интерфейс/ssh маршрутизатора, а 192.168.1.1 это IP-адрес маршрутизатора. 
Убедитесь, что устройство(ПК, ноутбук) подключен к беспроводному маршрутизатору по Ethernet-порту(LAN) или через Wi-Fi.
Так же убедитесь, что беспроводной маршрутизатор настроен и имеет доступ в интернет.

 

Идем далее, чтобы проверить, что раздел optware смонтировался корректно выполните команду mount | grep opt

[SNR-CPE@/]# mount | grep opt
/dev/sda1 on /opt type ext4 (rw,noatime,data=ordered)

Далее, для установки Entware выполняем в консоли entware_install.sh и дожидаемся завершения установки.
При успешной установке в терминале должно появиться следующее сообщение:

Info: Congratulations!
Info: If there are no errors above then Entware was successfully initialized.
Info: Add /opt/bin & /opt/sbin to your PATH variable
Info: Add '/opt/etc/init.d/rc.unslung start' to startup script for Entware services to start
Info: Found a Bug? Please report at https://github.com/Entware/Entware/issues
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!NEED REBOOT DEVICE BEFORE USE!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

По окончанию установки выполните fs save && reboot для сохранения конфигурации и перезагрузки маршрутизатора.

 

Установка и конфигурация OpenVPN

Подключитесь по SSH к маршрутизатору и перейдите в каталог /opt/bin/ выполнив команду cd /opt/bin/

Проверьте наличие обновляемых пакетов с помощью команды ./opkg update

[SNR-CPE@/opt/bin]# ./opkg update
Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz
Updated list of available packages in /opt/var/opkg-lists/entware

Для установки OpenVPN клиента выполните команду ./opkg install openvpn-openssl

[SNR-CPE@/opt/bin]# ./opkg install openvpn-openssl
Installing openvpn-openssl (2.4.8-1) to root...
Downloading http://bin.entware.net/mipselsf-k3.4/openvpn-openssl_2.4.8-1_mipsel-3.4.ipk
Configuring openvpn-openssl.

Далее понадобится файл RW-FS с предварительной конфигурацией OpenVPN, для примера прикладываю архив который используем в качестве шаблона OpenVPN SNR-CPE.tar.bz2. Для загрузки скачанного архива перейдите в веб-интерфейс. Затем перейдите в меню  Администрирование(1) - Управление(2). В блоке RW-FS нажмите Выбрать файл(3) и выберите скачанный архив, после выбора нажмите Загрузить(4). В процессе загрузки RW-FS архива маршрутизатор будет перезагружен

3.thumb.png.b811709fd97841d6ebcd1bce960fa191.png

 

После перезагрузки повторно подключитесь к маршрутизатору, через WinSCP (или любым другим удобным способом).

 

Откройте WinSCP, окне выберите протокол SCP,  введите Имя хоста: 192.168.1.1, Имя пользователя: Admin и пароль, затем нажмите Войти

 

Перейдите в каталог с конфигурацией OpenVPN, каталог находится: /opt/etc/openvpn

 

В каталоге по умолчанию расположено два файла: openvpn.conf и userpass.conf.

openvpn.conf - содержит в себе основную конфигурацию для подключения к серверу;
userpass.conf - содержит в себе имя пользователя и пароль.


В первую очередь необходимо подготовить файл userpass.conf для нажмите правой кнопкой мыши по файлу, в появившемся окне выберите Править, затем Править.

Откроется текстовый редактор, укажите в первой строке имя пользователя, а во второй пароль. Пример содержимого файла представлен ниже:

Username
Password

Нажмите сочетание клавиш Ctrl+S для сохранения, затем файл с конфигурацией можно закрыть.

Теперь нужно подготовить конфигурационный файл openvpn.conf, для этого так же откройте его в текстовом редакторе.

 

В моем случаен конфигурационный файл имеет расширение .opvn, и имеет в себе все ключи и сертификаты, по этому пойдем по пути моего примера. Откройте файл с помощью текстового редактора(Блокнот или Notepad ++). Скопируйте текст из файла с расширением .opvpn в конфигурационный файл VPN на SNR-CPE - /opt/etc/openvpn/openvpn.conf

dev tun
persist-tun
persist-key
cipher AES-256-CBC
ncp-ciphers AES-256-GCM:AES-128-GCM
auth SHA512
tls-client
client
resolv-retry infinite
remote test.domain.ru 1194 udp
verify-x509-name "test.domain.ru" name
auth-user-pass /opt/etc/openvpn/userpass.conf
remote-cert-tls server
<ca>
-----BEGIN CERTIFICATE-----
Вставьте содержимое корневого сертификата
-----END CERTIFICATE-----
</ca>
 
<cert>
-----BEGIN CERTIFICATE-----
Вставьте содержимое открытого ключа
-----END CERTIFICATE-----
</cert>
 
<key>
-----BEGIN PRIVATE KEY-----
Вставьте содержимое закрытого ключа
-----END PRIVATE KEY-----
</key>
 
key-direction 1
 
<tls-auth>
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
Вставьте содержимое TLS ключа для аутентификации
-----END OpenVPN Static key V1-----
</tls-auth>

Обратите внимание на комментарии который вставлены в примере файла openvpn.conf

 

После внесения необходимых изменений сохраните файл и закройте.

Для запуска службы OpenVPN, подключитесь по SSH и выполните /opt/etc/init.d/S20openvpn start

[SNR-CPE@]# /opt/etc/init.d/S20openvpn start
Starting openvpn...                  done.

Для проверки текущего статуса выполните /opt/etc/init.d/S20openvpn check

[SNR-CPE@]# /opt/etc/init.d/S20openvpn check
Checking openvpn...                  alive.

Статус "alive" говорит о том, что служба запущена корректно.
Возможный статус "dead" говорит о том, что в конфигурации допущена ошибка, или введены неверные данные для подключения к серверу VPN. Проверьте правильность конфигурации и перезапустите службу командой /opt/etc/init.d/S20openvpn restart

 

Если все сделано правильно, то при выполнении команды ifconfig tun0 мы увидим интерфейс tun0 с присвоенными сервером сетевыми реквизитами:

tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:172.16.100.10 P-t-P:172.16.100.29 Mask:255.255.254.0
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
[SNR-CPE@/]#

На этом настройка OpenVPN завершена, теперь можно пользоваться локальными сервисами в удаленном офисе :)

Edited by megahertz
  • 3 months later...
Posted (edited)

megahertz

Настраивал роутер по Вашей инструкции, закинул файл conf antizapret-tcp. Но роутер всё равно не открывает сайты. Что может быть? Возможно надо как то редактировать этот файл?

antizapret-tcp.ovpn

 

 

Edited by GziNN
Posted
В 05.02.2021 в 12:38, GziNN сказал:

megahertz

Настраивал роутер по Вашей инструкции, закинул файл conf antizapret-tcp. Но роутер всё равно не открывает сайты. Что может быть? Возможно надо как то редактировать этот файл?

antizapret-tcp.ovpn

 

 

 

А что за файл вы взяли? его в инструкции нет

Posted
В 09.02.2021 в 09:13, VillsEK сказал:

А что за файл вы взяли? его в инструкции нет

В инструкции пример файла. Я вставил свой, но не пойму какие строчи нужно отредактировать.

Posted

:) Производитель будет неспокоен :) И если учесть, что всякий впн-сервер немного кушает и память и проц в основном, то можно одним анекдотом все охарактеризовать "крупная фирма возьмет в аренду степлер".

Posted
В 13.02.2021 в 08:13, GziNN сказал:

В инструкции пример файла. Я вставил свой, но не пойму какие строчи нужно отредактировать.

Доброго дня. На сайте проекта есть тема с подобной проблемой, возможно помогут советы из темы. 

https://ntc.party/t/openvpn-keenetic-viva/853

По редактированию самого файла лучше обратиться на форум проекта ;-)

  • 1 year later...
  • 7 months later...
  • 2 years later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.