megahertz Posted October 12, 2020 Posted October 12, 2020 (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). Откроется меню форматирования, в Partition Label впишите название USB-накопителя optware(1), выберите File System Ext4(2) и нажмите OK(3), затем нажмите Apply в левой боковой панели для применения и запуска настроек форматирования(4). После завершения форматирования, отключите 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 архива маршрутизатор будет перезагружен После перезагрузки повторно подключитесь к маршрутизатору, через 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 October 12, 2020 by megahertz Вставить ник Quote
GziNN Posted February 5, 2021 Posted February 5, 2021 (edited) megahertz Настраивал роутер по Вашей инструкции, закинул файл conf antizapret-tcp. Но роутер всё равно не открывает сайты. Что может быть? Возможно надо как то редактировать этот файл? antizapret-tcp.ovpn Edited February 5, 2021 by GziNN Вставить ник Quote
VillsEK Posted February 9, 2021 Posted February 9, 2021 В 05.02.2021 в 12:38, GziNN сказал: megahertz Настраивал роутер по Вашей инструкции, закинул файл conf antizapret-tcp. Но роутер всё равно не открывает сайты. Что может быть? Возможно надо как то редактировать этот файл? antizapret-tcp.ovpn А что за файл вы взяли? его в инструкции нет Вставить ник Quote
GziNN Posted February 13, 2021 Posted February 13, 2021 В 09.02.2021 в 09:13, VillsEK сказал: А что за файл вы взяли? его в инструкции нет В инструкции пример файла. Я вставил свой, но не пойму какие строчи нужно отредактировать. Вставить ник Quote
YuryD Posted February 13, 2021 Posted February 13, 2021 :) Производитель будет неспокоен :) И если учесть, что всякий впн-сервер немного кушает и память и проц в основном, то можно одним анекдотом все охарактеризовать "крупная фирма возьмет в аренду степлер". Вставить ник Quote
Rurmanov Posted February 17, 2021 Posted February 17, 2021 В 13.02.2021 в 08:13, GziNN сказал: В инструкции пример файла. Я вставил свой, но не пойму какие строчи нужно отредактировать. Доброго дня. На сайте проекта есть тема с подобной проблемой, возможно помогут советы из темы. https://ntc.party/t/openvpn-keenetic-viva/853 По редактированию самого файла лучше обратиться на форум проекта ;-) Вставить ник Quote
switcher-hm Posted March 6, 2022 Posted March 6, 2022 А как получить шаблон RW-FS для настройки OpenVPN? Архив, к сожалению, не доступен по ссылке. Вставить ник Quote
Rurmanov Posted March 14, 2022 Posted March 14, 2022 Добрый день. Странно, по ссылке скачался шаблон. Прикладываю. OpenVPN SNR-CPE.tar.bz2 Вставить ник Quote
enbug Posted March 18, 2022 Posted March 18, 2022 А есть инструкция как поднять сервер опенвпн на роутере? Вставить ник Quote
cocedreka Posted October 23, 2022 Posted October 23, 2022 (edited) DEL Edited October 23, 2022 by cocedreka удаление Вставить ник Quote
Aleks1992 Posted February 9, 2025 Posted February 9, 2025 (edited) Извините за некро. Не могу скачать архив. У кого-нибудь есть? Edited February 9, 2025 by Aleks1992 Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.