Jump to content

Recommended Posts

Используйте openvpn с openssl.

А у вас лежит файл rc.common в каталоге etc ?

Если нет, то скопируйте его на в флешку в etc/rc.common из каталога сборки bin/rt***/packages/base-files_****/data/etc

Link to comment
Share on other sites

  • 1 month later...

Пытаюсь запустить на Giga2 openvpn. Установил openvpn-openssl. При запуске

/opt/etc/init.d/openvpn start

выдает ошибку:

/etc/rc.common: line 80: list_contains: not found
Syntax: /opt/etc/init.d/openvpn [command]

Available commands:
       start   Start the service
       stop    Stop the service
       restart Restart the service

Link to comment
Share on other sites

Спасибо за подсказку, неопытному пользователю трудно разобраться, тем не менее подправил скрипт и запустил openvpn клиент, и новая ошибка:

....
Tue Nov 17 10:12:53 2015 TUN/TAP device tun0 opened
Tue Nov 17 10:12:53 2015 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Tue Nov 17 10:12:53 2015 /sbin/ifconfig tun0 192.168.99.142 pointopoint 192.168.99.141 mtu 1500
Tue Nov 17 10:12:53 2015 Linux ifconfig failed: could not execute external program
Tue Nov 17 10:12:53 2015 Exiting due to fatal error

Link to comment
Share on other sites

Спасибо за подсказку, неопытному пользователю трудно разобраться, тем не менее подправил скрипт и запустил openvpn клиент, и новая ошибка:

....
Tue Nov 17 10:12:53 2015 TUN/TAP device tun0 opened
Tue Nov 17 10:12:53 2015 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Tue Nov 17 10:12:53 2015 /sbin/ifconfig tun0 192.168.99.142 pointopoint 192.168.99.141 mtu 1500
Tue Nov 17 10:12:53 2015 Linux ifconfig failed: could not execute external program
Tue Nov 17 10:12:53 2015 Exiting due to fatal error

Очень похоже на эту проблему.

Может действительно лучше добавить в прошивку четыре симлинка по примеру симлнков из /etc?

  • /sbin/ifconfig -> /opt/sbin/ifconfig,
  • /sbin/route -> /opt/sbin/route,
  • /usr/sbin/ip -> /opt/sbin/ip,
  • /sbin/netstat -> /opt/sbin/netstat

Link to comment
Share on other sites

Может действительно лучше добавить в прошивку четыре симлинка по примеру симлнков из /etc?

  • /sbin/ifconfig -> /opt/sbin/ifconfig,
  • /sbin/route -> /opt/sbin/route,
  • /usr/sbin/ip -> /opt/sbin/ip,
  • /sbin/netstat -> /opt/sbin/netstat

Это не возможно в принципе, т.к. прошивка может собираться с режимом отладки и этими утилитами. Проще подправить пути в сборке самого openvpn, что и будет сделано в ближайшее время.

Link to comment
Share on other sites

Проще подправить пути в сборке самого openvpn, что и будет сделано в ближайшее время.

Как я понял, надо переустановить пакет, переустановил, но по прежнему та же ошибка, или еще не подправили?

Link to comment
Share on other sites

  • 1 month later...

Может есть идеи

подключаюсь

client

dev tun

proto udp

remote XXX.XXX.XXX.XXX 8194

ca ca.crt

cert xxx.crt

key xxx.key

tls-client

tls-auth ta.key 1

remote-cert-tls server

comp-lzo

persist-key

persist-tun

Получаю ошибку

TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)

TLS Error: TLS handshake failed

если более детально

us=796996 UDPv4 WRITE [42] to [AF_INET]xxx.xxx.xxx.xxx:8194: P_CONTROL_HARD_RESET_CLIENT_V2 kid=0 sid=13198723 22d33aa2 tls_hmac=98d07c17 cbc2ce51 9c970a4c b456ecd7 6be27bbc pid=[ #1 / time = (1451459353) Wed Dec 30 10:09:13 2015 ] [ ] pid=0 DATA

us=797589 UDPv4 write returned 42

us=904347 event_wait returned 0

us=9337 event_wait returned 0

us=9740 event_wait returned 1

если

в сервере и клиенте поменять на tcp то работает

nc проверил по UDP связь есть

есть мнение что связано это, что выход у модема через pppoe

Link to comment
Share on other sites

Можно попробовать через опцию

--fragment max
Enable internal datagram fragmentation so that no UDP datagrams are sent which are larger than max bytes.

включить внутреннюю фрагментацию UDP, скажем добавить в конфиг

fragment 1280 

на клиенте и сервере.

Если поможет, то нужно подобрать максимальное значение, при котором связь еще есть.

Link to comment
Share on other sites

немного погуглил, есть проблема с некоторыми роутерами такая.

походу локальный дефолтный порт udp 1194 заюзать не получается

решается параметром на клиенте lport - любой кроме 1194

Link to comment
Share on other sites

  • 2 weeks later...

Пакета openvpn нет, есть два с суффиксами.

Заметил, что используются странные пути для openvpn-openssl:

/opt/etc/config - обычно же /opt/etc/openvpn:

cat /opt/etc/init.d/S01openvpn 
#!/bin/sh /etc/rc.common

. /opt/lib/functions.sh


OPENVPN="/opt/usr/sbin/openvpn"
SERVER_CONF="/opt/etc/config/server.conf"
CLIENT_CONF="/opt/etc/config/client.conf"

start(){
       service_start $OPENVPN --config  $SERVER_CONF &
}

stop(){
       service_stop $OPENVPN
}

Однако, в /opt/lib/upgrade/keep.d/openvpn:

cat /opt/lib/upgrade/keep.d/openvpn
/opt/etc/openvpn/

В конфиге указан путь к ключам /opt/etc/openvpn/

Еще строки повторены несколько раз в /opt/lib/upgrade/keep.d/openvpn-openssl

cat /opt/lib/upgrade/keep.d/openvpn-openssl 
/opt/etc/config/openvpn
/opt/etc/config/client.conf
/opt/etc/config/server.conf
/opt/etc/config/openvpn
/opt/etc/config/client.conf
/opt/etc/config/server.conf
/opt/etc/config/openvpn
/opt/etc/config/client.conf
/opt/etc/config/server.conf

Что-то явно не так сконфигурировано.

Link to comment
Share on other sites

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

/opt/lib/upgrade/keep.d вам вообще не нужен, это нужно только openwrt и оставлено для совместимости сборки пакетов.

Link to comment
Share on other sites

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

/opt/lib/upgrade/keep.d вам вообще не нужен, это нужно только openwrt и оставлено для совместимости сборки пакетов.

На github я смотрю, есть коммиты, добавляющие /opt, может там сразу и config поменять на openvpn?

Link to comment
Share on other sites

Когда стартует openvpn, в логах кинетика есть строки, но позже уже вывод в журнал не работает. Где расположен журнал кинетика, или как можно настроить так, чтобы openvpn рисовал сообщения в журнал кинетика? Спасибо.

Link to comment
Share on other sites

Когда стартует openvpn, в логах кинетика есть строки, но позже уже вывод в журнал не работает. Где расположен журнал кинетика, или как можно настроить так, чтобы openvpn рисовал сообщения в журнал кинетика? Спасибо.

Журнал кинетика — это syslog.

Link to comment
Share on other sites

Отлично, openvpn работает на Keenetic Ultra II. Протестировал, c AES-256-CBC разгоняется до 30 Мбит/с занимая процессор на 25 % (т.е. видимо, максимум).

Link to comment
Share on other sites

Отлично, openvpn работает на Keenetic Ultra II. Протестировал, c AES-256-CBC разгоняется до 30 Мбит/с занимая процессор на 25 % (т.е. видимо, максимум).

Там два двухпоточных MIPS-ядра, т.е. 25% — это 100% на одном потоке.

Link to comment
Share on other sites

  • 2 weeks later...

а может кто-нибудь написать подробную инструкцию для "чайников"? )

openvpn довольно востребованная тема, прямо сразу много плюсов в карму

Link to comment
Share on other sites

Можно добавить опцию --daemon или --syslog, чтобы openvpn выводил сообщения в syslog, и они оказывались в веб-морде

у меня ни то, ни другое не работает - openvpn всё равно пишет в свой внутренний лог, а не в журнал кинетика

Link to comment
Share on other sites

у меня ни то, ни другое не работает - openvpn всё равно пишет в свой внутренний лог, а не в журнал кинетика

Какой другой лог? Только что проверил, подключился и в логах в веб морде появились сообщения

Link to comment
Share on other sites

Какой другой лог? Только что проверил, подключился и в логах в веб морде появились сообщения

вот этот /opt/etc/openvpn/openvpn.log

похоже не работает потому, что у меня V2+Entware-ng

Link to comment
Share on other sites

а может кто-нибудь написать подробную инструкцию для "чайников"? )

openvpn довольно востребованная тема, прямо сразу много плюсов в карму

вот достаточно подробный ман http://keenetic.zyxmon.org/wiki/doku.ph ... ka_openvpn , за исключением того, что написан для V1+zyxware

Link to comment
Share on other sites

  • 2 weeks later...

честно говоря ман действительно подробный но не соответствует действительности ни на грамм.

сертификаты в итоге сгенерить удалось, поставить Entware тоже, вроде даже Openvpn-zyx поставился. но никаких папок куда можно подложить сертификаты и подправить конфиг я через mc найти не могу на примонтированной флешке.

Link to comment
Share on other sites

Да, все папки и конфиги создаются вручную

чтобы не геморроиться с созданием сертификатов - можно запустить openvpn в режиме pre-shared key, в этом режиме к серверу может подключится только 1 клиент (в случае объединения рабочей и домашней сети больше и не требуется)

генерируем ключ:

openvpn --genkey --secret static.key

он будет лежать в /opt/root/, надо скопировать его в /opt/etc/openvpn/ и на клиента

простейшие конфиги:

[more]Сервер

dev tun

ifconfig 10.8.0.1 10.8.0.2

secret static.key

keepalive 10 60

ping-timer-rem

persist-tun

persist-key

Клиент

remote myremote.mydomain

dev tun

ifconfig 10.8.0.2 10.8.0.1

secret static.key

keepalive 10 60

ping-timer-rem

persist-tun

persist-key[/more]

[spoiler=]сегодня проверил одновременный запуск нескольких демонов openvpn в режиме pre-shared key (отдельно сервер и отдельно клиент)

всё работает, ман накидаю попозже, т.к. не проверена работа подключения к серверу "снаружи" (из домашней сети всё норм)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

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.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...