[Entware] Поднимаем OpenVPN сервер

Используем пакеты, расширяющие возможности оборудования
Аватара пользователя
Zyxmon
Администратор
Сообщения: 1289
Зарегистрирован: 09 авг 2015, 14:33

Сообщение Zyxmon » 19 авг 2015, 14:59

Тема на старом форуме - http://forum.zyxmon.org/topic110-openvpn-keenetic.html

Полезные русскоязычные ресурсы:
OpenVPN (только F.A.Q без обсуждений)
OpenVPN (тема для обсуждений и консультаций)

Внимание. Репозиторий Entware-ng не содержит модулей ядра. Ищите нужный для работы модуль tun.ko в папке маршрутизатора /lib/modules/.... или в интернете.
Отредактируйте скрипт запуска OpenVPN для загрузки модуля ядра.

Аватара пользователя
Zyxmon
Администратор
Сообщения: 1289
Зарегистрирован: 09 авг 2015, 14:33

OpenVPN - поднимаем на маршрутизаторе

Сообщение Zyxmon » 31 янв 2016, 13:30

Для кинетиков с NDMS V2 скрипт запуска выглядит так
скрипт NDMS V2

Код: Выделить всё

~ # cat /opt/etc/init.d/S20openvpn
#!/bin/sh
#
# Startup script for openvpn server
#

# Make sure IP forwarding is enabled
/opt/bin/echo 1 > /proc/sys/net/ipv4/ip_forward

# Make device if not present (not devfs)
if ( [ ! -c /dev/net/tun ] ) then
  # Make /dev/net directory if needed
  if ( [ ! -d /dev/net ] ) then
        mkdir -m 755 /dev/net
  fi
  mknod /dev/net/tun c 10 200
fi

# Make sure the tunnel driver is loaded
if ( !(lsmod | grep -q "^tun") ); then
        insmod /lib/modules/2.6.36/tun.ko
fi

ENABLED=yes
PROCS=openvpn
ARGS="--daemon --cd /opt/etc/openvpn --config openvpn.conf"
PREARGS=""
DESC=$PROCS
PATH=/opt/sbin:/opt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

. /opt/etc/init.d/rc.func
Свернуть

А для NDMS V1 - так
скрипт NDMS V1

Код: Выделить всё

#!/bin/sh
#
# Startup script for openvpn server
#

# Make sure IP forwarding is enabled
echo 1 > /proc/sys/net/ipv4/ip_forward

# Make device if not present (not devfs)
if ( [ ! -c /dev/net/tun ] ) then
  # Make /dev/net directory if needed
  if ( [ ! -d /dev/net ] ) then
        mkdir -m 755 /dev/net
  fi
  mknod /dev/net/tun c 10 200
fi

# Make sure the tunnel driver is loaded
if ( !(lsmod | grep -q "^tun") ); then
        insmod /lib/modules/current/tun.ko
fi

ENABLED=yes
PROCS=openvpn
ARGS="--daemon --cd /opt/etc/openvpn --config openvpn.conf"
PREARGS=""
DESC=$PROCS
PATH=/opt/sbin:/opt/bin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

. /opt/etc/init.d/rc.func
Свернуть

Настройки, как видим из скрипта, лежат в файле /opt/etc/openvpn/openvpn.conf
Дополнительные правила firewall в случае NDMS V2 нужно помещать в скрипт в папке
/opt/etc/ndm/netfilter.d/
а для NDMS V1 в
/opt/etc/firewall.d/

kpox
Сообщения: 15
Зарегистрирован: 15 окт 2015, 10:30

Сообщение kpox » 01 фев 2016, 14:03

Под entware-ng на NDMS v.2 для себя сделал такой скрипт https://github.com/kpoxxx/openvpn-install
Это переделанный скрипт отсюда https://github.com/Nyr/openvpn-install/blob/master/openvpn-install.sh
Может кому пригодится. Предполагается, что пакет openvpn уже установлен.
Далее делаем..

Код: Выделить всё

opkg update
opkg install bash wget openssl-util
wget --no-check-certificate https://raw.githubusercontent.com/kpoxxx/openvpn-install/master/openvpn-install.sh -O openvpn-install.sh && bash openvpn-install.sh

Получаем готовые ключи (генерируются на роутере долго !!!), конфигурацию сервера и клиента. Повторным запуском можно добавлять клиентов или отзывать сертификаты. Правила iptables тоже прописываются.
Последний раз редактировалось kpox 01 фев 2016, 14:23, всего редактировалось 1 раз.

Аватара пользователя
Zyxmon
Администратор
Сообщения: 1289
Зарегистрирован: 09 авг 2015, 14:33

Сообщение Zyxmon » 01 фев 2016, 14:11

Вы бы добавали ссылочку на первоисточник, который использовали - https://github.com/Nyr/openvpn-install/ ... install.sh

А то некрасиво выходит.

PS Первоисточник я сам использовал неоднократно на VPS'ах, для которых он и создавался. Даже на них первый запуск (генерация ключей) идет долго. А на роутере сколько - час, два часа?

PS Сам давно хотел переделать этот скрипт, да руки не доходили. Подозреваю, что нужно еще и wget установить (opkg install wget) для скачивания по https. А если установить сертификаты (opkg install ca-certificates) заранее, то и флаг не нужен.

kpox
Сообщения: 15
Зарегистрирован: 15 окт 2015, 10:30

Сообщение kpox » 01 фев 2016, 14:21

Zyxmon писал(а):Источник цитаты Вы бы добавали ссылочку на первоисточник, который использовали - https://github.com/Nyr/openvpn-install/ ... install.sh

Вообще-то на гитхабе показывается "forked from Nyr/openvpn-install", но ссылку на первоисточник добавлю.

Аватара пользователя
Zyxmon
Администратор
Сообщения: 1289
Зарегистрирован: 09 авг 2015, 14:33

Сообщение Zyxmon » 01 фев 2016, 14:29

Можно скрипт дальше развивать. Анализировать /opt/etc/opkg.conf (есть там строка keenopt или нет) и в зависимости от этого ставить пакеты. В том числе и нужную версию openvpn.

kpox
Сообщения: 15
Зарегистрирован: 15 окт 2015, 10:30

Сообщение kpox » 01 фев 2016, 14:45

Zyxmon писал(а):Источник цитаты PS Сам давно хотел переделать этот скрипт, да руки не доходили. Подозреваю, что нужно еще и wget установить (opkg install wget) для скачивания по https. А если установить сертификаты (opkg install ca-certificates) заранее, то и флаг не нужен.

Согласен. Похоже система не совсем чистая была, поставил его сразу при установке entware-ng и сейчас не проверил.
P.S. не забыл я его :) он там был opkg install bash wget openssl-util

Vladimir
Сообщения: 38
Зарегистрирован: 28 янв 2016, 13:07

Сообщение Vladimir » 01 фев 2016, 19:49

Помогите разобраться с openvpn сервером. При запуске выдает ошибку
Feb 01 19:47:31openvpn[974]
Socket Buffers: R=[87380->87380] S=[16384->16384]
Feb 01 19:47:32openvpn[974]
TUN/TAP device tun0 opened
Feb 01 19:47:32openvpn[974]
TUN/TAP TX queue length set to 100
Feb 01 19:47:32openvpn[974]
do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Feb 01 19:47:32openvpn[974]
/sbin/ifconfig tun0 10.8.0.1 pointopoint 10.8.0.2 mtu 1500
Feb 01 19:47:32openvpn[974]
Linux ifconfig failed: could not execute external program
Feb 01 19:47:32openvpn[974]
Exiting due to fatal error

Аватара пользователя
Zyxmon
Администратор
Сообщения: 1289
Зарегистрирован: 09 авг 2015, 14:33

Сообщение Zyxmon » 01 фев 2016, 21:00

Vladimir писал(а):Источник цитаты Linux ifconfig failed: could not execute external program

На правах гадалки - у Вас кинетик с ndms v2 и Вы установили "стандартый" openvpn, а нужно специальный для v2!
И разберитесь, пожалуйста, с кодами форума (bbcode)!

Vladimir
Сообщения: 38
Зарегистрирован: 28 янв 2016, 13:07

Сообщение Vladimir » 01 фев 2016, 21:48

Спасибо за ответ.Openvpn запустил,


Вернуться в «Entware/Qnapware/Optware/Zyxware - обсуждаем репозитории пакетов»

Кто сейчас на конференции

Всего 0 посетителей :: 0 зарегистрированных, 0 скрытых и 0 гостей (основано на активности пользователей за последние 5 минут)
Больше всего посетителей (121) здесь было 18 май 2016, 18:19

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей