PDA

Bekijk de volledige versie : OpenVPN в составе прошивки от энтузиастов



ryzhov_al
11-02-2011, 11:48
Коллеги, а есть ли смысл собрать openvpn тулчейном энтузиастов? Это позволит:

в будущем (потенциально!) включить openvpn в состав прошивки, как в ряде других *wrt прошивок,
значительно уменьшить объём пакета, что позволит его запихнуть даже в куцый флеш DIR-320.
В частности, если действовать по инструкции из первого поста, openvpn потянет за собой зависимые lzo, openssl и uclibc-opt (2,2Mb). От последнего можно будет отказаться. Если собрать со статической линковкой зависимостей, вообще получится единственный бинарник без каких-либо библиотек. Нажористый, правда, около ~1Мб.
Хотелось бы пустить сетку за длинком в сетку главного офиса при помощи OpenVPN
делал по ветке http://wl500g.info/showthread.php?t=8880,
но после
flashfs save
flashfs commit <- файл на 2мб больше 65кб и не сохраняет во флеш

смотрел другие прошивки dd-wrt, но и там чтоб vpn+3g нужна мега версия которая не входит в 320
1. помогите...

FilimoniC
11-02-2011, 12:04
в будущем (потенциально!) включить openvpn в состав прошивки, как в ряде других *wrt прошивок,
Зачем кому-то OpenVPN внутри прошивки? Провайдеры этот функционал не используют. В общем-то, его никто не использует кроме категории людей с ограниченными возможностями\ресурсами. В офисах VPN на базе OpenVPN не подымают, между высоконагруженными серверами OpenVPN не очень хорошо себя показывает, с виндой он вообще не сильно сдружился, коммуникаторы его не поддерживают почти, бла, бла...


значительно уменьшить объём пакета, что позволит его запихнуть даже в куцый флеш DIR-320. Возвращаясь к 1му вопросу: тем кому действительно нужен OpenVPN, могут купить себе флешку.

ryzhov_al
11-02-2011, 12:30
Зачем кому-то OpenVPN внутри прошивки? Провайдеры этот функционал не используют. В общем-то, его никто не использует кроме категории людей с ограниченными возможностями\ресурсами.Согласно твоей логики, к этой категории надо отнести всех, кто прошивается Tomato и DD-WRT-mega. И все товарищи, ставящие openvpn в основную память.
Давай хотя бы подождём мнения тех, кому это нужно.

Мне кажется, что можно поступить проще: опубликовать скомпилированный пакет и посмотреть будет ли его кто-нибудь скачивать.

FilimoniC
11-02-2011, 13:15
Согласно твоей логики, к этой категории надо отнести всех, кто прошивается Tomato и DD-WRT-mega. И все товарищи, ставящие openvpn в основную память.
Давай хотя бы подождём мнения тех, кому это нужно.

Поясняю. OpenVPN это "взрослая игрушка" набодобии hamachi и ardunio. Профессионально она нигде не используется за редким исключением. Никто не предоставляет сервисов под нее (почти).

Ubuntu - африканское слово, означающее "Я не смог установить Slackware"
OpenVPN - африканское слово, означающее "Я не смог настроить PPTP\L2TP, а еще я бедный и не могу позволить себе нормальный домашний сервер"



Мне кажется, что можно поступить проще: опубликовать скомпилированный пакет и посмотреть будет ли его кто-нибудь скачивать.

Он опубликован. ipkg install openvpn. Howto для него в 3 строки. А люди ежедневно вопят "пАмАгиТи наСтойТь ВПН" и не хотят что либо читать. Значит им это на "поиграть" и не представляет собой какое-то решение, способное сильно улучшить их комфорт\бизнес.

ryzhov_al
11-02-2011, 13:57
Поясняю. OpenVPN это "взрослая игрушка" набодобии hamachi и ardunio. Профессионально она нигде не используется за редким исключением. Совсем неправда. Openvpn широко используется для связи территориально разнесённых офисов в одну локальную сеть в небольших конторах. Причём для этого используются как раз наши роутеры. Настроил и забыл. На своём опыте знаю случай (http://forum.smolensk.ws/viewtopic.php?f=55&t=43632&p=6734389), когда о подобной связке не вспоминали годами.
Что будет плохого в том, что роутеры с нашей прошивкой будут уметь это делать "из коробки"?

ded
11-02-2011, 14:06
Ubuntu - африканское слово, означающее "Я не смог установить Slackware"
OpenVPN - африканское слово, означающее "Я не смог настроить PPTP\L2TP, а еще я бедный и не могу позволить себе нормальный домашний сервер"

Улыбнуло.
Хотя такая категоричность далеко не к месту. В менее цивилизованных, чем Африка странах более актуально другое определение
OpenVPN - русское слово, означающее "Провайдеры любят блокировать GRE, L2TP-сервер на роутере поднимать я не умею, а еще я люблю тишину. "

И вообще, OpenVPN вполне себе используется профессионально... Скажу даже больше, именно профессионально она в основном и используется :)

FilimoniC
11-02-2011, 14:12
Совсем неправда. Openvpn широко используется для связи территориально разнесённых офисов в одну локальную сеть в небольших конторах. Причём для этого используются как раз наши роутеры. Настроил и забыл. На своём опыте знаю случай (http://forum.smolensk.ws/viewtopic.php?f=55&t=43632&p=6734389), когда о подобной связке не вспоминали годами.
Что будет плохого в том, что роутеры с нашей прошивкой будут уметь это делать "из коробки"?

Еще раз. 99% юзерей это не нужно. И для "совместимости" это не нужно. Это "Фича".

Любой системный администратор компании с 2мя офисами осилит настройку OpenVPN "и так", и покукпу 2 флешек (на крайняк, потому что в основную память все влезает). В противном случае он нафиг не нужен.

Что плохого будет: ничего не будет плохого, просто вместо очередного stability-патча будет feature pack, потраченные человекочасы, и в итоге у получится история с MeeGo

Pablo Escobar
11-02-2011, 14:12
OpenVPN - африканское слово, означающее "Я не смог настроить PPTP\L2TP, а еще я бедный и не могу позволить себе нормальный домашний сервер"


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

FilimoniC
11-02-2011, 14:14
Улыбнуло.
Хотя такая категоричность далеко не к месту. В менее цивилизованных, чем Африка странах более актуально другое определение
OpenVPN - русское слово, означающее "Провайдеры любят блокировать GRE, L2TP-сервер на роутере поднимать я не умею, а еще я люблю тишину. "

И вообще, OpenVPN вполне себе используется профессионально... Скажу даже больше, именно профессионально она в основном и используется :)
В ту же степь.. OpenVPN есть, профессионалы его с легкостью настроят.
Для домашних юзеров он не нужен чуть более чем полностью. То есть раз он им не нужен, то нет смысла в рюшечках, web-интерфейсах и прочей мишуре.

Omega
11-02-2011, 20:51
Давай хотя бы подождём мнения тех, кому это нужно.

Мне кажется, что можно поступить проще: опубликовать скомпилированный пакет и посмотреть будет ли его кто-нибудь скачивать.

+1 :cool: Но это имеет смысл только при включении в прошивку -rtn ветки для роутеров с большим флешем ... :)

З.Ы. Если звезды зажигают, значит, это кому-то нужно ... (c) ;)

ryzhov_al
12-02-2011, 14:11
Коллеги, а есть ли смысл собрать openvpn тулчейном энтузиастов? Это позволит
...
значительно уменьшить объём пакета, что позволит его запихнуть даже в маленький флеш.
Статически собранный, не зависящий от доп. библиотек за пределами прошивки openvpn после strip'а и сжатия UPX получился 912Кб:

$ ldd ./openvpn
libdl.so.0 => /lib/libdl.so.0 (0x2aabe000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x2aad1000)
libc.so.0 => /lib/libc.so.0 (0x2aaf0000)
ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x2aaa8000)
$ upx --brute ./openvpn
$ du -h ./openvpn
912K ./openvpn
Размер flashfs на куцей флешке DIR-320 составляет (http://www.wl500g.info/showpost.php?p=204892&postcount=3532):

$ cat /proc/mtd
dev: size erasesize name
mtd0: 00040000 00010000 "boot"
mtd1: 003b0000 00010000 "linux"
mtd2: 002fe26c 00010000 "rootfs"
mtd3: 00010000 00002000 "nvram"
mtd4: 00010000 00010000 "flashfs"
64КБ. Wait, oh shi... (http://lurkmore.ru/OH_SHI--)

Вопрос снят.

В любом случае, одного бинарного файла, приложенного к этому посту, с конфигом из первого поста
темы http://wl500g.info/showthread.php?t=8880 достаточно для запуска openvpn на роутере.

coolo1
05-04-2011, 13:19
по OpenVpn соединены 2 роутера на одном есть интернет(сервер) у него маршруты:


89.107.196.40 10.8.5.1 255.255.255.255 UGH 0 0 0 vlan1
10.20.30.2 * 255.255.255.255 UH 0 0 0 tun0
109.111.24.165 * 255.255.255.255 UH 0 0 0 ppp0
10.0.1.1 10.8.5.1 255.255.255.255 UGH 0 0 0 vlan1
89.107.196.35 10.8.5.1 255.255.255.255 UGH 0 0 0 vlan1
10.8.5.0 * 255.255.255.0 U 0 0 0 vlan1
192.168.3.0 10.20.30.2 255.255.255.0 UG 0 0 0 tun0
192.168.1.0 * 255.255.255.0 U 0 0 0 br0
169.254.0.0 * 255.255.0.0 U 0 0 0 br0
127.0.0.0 * 255.0.0.0 U 0 0 0 lo
default vpn34-165.altai 0.0.0.0 UG 0 0 0 ppp0


настройки фаервола :

iptables -I INPUT -p tcp --dport 5901 -j ACCEPT
iptables -I INPUT -p tcp --dport 2048 -j ACCEPT
iptables -I INPUT -p tcp --dport 1194 -j ACCEPT
iptables -I FORWARD -i br0 -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -o br0 -j ACCEPT
iptables -I INPUT -i tun0 -j ACCEPT
iptables -A POSTROUTING -t nat -o tap0 -j MASQUERADE



Второй роутер - клиент:

фаервол:

iptables -I INPUT 3 -i tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -j ACCEPT
iptables -I FORWARD -o tun0 -j ACCEPT



маршруты

Destination Gateway Genmask
10.20.30.1 * 255.255.255.255 UH 0 0 0 tun0
10.8.5.1 * 255.255.255.255 UH 0 0 0 vlan1
10.8.5.0 * 255.255.255.0 U 0 0 0 vlan1
192.168.3.0 * 255.255.255.0 U 0 0 0 br0
169.254.0.0 * 255.255.0.0 U 0 0 0 br0
127.0.0.0 * 255.0.0.0 U 0 0 0 lo
0.0.0.0 * 0.0.0.0 U 0 0 0 tun0



и на клиенте не появляется интернет
что не так?

PythoNN
01-05-2011, 18:43
Если бы еще сделали энтузиасты настройку OpenVPN клиента через веб-морду + auth-user-pass опцию + когда происходит дисконнект, доступ остается только к серверу(например 111.111.111.111) а ко всему остальному(google.ru)закрывается, LAN при этом должен оставаться.

За такое бы, не просто ящик пива, а целую цистерну :D

Эх, мечты. :(

Arthur_X
05-06-2011, 19:05
OpenVPN используется для объединения локальных сетей через MAN (100Мбит) провайдера.
Хочется максимальной пропускной способности через OpenVPN, до 70-80Мбит/c.
На wl500gpv2 это не реально, уже тестировал.
Какое железо из ASUS`ов посоветуете? А может не из ASUS`ов?

Заранее спасибо.

avokain
14-11-2011, 13:33
Вобщем задача чтобы удаленный комп был в одной локалке с роутером и домашними компами
опенвпн ставил по принципам этой статьи
http://wl500g.info/archive/index.php/t-8880.html

Все запускается все конектится, но не пингуется ни 192.168.1.1 ни домашний комп. с роутера и домашнего компа тоже не пингуется удаленный комп

Пробовал шаманить с iptables но чето ниче не получается , ниче в нем не понимаю ((

Вот что у меня в файле post-firewall


iptables -D INPUT -j DROP
iptables -A INPUT -p tcp --dport **** -j ACCEPT
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport **** -j DNAT --to-destination $4:****
iptables -A INPUT -i tap+ -j ACCEPT
iptables -A FORWARD -i tap+ -j ACCEPT
iptables -I FORWARD -i br0 -o tap+ -j ACCEPT
iptables -I FORWARD -i tap+ -o br0 -j ACCEPT
iptables -A INPUT -j DROP



Стартовый скрипт:


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

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

#Insert tun module into kernel
insmod tun


# Start the openvpn daemon - add as many daemons as you want
/opt/sbin/openvpn --daemon --cd /opt/etc/openvpn --config openvpn.conf

# [EOF]



Конфиг сервера:

daemon
port ****
proto tcp
dev tap0

script-security 2

server-bridge 192.168.1.1 255.255.255.0 192.168.1.150 192.168.1.155
push "redirect-gateway"
push "dhcp-option DNS 192.168.1.1"
push "dhcp-option WINS 192.168.1.1"


ca ca.crt
cert server.crt
key server.key
dh dh1024.pem

client-to-client
keepalive 10 120
comp-lzo
max-clients 2
status openvpn-status.log
log openvpn-all.log
verb 3

AVDEY
17-03-2012, 12:01
Пробую установить openvpn в основную память на роутер RT-N12B1.
Размер раздела tmpfs ну соответственно /opt 14.3M.
Установленный ipkg занимает 1.3М.
uclibc-opt занимает 2.6М
openvpn 10.9M.
Соответственно 1.3+2.6+10.9=14.8М не влазит. Ну и по идее при установке требуется дополнительное место для распаковки пакетов.
Для опыта поставил на WL520GU с флешкой установилось без проблем, все работает.
Собственно вопрос: что можно удалить из пакта uclibc-opt, или какие есть варианты что бы установить? версия прошивки RT-N12B1-1.9.2.7-rtn-r3702.


попробуйте запуск из бинарника ... :) отпишитесь потом о результате ... ;)
А какая разница, с бинарника или в ручную команды вводить? Попробовал, он все равно завис, на скачке пакета ncurses_. Я успешно поднял OpenVPN client на WL520GU, сервер запущен на UBUNTU server


эм, ну тогда прочитайте ещё раз эту тему с самого начала :) нужен только этот бинарник, он занимает всего 912 K ;)
простите, действительно пропустил:

Статически собранный, не зависящий от доп. библиотек за пределами прошивки...
по этому грешил на отсутствие библиотек. Теперь все получилось :). Теперь надо будет протестировать скорость которую этот роутер сможет дать.

Что то рано я радоваться начал. Подключение есть, ping ходит в подсети но при попытке открыть расшареный ресурс или http:// страницу роутер безвозвратно зависает, помогает только выключение питания.
Есть какие то соображения из за чего?

Inmate007
27-04-2012, 16:15
Нужен шлюз для openvpn, помогите с выбором:)
Выбираю из RT-N10U или RT-N12 b/c, других более менее вариантов соотношения цена производительность не нашел.

Самое странное http://code.google.com/p/wl500g/wiki/Devices
здесь указана флешка у n12b1 8Mb, на сайте dd-wrt 4Mb.

Процессоры у них одинаковые, USB не надо, 12-ый дешевле 10-го.
Интересно как поведет себя разогнанный rt-n10u, дешевый rt-n10.
в wiki верно ли указано, что у RT-N12b1 память DDR ? Если так, то думаю лучше RT-N12.

Сравнил OpenVPN ... DD-WRT, клиентом, udp, BF-CBC, без сжатия. Сервер pfsense.

WNR3500L = 1000Kb/s, 100% CPU openvpn
DIR-320 = 650Kb/s, 100% CPU openvpn
WL-500G V2 = 650Kb/s, 100% CPU openvpn
WR1043ND = 770Kb/s, 50% CPU openvpn (ADSL ограничил скорость)
RT-N13U = 850Kb/s, 70% CPU openvpn (ограничение внешки)

------------------------------------
RTFM: Маршрутизаторы Asus с прошивкой "от энтузиастов" (http://www.hub.ru/wiki/%D0%9C%D0%B0%D1%80%D1%88%D1%80%D1%83%D1%82%D0%B8%D 0%B7%D0%B0%D1%82%D0%BE%D1%80%D1%8B_Asus_%D0%BD%D0% B0_%D0%BA%D0%BE%D1%82%D0%BE%D1%80%D1%8B%D1%85_%D0% BF%D1%80%D0%BE%D0%B2%D0%B5%D1%80%D0%B5%D0%BD%D0%B0 _%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0_%D0%BF%D1%80 %D0%BE%D1%88%D0%B8%D0%B2%D0%BA%D0%B8_%22%D0%BE%D1% 82_%D1%8D%D0%BD%D1%82%D1%83%D0%B7%D0%B8%D0%B0%D1%8 1%D1%82%D0%BE%D0%B2%22) :cool:
http://wl500g.info/showthread.php?28297-Asus-RT-N10U-с-прошивкой-от-энтузиастов
http://wl500g.info/showthread.php?28373-Новый-роутер-Asus-RT-N12-B1-C1

YVM
28-04-2012, 17:28
OpenVPN админы действительно в офисе использовать отказываются.
Но это пока единственное полноценное соединение на существующей прошивке т.к. IPSec поднять ядро не позволяет. Было бы очень уместным в прошивке.
Настроить вебморду может любой продвинутый юзер в телефонном режиме, а вот настроить через SSH...

ryzhov_al
28-04-2012, 17:54
Помимо возрастания размера прошивки на...

$ ldd /opt/bin/openvpn | awk "{print \$3}" | xargs du -hL
312K /opt/lib/libssl.so.1.0.0
1,4M /opt/lib/libcrypto.so.1.0.0
120K /opt/lib/liblzo2.so.2
...
$ du -hs /opt/bin/openvpn
336K /opt/bin/openvpn
...на ~2,2Мб, ещё и необходимо провести работу по допиливанию web-интерфейса. Возьмётесь помочь?

ЗЫ другие потенциальные для включения в прошивку программы потребуют во флеше следующий объём:

DLNA-сервер/IPTV плейер:

$ ldd /opt/bin/xupnpd | awk "{print \$3}" | xargs du -hL
196K /opt/lib/liblua.so.5.1.4
...
$ du -hs /opt/bin/xupnpd
68K /opt/bin/xupnpd

~260кб для xupnpd. Очень может быть, так как у него свой собственный web-интерфейс,

torrent-клиент:

$ ldd /opt/bin/transmission-daemon | awk "{print \$3}" | xargs du -hL
268K /opt/lib/libevent-2.0.so.5
40K /opt/lib/libminiupnpc.so.8
16K /opt/lib/librt.so.0
304K /opt/lib/libcurl.so.4
312K /opt/lib/libssl.so.1.0.0
1,4M /opt/lib/libcrypto.so.1.0.0
84K /opt/lib/libz.so.1
...
$ du -hs /opt/share/transmission/
888K /opt/share/transmission/
$ du -hs /opt/bin/transmission-daemon
412K /opt/bin/transmission-daemon
~3,8Мб для transmission, включая собственный web-интерфейс.

защита от DNS-спуфинга:

$ du -hs /opt/sbin/dnscrypt-proxy
396K /opt/sbin/dnscrypt-proxy

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

Hohmach
28-04-2012, 19:05
Самое странное http://code.google.com/p/wl500g/wiki/Devices
здесь указана флешка у n12b1 8Mb, на сайте dd-wrt 4Mb.

4Mb у rt-n12 a02, у rt-n12 b1 флеш 8Mb

Inmate007
29-04-2012, 16:19
4Mb у rt-n12 a02, у rt-n12 b1 флеш 8Mb

Уже разобрался что у них, спасибо.

Использовал кто нибудь для OpenVPN rt-n10u, rt-n12b,c, rt-n10 ?
Как они по производительности?
Надеюсь не хуже "Broadcom BCM5354 chip rev 3". Особенно интересно rt-n10(без U) с его 300MHz и ценой !

DarkForce
09-05-2012, 09:11
Добавьте, пожалуйста, в веб-морду возможность прицеплять OpenVPN сертификаты.
Мною, на работе роутер юзается как точка для создания и поддержания туннеля между подразделениями, на данный момент OpenVPN настраивается через последовательность:
1. Перепрошивка.
2. Сброс в дефолт.
3. Прошивка flashfs.
4. Прошивка конфига.
5. Допиливание настроек подсети и пр.
6. Запихивание openvpn сертификатов через WinSCP - как раз неудобный момент, и с ним больше всего возни.

PS. В вышеописанном случае OpenVPN ставится в основную память роутера, сертификаты кладутся в /usr/local/root/vpn (естественно, что логин на точку меняется на root)
Если нет такой технической возможности, то объясните, пожалуйста, как можно сократить затраты времени на 6 пункт путем скриптов, или иной автоматизации.

MercuryV
09-05-2012, 21:35
Добавьте, пожалуйста, в веб-морду ...
Я бы не стал на это рассчитывать в ближайшее время, почитать на тему (http://wl500g.info/showthread.php?12048-%C2%E5%E1-%E8%ED%F2%E5%F0%F4%E5%E9%F1-%EF%F0%EE%F8%E8%E2%EA%E8)

6. Запихивание openvpn сертификатов через WinSCP - как раз неудобный момент, и с ним больше всего возни а с чем именно "возьня"? если не нравится именно WinSCP как GUI приложение, можно воспользоваться в среде Windows консольным PSCP (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html)
Для себя я бы сделал даже так, скорее всего: временно разместил бы файлы сертификатов на любом подконтрольном веб-сервере, во время конфигурации роутера из терминальной сессии помимо всего прочего выполнил бы

$ /usr/bin/wget http://адрес_файла_сертификата -P /usr/local/root/vpn

сертификаты кладутся в /usr/local/root/vpn (естественно, что логин на точку меняется на root)
Пусть меня поправят, если я ошибаюсь, но /usr/local/root существует и при логине != root

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

DarkForce
13-05-2012, 20:24
Я бы не стал на это рассчитывать в ближайшее время, почитать на тему (http://wl500g.info/showthread.php?12048-%C2%E5%E1-%E8%ED%F2%E5%F0%F4%E5%E9%F1-%EF%F0%EE%F8%E8%E2%EA%E8)
а с чем именно "возьня"? если не нравится именно WinSCP как GUI приложение, можно воспользоваться в среде Windows консольным PSCP (http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html)
Для себя я бы сделал даже так, скорее всего: временно разместил бы файлы сертификатов на любом подконтрольном веб-сервере, во время конфигурации роутера из терминальной сессии помимо всего прочего выполнил бы

Пусть меня поправят, если я ошибаюсь, но /usr/local/root существует и при логине != root

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

1. Хочется сделать максимально комфортно для непосвященных пользователей.
2. На веб класть сертификаты нельзя (wget) по соображениям безопасности, плюс это опять же, требуется вмешательство сотрудника, с приличным доступом, тогда как нужен пункт 1.
3. Насчет !=root - спорить не буду.
4. Речь идет именно о настройке огромного количества устройств)))

Также хочется добавить что ни конфиг и flashfs не сохраняет в себе страничку настройки 3G Модема.

MercuryV
13-05-2012, 20:48
6. Запихивание openvpn сертификатов через WinSCP - как раз неудобный момент, и с ним больше всего возни.
...
Если нет такой технической возможности, то объясните, пожалуйста, как можно сократить затраты времени на 6 пункт путем скриптов, или иной автоматизации.


1. Хочется сделать максимально комфортно для непосвященных пользователей.


имхо, тогда подготовить комплект из pscp.exe, файлов сертификатов и .bat файла (или .vbs или .ps или .exe - как будет удобней), который запустит pscp.exe с нужными параметрами для копирования на устройство через ssh.

oblikoamorale
15-05-2012, 06:48
Статически собранный, не зависящий от доп. библиотек за пределами прошивки openvpn после strip'а и сжатия UPX получился 912Кб:

Cпасибо за отличную идею!

Как раз стоит необходимость таскать с собой openvpn, и, раз уж я всё равно порезал в своём билде прошивки лишнее, глупо хранить openvpn с внешними либами (которые не нужны для других приложений) в flashfs, вместо добавления статического openvpn в саму прошивку.

С последним тулчейном для rt-n собрал полностью статический openvpn 2.2.2 с openssl 1.0.0c. Работает, и размер вроде небольшой - 900 кб после сжатия, но гложет небольшой червяк. Хочется, чтобы openvpn был динамически слинкован с системными либами прошивки, и статически - с openssl, lzo2.
Насколько я вижу из приведенного вами вывода ldd, вам это удалось. В результате моих плясок на выходе получаются или полностью статические бинарники, или нечто неработоспособное :)

Есть какие-то тонкости в модификации линковки openvpn, которые я упустил? Был бы признателен за консультацию.

ryzhov_al
15-05-2012, 07:05
Собирал более года назад, буду отвечать по памяти.

С последним тулчейном для rt-n собрал полностью статический openvpn 2.2.2 с openssl 1.0.0c. Работает, и размер вроде небольшой - 900 кб после сжатия, но гложет небольшой червяк. Хочется, чтобы openvpn был динамически слинкован с системными либами прошивки, и статически - с openvpn, lzo2.
Насколько я вижу из приведенного вами вывода ldd, вам это удалось. В результате моих плясок на выходе получаются или полностью статические бинарники, или нечто неработоспособное :)Насколько помню, я специально собирал зависимые библиотеки исключительно в статическом виде, поэтому во время линковки openvpn всё получилось automagically.

Могу предложить идею пересобрать openvpn с более легковесной реализацией SSL, например libpolarssl или libmatrixssl как это сделано для VPN-сервера в новой прошивке RT-N66u. Но это в случае, если не тяжко допиливать код.

oblikoamorale
15-05-2012, 09:03
Собирал более года назад, буду отвечать по памяти.
Насколько помню, я специально собирал зависимые библиотеки исключительно в статическом виде, поэтому во время линковки openvpn всё получилось automagically.
Да, логично. Кажется, openssl и так по дефолту собирается в статике, а вот lzo2 была в двух вариантах, и, видимо, configure openvpn подхватывал динамический экземпляр.
Ещё вопрос, возможно, глупый: для динамической линковки с либами тулчейна/прошивки нужно предпринимать какие-то дополнительные телодвижения?


Могу предложить идею пересобрать openvpn с более легковесной реализацией SSL, например libpolarssl или libmatrixssl как это сделано для VPN-сервера в новой прошивке RT-N66u. Но это в случае, если не тяжко допиливать код. Тоже вариант. Можно подумать, но не очень хочется экспериментировать со стабильностью. Openssl тяжеловата, но не смертельно.

ryzhov_al
15-05-2012, 09:13
Ещё вопрос, возможно, глупый: для динамической линковки с либами тулчейна/прошивки нужно предпринимать какие-то дополнительные телодвижения?Для openvpn не помню, но процесс можно контролировать самому. На примере libusb:

Статическая линковка:
$ gcc -o 25volt main.o -L/staging_dir/opt/lib libusb.a
Динамическая линковка:
$ gcc -o 25volt main.o -L/staging_dir/opt/lib -lusb

Да, забыл сказать. С библиотеками тулчейна (gcc+uclibc) софт будет слинкован динамически, библиотеки будут искаться в папке тулчейна, если только вы не указали ключ -nostdlibs.

oblikoamorale
15-05-2012, 18:41
Для openvpn не помню, но процесс можно контролировать самому

configure openvpn оказался достаточно интеллектуальным, и дополнительной возни не потребовалось: статические библиотеки прекрасно слинковались автоматически (несмотря на наличие ключей -llzo2 -lopenssl у собирающего openvpn gcc). В результате, на выходе получился работоспособный openvpn мизерного веса 700Кб. Он же, без утрамбовки upx - 2.0Мб.

Спасибо за помощь!

Alex_Beny
24-05-2012, 14:53
Помогите выбрать роутер, на котором возможно поднять шифрованный OpenVPN-клиент.
Цель клиента на роутере: чтобы можно было попасть к двум компам в LANe роутера, из любого места.
Через VPN будут идти RDP-пакеты.
Интернет серфинг при этом должен осуществляться через обычное интернет соединение, минуя VPN.

Возможно ли такое на роутере? Если да, то посоветуйте, какое железо взять?

pdum
28-05-2012, 09:45
Помогите выбрать роутер, на котором возможно поднять шифрованный OpenVPN-клиент.
Цель клиента на роутере: чтобы можно было попасть к двум компам в LANe роутера, из любого места.
Через VPN будут идти RDP-пакеты.
Интернет серфинг при этом должен осуществляться через обычное интернет соединение, минуя VPN.

Возможно ли такое на роутере? Если да, то посоветуйте, какое железо взять?

А чем не устраивает встроенный PPTP ASUS RT-N66U?
Вот как выглядит его настройка в GUI:
http://service.asus.com/demoui/RT-N66U/EN/Advanced_PPTP_Content.html

DarkForce
12-06-2012, 20:32
configure openvpn оказался достаточно интеллектуальным, и дополнительной возни не потребовалось: статические библиотеки прекрасно слинковались автоматически (несмотря на наличие ключей -llzo2 -lopenssl у собирающего openvpn gcc). В результате, на выходе получился работоспособный openvpn мизерного веса 700Кб. Он же, без утрамбовки upx - 2.0Мб.

Спасибо за помощь!

А поделиться своей версией прошивки можете?
Как я понимаю, у вас OpenVPN уже встроен в нее?

ryzhov_al
13-06-2012, 09:33
Кстати, один малоизвестный форумчанин (http://wl500g.info/member.php?18446-theMIROn) мне задаёт вопрос: почему у всех клином свет сошёлся на OpenVPN? Ведь все эти туннели построены по одинаковому принципу: создаются tun интерфейсы, в/из которых вываливается трафик, гоняемый между двумя устройствами в шифрованном виде через обычные интерфейсы. Причём в каждой реализации шифрование допустимо абсолютно любое, как б-г на душу положит.

Для тестов работы FastNAT c tun-интерфейсами, например, был собран vtun (http://vtun.sourceforge.net/), он сейчас в есть в репозитории. Да, он тоже тянет за собой openssl и в итоге получается по размеру такой же "раскормленный", как статически собранный OpenVPN. Но если нужен VPN-клиент в прошивке, то лучше собрать quicktun (http://wiki.ucis.nl/QuickTun) - он не зависит от openssl, а пользует ассиметричное шифрование по эллиптическим кривым, используя ту же библиотеку (nacl), что и dnscrypt-proxy.

Если будут заинтересованные, то могу спортировать quicktun нам. У quicktun есть клиент как под linux, так и под windows. Конфигурируется в четыре строчки (http://wiki.ucis.nl/QuickTun#Configuring_QuickTun_on_Linux_.28non_Debi an.2FUbuntu.29)!

theMIROn
13-06-2012, 09:44
создаётся tun-интерфейс и по нему между двумя устройствами начинает гоняться шифрованный трафик.
создаются tun интерфейсы, в/из которых вываливается трафик, гоняемый между двумя устройствами в шифрованном виде через обычные интерфейсы.

pux
14-06-2012, 05:04
Кстати, один малоизвестный форумчанин (http://wl500g.info/member.php?18446-theMIROn) мне задаёт вопрос: почему у всех клином свет сошёлся на OpenVPN? Ведь все эти туннели построены по одинаковому принципу (...)
Имхо ответ содержится в вопросе. Потому что сошелся у всех :-) Т.е. уже долгое время много серверов/клиентов доступно на куче разных платформ и операционок, и на смартфонах, и на серверах, и на этих.. ну, как их.. во, на роутерах.

Есть люди, которые поддерживают код OpenVPN. Есть по нему куча документации разного уровня на всех языках. Экологическая ниша, можно сказать, занята, и нет особого смысла пересаживаться на другие ВПНки.

В частности, когда я искал решение своих проблем, никаких витюнов/квиктюнов мне лично в поиске не попалось, а попался OpenVPN, и на нем стая роутеров взлетела и отлично летит до сих пор. Это не значит, что все остальные решения плохие.. но чем они лучше? OpenVPN тоже можно запустить с лаконичным конфигом..

С тех пор, как Вампик, да продлится жизнь его на тысячу лет, вернул в n-ветку для DIR-320 поддержку usb storage, меня лично в целом все устраивает. Ну, и пользуясь случаем, спасибо и всем остальным, приложившим руки.

PS: FilimoniC, вы так злобно изругали один из моих любимых инструментов, что мне захотелось изругать какой-нибудь из ваших...

ryzhov_al
14-06-2012, 20:01
В частности, когда я искал решение своих проблем, никаких витюнов/квиктюнов мне лично в поиске не попалось, а попался OpenVPN, и на нем стая роутеров взлетела и отлично летит до сих пор. Это не значит, что все остальные решения плохие.. но чем они лучше? OpenVPN тоже можно запустить с лаконичным конфигом..

С тех пор, как Вампик, да продлится жизнь его на тысячу лет, вернул в n-ветку для DIR-320 поддержку usb storage, меня лично в целом все устраивает. Ну, и пользуясь случаем, спасибо и всем остальным, приложившим руки.Боже! Нельзя быть таким диким! Речь не о том, что вы нашли первым в гугле, а о том, что можно встроить в прошивку.

Для того, чтобы заработал VPN-туннель на quicktun вам необходимы:

а) модуль tun:

$ du -h /opt/lib/modules/2.6.22.19/kernel/drivers/net/tun.ko
16.0K /opt/lib/modules/2.6.22.19/kernel/drivers/net/tun.ko

б) бинарник quicktun:

$ du -h ./quicktun.combined
28.0K ./quicktun.combined
Всё! Сорок четыре килобайта. Это влезет даже в самый куцый флеш DIR-320.

Если бы вы обратили на это внимание раньше, то ваша стая DIR-320 летала бы и быстрее, и без помощи внешних флешек. Поверьте: то, что вы ничего кроме OpenVPN не видели не значит, что лучше ничего нет.

staticroute
14-06-2012, 20:45
OpenVPN однозначно мощнее по функционалу, чем quicktun и уже проверенно работает.

Насчет размера, не проблема купить флешку на 4-32 Гб, стоит совсем немного, зато место будет не только под этот софт.

Да и в принципе то же самое логгирование VPN коннектов/syslog в флеш роутера ну никак не стоит делать, для этого нужно отдельный винч/флешка.

ryzhov_al
14-06-2012, 21:35
То есть альтернативу вам больше никогда не предлагать. Ок.

OpenVPN однозначно мощнее по функционалу, чем quicktun и уже проверенно работает.И куда вы эту мощь на dir320 девать будете? Напомню: чуть выше речь о стае летающих dir320.

staticroute
14-06-2012, 21:43
То есть альтернативу вам больше никогда не предлагать. Ок.
И куда вы эту мощь на dir320 девать будете? Напомню: чуть выше речь о стае летающих dir320.

Да я не против альтернатив как таковых, но вроде в DIR320 есть USB, так в чем проблема купить флешку?

ryzhov_al
14-06-2012, 21:55
Да я не против альтернатив как таковых, но вроде в DIR320 есть USB, так в чем проблема купить флешку?Смотрите название темы.

Да и в принципе то же самое логгирование VPN коннектов/syslog в флеш роутера ну никак не стоит делать, для этого нужно отдельный винч/флешка.Это вы про экономию памяти говорите? Посмотрите сколько занимает в памяти бездействующий OpenVPN. Сравните с quicktun:

mapped: 1012K writeable/private: 140K shared: 0K
А для логирования проще указать Remote log server в веб-интерфейсе. Не понимаю зачем себе на ровном месте проблем выдумывать.

pux
15-06-2012, 01:40
Боже! Нельзя быть таким диким! Речь не о том, что вы нашли первым в гугле, а о том, что можно встроить в прошивку.
(...)
Сорок четыре килобайта. Это влезет даже в самый куцый флеш DIR-320.
Уговорили, включайте в прошивку :-) А OpenVPN не включайте. И народ потянется к прекрасному. И даже я, ленивый и дикий, попробую...


Добавьте, пожалуйста, в веб-морду возможность прицеплять OpenVPN сертификаты. (...) как можно сократить затраты времени на 6 пункт путем скриптов, или иной автоматизации?
Навело на мысль.. Да, в исходники я все еще не смотрел, а узнать хочется. Может быть, в прошивке уже реализована возможность при старте после монтирования флешки проверять, нет ли на ней файла со специальным названием, и выполнять его? Про post-mount и прочие скрипты я знаю, но их нужно еще прописать во флеш.. А наличие такой фичи облегчило бы жизнь и "серийным настройщикам", и полным нубам.

"Прошейте роутер вот той прошивкой, распакуйте вот этот файл в корень флешки, вставте ее в роутер и перегрузитесь. И все уже настроено."

PS: Кстати, асусы из коробки случайно не умеют обновлять таким образом прошивку? PPS: За оффтоп -- прощения просим..

oblikoamorale
15-06-2012, 06:23
Могу предложить идею пересобрать openvpn с более легковесной реализацией SSL, например libpolarssl

вчера в порядке эксперимента поковырялся с openvpn-nl, это openvpn 2.1, пропатченный на предмет сборки с polarssl. размер статического бинарника openvpn получается 0.7МБ (без сжатия). для сравнения, статика последнего openvpn и openssl тянет на 2.3МБ.

в openvpn-nl всё хорошо, кроме того, что он отказывается иметь общие коннекты c openvpn/openssl:

TLS_ERROR: read tls_read_plaintext error
толком не разбирался, но подозреваю, polarssl не переваривает сертификаты openssl. и openvpn-nl придётся спаривать только с себе подобными, что сильно ограничивает область его применения (для меня)

P.S. в openwrt началась возня по приведению пакета openvpn в актуальный вид. тамошний народ планирует выпилить 2 вида пакетов, с openssl и polarssl. работа кипит...


А поделиться своей версией прошивки можете?
Как я понимаю, у вас OpenVPN уже встроен в нее?
могу, но не уверен, что она кому-то сможет пригодиться. из моей прошивки вырезаны все ненужные лично мне вещи, включая wi-fi.
попробуйте собрать прошивку самостоятельно, это не так сложно, как кажется на первый взгляд! выложенной на code.google.com инструкции для этого, на мой взгляд, вполне достаточно. а добавить в прошивку openvpn - это просто закинуть в /usr/sbin бинарник, не более того...

staticroute
15-06-2012, 10:52
попробуйте собрать прошивку самостоятельно, это не так сложно, как кажется на первый взгляд! выложенной на code.google.com инструкции для этого, на мой взгляд, вполне достаточно. а добавить в прошивку openvpn - это просто закинуть в /usr/sbin бинарник, не более того...

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

инструкции там больше по сборке, по сути это просто, если что-то кастомное нужно, то уже могут возникнуть проблемы, даже тупо, если убрать некоторые опции в make menuconfig, то сборка может не завершиться удачно.

кроме того есть определенные hardcoded установки модулей в Makefile, поэтому, если пересобираете ядро со своими опциями (скажем выкинете ntfs поддержку или чего-то еще), то нужно будет gateway/Makefile также править самому вручную.

для инсталла openvpn нужно будет в Makefile добавить строчку сборки и копирования бинарника
по типу:

install -D openvpn/src/openvpn $(INSTALLDIR)/openvpn/usr/sbin/openvpn
$(STRIP) $(INSTALLDIR)/openvpn/usr/sbin/openvpn


(код неточный, скорее всего нужно будет еще предварительно добавить сборку пакета с нужными опциями, если не делаете этого до этого).

ryzhov_al
15-06-2012, 11:05
...Про post-mount и прочие скрипты я знаю, но их нужно еще прописать во флеш.. А наличие такой фичи облегчило бы жизнь и "серийным настройщикам", и полным нубам.

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


вчера в порядке эксперимента поковырялся с openvpn-nl, это openvpn 2.1, пропатченный на предмет сборки с polarssl. размер статического бинарника openvpn получается 0.7МБ (без сжатия). для сравнения, статика последнего openvpn и openssl тянет на 2.3МБ.Мне со статической линковкой theMIROn одну вещь напомнил, я виде её раньше при сборке opkg. Допустим, статическая fatlib.a содержит внутри бинарники blob1.o, blob2.o, blob3.o. И допустим, что ваша софтина использует только функции из blob1.o Если вы слинкуете fatlib.a со своей программой, то в итоговый код могут попасть blob2.o, blob3.o, которые вам там нафиг не нужны. Для того, чтобы openvpn-nl ещё похудел, передавайте линковщику ключ --gc-sections, который заставляет линковщика выкидывать те секции кода, которые у вас в софтине не задействованы.

staticroute
15-06-2012, 17:53
В общем скомпилил openvpn таким образом, чтобы он юзал системные либы, а openssl, lzo статиком подцепил, удалось запихнуть это все только вот в эти роутеры:

WL500gpv2-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/38buktzb3r6u42b/WL500gpv2-1.9.2.7-rtn-r4358.trx)

WL500W-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/vv4c6vv1bw9u8pu/WL500W-1.9.2.7-rtn-r4358.trx)

WL500gp-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/edb9pn12vwq2on1/WL500gp-1.9.2.7-rtn-r4358.trx)

RT-N16-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/1l0a4qmjpa122q0/RT-N16-1.9.2.7-rtn-r4358.trx)

RT-N15U-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/ydi593yu35r3h26/RT-N15U-1.9.2.7-rtn-r4358.trx)

проверьте плиз, а то у меня кастомная и я уже по сто раз туда-сюда прошивал, лень уже тупо)

pux
15-06-2012, 18:32
Другими словами, есть желание зарабатывать деньги настройкой стаи роутеров, но нет желания работать ручками и вы просите вынести функционал в web-интерфейс. Круто.
Александр, если честно, я на вас несколько обижен.
Про веб-интерфейс я ничего не говорил. И делать ничего не просил.
Очевидно, вы путаете меня и пользователя DarkForce.

Добавьте, пожалуйста, в веб-морду возможность прицеплять OpenVPN сертификаты (...)

Если идея с автозапуском скрипта с флешки нехороша, не могли бы вы немного пояснить, почему? Потому что она позволит "барыгам" вроде меня и ДаркФорса еще быстрее наживать миллионы на настройке роутеров? :-\

theMIROn
15-06-2012, 18:46
Если идея с автозапуском скрипта с флешки нехороша, не могли бы вы немного пояснить, почему? Потому что она позволит "барыгам" вроде меня и ДаркФорса еще быстрее наживать миллионы на настройке роутеров? :-\

я бы сказал, что это уязвимость...

staticroute
15-06-2012, 18:53
я бы сказал, что это уязвимость...

абсолютно согласен..

да и в чем проблема сделать запуск после маунта?

одно условие добавить в скрипт да и все.


Уговорили, включайте в прошивку :-) А OpenVPN не включайте. И народ потянется к прекрасному. И даже я, ленивый и дикий, попробую...


Навело на мысль.. Да, в исходники я все еще не смотрел, а узнать хочется. Может быть, в прошивке уже реализована возможность при старте после монтирования флешки проверять, нет ли на ней файла со специальным названием, и выполнять его? Про post-mount и прочие скрипты я знаю, но их нужно еще прописать во флеш.. А наличие такой фичи облегчило бы жизнь и "серийным настройщикам", и полным нубам.

"Прошейте роутер вот той прошивкой, распакуйте вот этот файл в корень флешки, вставте ее в роутер и перегрузитесь. И все уже настроено."

PS: Кстати, асусы из коробки случайно не умеют обновлять таким образом прошивку? PPS: За оффтоп -- прощения просим..

по мне так тогда проще вынести просто редакторы скриптов базовых в веб-интерфейс с их активацией да и все, как это сделано в Томато. (раз уж вам лень лезть по ssh/telnet в роутер).


Добавьте, пожалуйста, в веб-морду возможность прицеплять OpenVPN сертификаты (...)

Если вы зарабатываете на этом тем более могли бы сами это реализовать патчем к прошивке, это не так уж и сложно сделать, главное понимать, какие пункты требуются в веб-интерфейсе и соответствующие команды...

ryzhov_al
15-06-2012, 19:14
инструкции там больше по сборке, по сути это просто, если что-то кастомное нужно, то уже могут возникнуть проблемы, даже тупо, если убрать некоторые опции в make menuconfig, то сборка может не завершиться удачно.

кроме того есть определенные hardcoded установки модулей в Makefile, поэтому, если пересобираете ядро со своими опциями (скажем выкинете ntfs поддержку или чего-то еще), то нужно будет gateway/Makefile также править самому вручную...Тов.Vampik завёл проект на гуглокоде (http://code.google.com/p/wl500g-mod/source/list). Можно посмотреть как правильно что-либо отламывать\добавлять там.

А тот же quicktun, кстати, можно (http://wiki.ucis.nl/QuickTun#QuickTun_Linux_kernel_module) внедрить как модуль ядра. Что потенциально может ещё добавить ему и без того не малой скорости.

oblikoamorale
15-06-2012, 21:44
Мне со статической линковкой theMIROn одну вещь напомнил [...] передавайте линковщику ключ --gc-sections, который заставляет линковщика выкидывать те секции кода, которые у вас в софтине не задействованы.

любопытно! более подробное изучение вопроса прояснило, что данный ключ даёт наибольший эффект, если линкуемые библиотеки компилировать с ключами -fdata-sections -ffunction-sections. в результате классический openvpn похудел до 1.6МБ, а openvpn-nl до 650КБ.

pux
15-06-2012, 23:44
Если вы зарабатываете на этом тем более могли бы сами это реализовать патчем к прошивке, это не так уж и сложно сделать, главное понимать, какие пункты требуются в веб-интерфейсе и соответствующие команды...
Я не говорил, что я на этом зарабатываю. И мне вебморда не принципиальна.

Вообще мысль была прошивать свежекупленный роутер, просто вставив флешку с прошивкой. Как прошивают всякие аудиоплееры, принтеры, кофеварки.. Но тут только Асус может помочь, если захочет.

Но даже дальше, на этапе, когда "правильная" прошивка уже залита, в процессе загрузки можно было бы пытаться смонтировать флешку и запускать с нее некий файл. После чего сохранить в nvram флаг "файл с флешки больше не выполнять".

А такой скрипт может, например, поставить на ту же флешку вторую, дополнительную вебморду, из которой даже пятилетние дауны могут ставить пакеты и переходить по ссылкам в их веб-морды. Типа как "скрипт для чайников", только еще проще.

Или позволит кому-то сотнями настраивать роутеры из коробки с минимальными усилиями.


я бы сказал, что это уязвимость...
Да, в определенной степени. Но для ее эксплуатации нужен физический доступ к роутеру. Который позволяет тупо заменить его другим роутером такой же модели, или сделать ему ресет, или еще как-то над ним надругаться.

Кстати, можно искать на флешке файл только после первой прошивки. И/или перед запуском искать в нем номер версии установленной прошивки. Или при наличии файла показывать кнопку для его запуска в веб-морде..

wig
16-06-2012, 12:36
Столкнулся с парадоксом
На компе (Open SuSE 12.1) openvpn работает.
На рутере (RT-N16, rtn-r4330) - нет
client.conf

client
remote 188.64.ххх.ххх 443
proto tcp
dhcp-option DNS 8.8.8.8
redirect-gateway def1
ca ca.crt
cert aaa.crt
key aaa.key
ns-cert-type server
dev tap
resolv-retry infinite
nobind
persist-key
persist-tun
comp-lzo
verb 4
mute 20

Log на рутере

Thu Jan 1 04:13:06 1970 us=529448 OpenVPN 2.2.2 mipsel-linux-gnu [SSL] [LZO2] [EPOLL] built on Jun 1 2012
Thu Jan 1 04:13:06 1970 us=530217 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
Thu Jan 1 04:13:06 1970 us=536822 WARNING: file 'aaa.key' is group or others accessible
Thu Jan 1 04:13:06 1970 us=543222 LZO compression initialized
Thu Jan 1 04:13:06 1970 us=544264 Control Channel MTU parms [ L:1576 D:140 EF:40 EB:0 ET:0 EL:0 ]
Thu Jan 1 04:13:06 1970 us=544801 Socket Buffers: R=[87380->131072] S=[16384->131072]
Thu Jan 1 04:13:06 1970 us=545198 Data Channel MTU parms [ L:1576 D:1450 EF:44 EB:135 ET:32 EL:0 AF:3/1 ]
Thu Jan 1 04:13:06 1970 us=546770 Attempting to establish TCP connection with 188.64.xxx.xxx:443 [nonblock]
Thu Jan 1 04:13:07 1970 us=549443 TCP connection established with 188.64.xxx.xxx:443
Thu Jan 1 04:13:07 1970 us=549690 TCPv4_CLIENT link local: [undef]
Thu Jan 1 04:13:07 1970 us=549944 TCPv4_CLIENT link remote: 188.64.xxx.xxx:443
Thu Jan 1 04:13:07 1970 us=579245 TLS: Initial packet from 188.64.xxx.xxx:443, sid=939bd78b bbfd947d
Thu Jan 1 04:13:08 1970 us=302674 VERIFY ERROR: depth=1, error=certificate is not yet valid: /C=DE/ST=Bayern/L=Gunzenhausen/O=HideME/CN=HideME_CA/emailAddress=feedback@hideme.ru
Thu Jan 1 04:13:08 1970 us=303733 TLS_ERROR: BIO read tls_read_plaintext error: error:14090086:lib(20):func(144):reason(134)
Thu Jan 1 04:13:08 1970 us=303952 TLS Error: TLS object -> incoming plaintext read error
Thu Jan 1 04:13:08 1970 us=304126 TLS Error: TLS handshake failed
Thu Jan 1 04:13:08 1970 us=304967 Fatal TLS error (check_tls_errors_co), restarting
Thu Jan 1 04:13:08 1970 us=305517 TCP/UDP: Closing socket
Thu Jan 1 04:13:08 1970 us=305988 SIGUSR1[soft,tls-error] received, process restarting
Thu Jan 1 04:13:08 1970 us=306223 Restart pause, 5 second(s)

Thu Jan 1 04:13:13 1970 us=308376 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
Thu Jan 1 04:13:13 1970 us=308675 Re-using SSL/TLS context
Thu Jan 1 04:13:13 1970 us=308908 LZO compression initialized
и так до бесконечности.
А на компе с теми же 4-мя файлами - VERIFY OK, соединение устанавливается с первой же попытки

opkg list-installed
...
liblzo - 2.05-1
libopenssl - 1.0.1c-1
openvpn - 2.2.2-2
...

Не подскажут ли уважаемые гуру что не так?

lly
16-06-2012, 12:42
Не подскажут ли уважаемые гуру что не так?
Он(роутер) вам всё написал чистым английским языком:

Thu Jan 1 04:13:08 1970 us=302674 VERIFY ERROR: depth=1, error=certificate is not yet valid: ...

А дата то...

P.S. Тысячный раз просьба ко всем - читать логи самостоятельно ДО написания в форум

wig
17-06-2012, 15:32
Он(роутер) вам всё написал чистым английским языком:

Thu Jan 1 04:13:08 1970 us=302674 VERIFY ERROR: depth=1, error=certificate is not yet valid: ...

А дата то...

P.S. Тысячный раз просьба ко всем - читать логи самостоятельно ДО написания в форум
lly!
Да мне и в голову не пришло на дату посмотреть потому как ntp client всегда эту дату ставил автоматом сразу после загрузки. Настолько надежно и давно, что я и думать забыл про нее.
А тут перестал.
Несколько часов работы - все равно 01.01.1970
Иногда вдруг начинает работать после reboot, а после "ручных" (без авто скриптов) игр с openvpn перестает. Причем четкой взаимосвязи я так и не обнаружил
Выглядит примерно так.
ntp после очередного ребута заработал.
запускаю вручную openvpn - полет нормальный
Начинаю вручную корежить NAT, чтобы вся локалка (192.168.х.х) уходила через туннель, если dst вне 192.168.х.х
Очередная ошибка в NAT - дераю reboot рутера - ntp не работает.
Что бы это значило?

TReX
17-06-2012, 19:32
lly!
Очередная ошибка в NAT - дераю reboot рутера - ntp не работает.
Что бы это значило?

А так NTP сервер то что, тоже в тунеле живет? ))

wig
17-06-2012, 20:01
А так NTP сервер то что, тоже в тунеле живет? ))
Не-а, предполагалось, что в результате настроек все, что OUTPUT/INPUT поедет обычным путем через vlan2 на другой рутер, который смотрит в йоту
А все, что едет из/в br0 поедет в/из туннель, если dst не 192.168.x.x. Туннель, разумеется, работает через йоту, посему тоже смотрит в vlan2
Понимаю, что правой ногой и т.д. поэтому и настраивал руками, не скриптом
Но елыж палыж, flashfs не употреблял. Чуть что не так - reboot (потому как потерять свой коннект в такой настройке - как нефиг делать, а идти переключать питание .. ну понятно)
Ну и после reboot-а - все, ntp не живет. Ребутов 10, да с паузами - начинает жить.
Полная картина все та же:
reboot, ntp живет
openvpn - завелось
поехали с iptables сначала postrouting, потом закрываться по INPUT/OUTPUT/FORWARD
где-то что-то не так - reboot и все сначала.
Но тут то ntp и перестает работать
А тут еще одна странность.
Параллельно делал правильный nfs доступ в рутер, чтоб с моим login/password.
Пишу в passwd себя, меняю пароль, проверяю заход телнетом - все на ура. flashfs, reboot - а меня в passwd нет.
Может железка сдохла? RT-N16

MercuryV
17-06-2012, 21:13
Пишу в passwd себя, меняю пароль, проверяю заход телнетом - все на ура. flashfs, reboot - а меня в passwd нет.
Может железка сдохла? RT-N16
Эту "железку" еще постараться убить надо.
Пожалуйста, пользуйтесь поиском по сайту.
Как сохранить /etc/passwd и т.п. описано давно (http://oleg.wl500g.info/index1759.html), неоднократно (http://wl500g.info/showthread.php?2386-FTP-%CF%EE%EC%EE%E3%E8%F2%E5-%F7%E0%E9%ED%E8%EA%F3-%F1-%ED%E0%F1%F2%F0%EE%E9%EA%EE%E9-vsftpd&p=15313#post15313). И тайной не является.

wig
17-06-2012, 22:08
Эту "железку" еще постараться убить надо.
ну один раз получилосЬ. и не только у меня.
http://wl500g.info/showthread.php?23418-%C2%EE%F1%F1%F2%E0%ED%EE%E2%EB%E5%ED%E8%E5-%F0%EE%F3%F2%E5%F0%E0-Asus-RT-N16&p=251489#post251489
Пришлось восстанавливаться через dd-wrt
Хотя не было никаких экспериментов, работало и не стало.
/tmp/syslog.log разросся?
Но он после ребута вроде как обнуляться должен и делает это.


Пожалуйста, пользуйтесь поиском по сайту.
Как сохранить /etc/passwd и т.п. описано давно (http://oleg.wl500g.info/index1759.html), неоднократно (http://wl500g.info/showthread.php?2386-FTP-%CF%EE%EC%EE%E3%E8%F2%E5-%F7%E0%E9%ED%E8%EA%F3-%F1-%ED%E0%F1%F2%F0%EE%E9%EA%EE%E9-vsftpd&p=15313#post15313). И тайной не является.
Спасиб, увидел
А что с остальным?
ntp-то что не хватает в таком раскладе?

MercuryV
17-06-2012, 22:15
Не-а, предполагалось, что в результате настроек все, что OUTPUT/INPUT поедет обычным путем через vlan2 на другой рутер, который смотрит в йоту
А все, что едет из/в br0 поедет в/из туннель, если dst не 192.168.x.x. Туннель, разумеется, работает через йоту, посему тоже смотрит в vlan2
Понимаю, что правой ногой и т.д.

ntp-то что не хватает в таком раскладе?
Моей квалификации недостаточно, чтобы что-то предлагать в таком раскладе :)

staticroute
18-06-2012, 00:35
Спасиб, увидел А что с остальным?
чтобы заработал openvpn как клиент, необходимо добавить соответствующие правила iptables
и добавить нужные подсетки в роутинг (что по идее должен делать server push-ем).

в /usr/local/sbin/post-firewall добавьте:

iptables -I FORWARD -i br0 -o tun0 -j ACCEPT
iptables -I FORWARD -i tun0 -o br0 -j ACCEPT
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE


и добавьте в client.conf:

dev tun0
ну что, никто ещё не проверял?


скомпиленные прошивки с включенным static openvpn

В общем скомпилил openvpn таким образом, чтобы он юзал системные либы, а openssl,
lzo статиком подцепил, удалось запихнуть это все только вот в эти роутеры:

WL500gpv2-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/38buktzb3r6u42b/WL500gpv2-1.9.2.7-rtn-r4358.trx)

WL500W-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/vv4c6vv1bw9u8pu/WL500W-1.9.2.7-rtn-r4358.trx)

WL500gp-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/edb9pn12vwq2on1/WL500gp-1.9.2.7-rtn-r4358.trx)

RT-N16-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/1l0a4qmjpa122q0/RT-N16-1.9.2.7-rtn-r4358.trx)

RT-N15U-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/ydi593yu35r3h26/RT-N15U-1.9.2.7-rtn-r4358.trx)

проверьте плиз, а то у меня кастомная и я уже по сто раз туда-сюда прошивал, лень уже тупо)

ildar
28-01-2013, 10:45
http://wl500g.info/showthread.php?8880-%D3%F1%F2%E0%ED%EE%E2%EA%E0-OpenVPN-%E2-%EE%F1%ED%EE%E2%ED%F3%FE-%EF%E0%EC%FF%F2%FC-%E4%EB%FF-%CD%CE%C2%C8%D7%CA%CE%C2

Возможно кто пытался ставить в основную память в роутер WL500gPv2, и столкнулся с проблемой не хватки памяти, после загрузки пакетов.

Я решил эту проблему удалением /opt/share/terminfo, оставив только папку /opt/share/terminfo/l (linux). Памяти хватает, VPN работает.

Omega
28-01-2013, 21:07
В общем скомпилил openvpn таким образом, чтобы он юзал системные либы, а openssl,
lzo статиком подцепил, удалось запихнуть это все только вот в эти роутеры:

WL500gpv2-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/38buktzb3r6u42b/WL500gpv2-1.9.2.7-rtn-r4358.trx)

WL500W-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/vv4c6vv1bw9u8pu/WL500W-1.9.2.7-rtn-r4358.trx)t
WL500gp-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/edb9pn12vwq2on1/WL500gp-1.9.2.7-rtn-r4358.trx)

RT-N16-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/1l0a4qmjpa122q0/RT-N16-1.9.2.7-rtn-r4358.trx)

RT-N15U-1.9.2.7-rtn-r4358.trx (http://www.mediafire.com/file/ydi593yu35r3h26/RT-N15U-1.9.2.7-rtn-r4358.trx)

проверьте плиз, а то у меня кастомная и я уже по сто раз туда-сюда прошивал, лень уже тупо)
Угу, на WL-500W и RT-N16 работает :) Вот если ещё бы добавить настройки openvpn в вебморду :rolleyes:

http://digiland.tw/uploads/2047_rt-n66_toastman_vpn.jpg


Если бы еще сделали энтузиасты настройку OpenVPN клиента через веб-морду + auth-user-pass опцию + когда происходит дисконнект, доступ
остается только к серверу (например 11.11.11.11) а ко всему остальному (google.ru) закрывается, LAN при этом должен оставаться.

За такое бы, не просто ящик пива, а целую цистерну :D Эх, мечты. :(
http://digiland.tw/uploads/4612_12.png

Установка и настройка OpenVPN из репозитория EntWare


На роутере выполняем команды:

# mkdir /tmp/local/opt
# mount -o bind /usr/local/opt /opt
# ipkg.sh update; ipkg.sh install opkg; opkg update; opkg install openvpn
Создаем файлики:
(1) /opt/etc/openvpn/server.conf

proto tcp-server
dev tun0
port 443
ifconfig 10.8.0.2 10.8.0.1
keepalive 10 120
secret static.key
(2) /usr/local/sbin/post-boot

#!/bin/sh
# keep opkg repository in flash memory
mount -o bind /usr/local/opt /opt
# OpenVPN
/sbin/insmod tun
/opt/bin/openvpn --daemon --cd /opt/etc/openvpn --config server.conf
(3) /usr/local/sbin/post-firewall

#!/bin/sh
vpnPort=443
vpnProto=tcp
vpnDevice=tun0
iptables -P INPUT DROP
iptables -D INPUT -j DROP
iptables -A INPUT -p $vpnProto --dport $vpnPort --tcp-flags FIN,SYN,RST,ACK SYN -j BRUTE
iptables -A INPUT -p $vpnProto --dport $vpnPort -j ACCEPT
iptables -I INPUT -i $vpnDevice -j ACCEPT
iptables -I FORWARD -i $vpnDevice -j ACCEPT
iptables -I FORWARD -o $vpnDevice -j ACCEPT
iptables -I OUTPUT -o $vpnDevice -j ACCEPT
(4) /opt/etc/openvpn/static.key
(генерируется на сервере или на клиенте командой

# openvpn --genkey --secret static.key
содержимое копипастится через ssh без всяких scp)

устанавливаем права на файлы:

# chmod 0755 "/usr/local/sbin/post-boot"
# chmod 0755 "/usr/local/sbin/post-firewall"

пишем сделанное во флеш и перегружаемся с молитвой:

# flashfs save && flashfs commit && flashfs enable
# reboot
конфиг для клиента:

proto tcp-client
dev tun0
port 443
ifconfig 10.8.0.1 10.8.0.2
secret static.key
redirect-gateway
remote 213.24.76.23
Нюансы:
(1) фаерволом прикрыл OpenVPN от брутфорса;
(2) пишу лог в сислог, чтобы не париться с ротацией, и чтобы проще было глянуть через веб-интерфейс;
(3) если хочется управлять отдельным скриптом в /opt/etc/init.d/ , то нужно искать rc.unslung .

PS: Спасибо за новый репозиторий!
З.Ы. Эм, а можно будет скомпилить и выложить новые прошивки с openvpn на основе -rtn r4772 ? :confused:

ildar
30-01-2013, 03:30
Прошивка WL500gpv2-1.9.2.7-rtn-r4358.trx
Сделал

# mkdir /tmp/local/opt
# mount -o bind /usr/local/opt /opt
# ipkg.sh update; ipkg.sh install opkg; opkg update; opkg install openvpn
Сохраняем:

[admin@WL-BCAEC5C50F25 root]$ flashfs save
tar: removing leading '/' from member names
tmp/local/
tmp/local/opt/
tmp/local/opt/bin/
tmp/local/opt/bin/openvpn
tmp/local/opt/bin/opkg
tmp/local/opt/etc/
tmp/local/opt/etc/openvpn/
tmp/local/opt/etc/init.d/
tmp/local/opt/etc/init.d/S20openvpn
tmp/local/opt/etc/opkg.conf
tmp/local/opt/var/
tmp/local/opt/var/opkg-lists/
tmp/local/opt/var/opkg-lists/openwrt
tmp/local/opt/var/lock/
tmp/local/opt/lib/
tmp/local/opt/lib/liblzo2.so.2
tmp/local/opt/lib/liblzo2.so
tmp/local/opt/lib/liblzo2.so.2.0.0
tmp/local/opt/lib/libz.so
tmp/local/opt/lib/libz.so.1.2.7
tmp/local/opt/lib/libz.so.1
tmp/local/opt/lib/libssl.so.1.0.0
tmp/local/opt/lib/libcrypto.so.1.0.0
tmp/local/opt/lib/libgcc_s.so.1
tmp/local/opt/lib/libc.so.0
tmp/local/opt/lib/ld-uClibc-0.9.32.so
tmp/local/opt/lib/libdl.so.0
tmp/local/opt/lib/libcrypt.so.0
tmp/local/opt/lib/libutil-0.9.32.so
tmp/local/opt/lib/libresolv-0.9.32.so
tmp/local/opt/lib/libdl-0.9.32.so
tmp/local/opt/lib/libresolv.so.0
tmp/local/opt/lib/libm-0.9.32.so
tmp/local/opt/lib/libutil.so.0
tmp/local/opt/lib/libm.so.0
tmp/local/opt/lib/libnsl.so.0
tmp/local/opt/lib/libcrypt-0.9.32.so
tmp/local/opt/lib/libuClibc-0.9.32.so
tmp/local/opt/lib/libnsl-0.9.32.so
tmp/local/opt/lib/opkg/
tmp/local/opt/lib/opkg/status
tmp/local/opt/lib/opkg/info/
tmp/local/opt/lib/opkg/info/openvpn.list
tmp/local/opt/lib/opkg/info/openvpn.control
tmp/local/opt/lib/opkg/info/liblzo.list
tmp/local/opt/lib/opkg/info/liblzo.control
tmp/local/opt/lib/opkg/info/zlib.list
tmp/local/opt/lib/opkg/info/zlib.control
tmp/local/opt/lib/opkg/info/libopenssl.list
tmp/local/opt/lib/opkg/info/libopenssl.control
tmp/local/opt/lib/opkg/info/libgcc.list
tmp/local/opt/lib/opkg/info/libgcc.control
tmp/local/opt/lib/opkg/info/libc.list
tmp/local/opt/lib/opkg/info/libc.control
tmp/local/opt/lib/ipkg/
tmp/local/opt/lib/ipkg/status
tmp/local/opt/lib/ipkg/info/
tmp/local/opt/lib/ipkg/info/opkg.list
tmp/local/opt/lib/ipkg/info/libc.list
tmp/local/opt/lib/ipkg/info/libgcc.list
tmp/local/opt/lib/ipkg/lists/
tmp/local/opt/lib/ipkg/lists/openwrt
tmp/local/opt/tmp/
tmp/local/opt/tmp/ipkg/
tmp/local/root/

-rw-r--r-- 1 admin root 1848228 Jan 30 03:04 /tmp/flash.tar.gz
Check saved image and type "/sbin/flashfs commit" to commit changes
[admin@WL-BCAEC5C50F25 root]$ flashfs commit
/tmp/flash.tar.gz: 'File is too big (1848228, max 1572864)'
вернулся к старому варианту. (предыдущий мой пост)

QuickeneR2
01-02-2013, 13:04
А есть какие-нибудь данные по скорости OpenVPN на разных роутерах? Я знаю только это http://wiki.openwrt.org/inbox/benchmark.openssl , но здесь другие единицы и данных мало
У меня есть 500gP и RT-N16, из-за 500gP шифрование пришлось отключить, чтобы была хоть какая-то скорость. Интересно, сколько МБ/сек можно получить на других роутерах со включенным шифрованием.

staticroute
03-02-2013, 12:08
А есть какие-нибудь данные по скорости OpenVPN на разных роутерах? Я знаю только это http://wiki.openwrt.org/inbox/benchmark.openssl , но здесь другие единицы и данных мало
У меня есть 500gP и RT-N16, из-за 500gP шифрование пришлось отключить, чтобы была хоть какая-то скорость. Интересно, сколько МБ/сек можно получить на других роутерах со включенным шифрованием.

На wl-500gP скорость где-то 400-600 кб/sec. Если 2 туннеля друг за другом делите на 2. Проц не справляется.

QuickeneR2
04-02-2013, 06:59
Omega
Я так понимаю речь об этом сообщении http://wl500g.info/showthread.php?29322&p=249761#post249761 , других не нашел. Там результаты асусовских роутеров ограничены каналом, а N16, 56, 65 и 66 вовсе нет. Для N16 я действительно сам замерю, но хотелось бы и для прочих популярных моделей

staticroute
Про 500gP все понятно, на нем даже консоль тормозит. Хотелось бы понять, какой роутер можно использовать со включенным шифрованием, если требуется скорость в диапазоне 1-10 мбит/сек (для большего, подозреваю, уже нужен или нормальный проц (=комп), или что-то цископодобное)

staticroute
04-02-2013, 11:02
staticroute
Про 500gP все понятно, на нем даже консоль тормозит. Хотелось бы понять, какой роутер можно использовать со включенным шифрованием, если требуется скорость в диапазоне 1-10 мбит/сек (для большего, подозреваю, уже нужен или нормальный проц (=комп), или что-то цископодобное)

это с шифрованием или без ?

6.4 mbit/sec с AES+LZO2 over UDP на Netgear WNDR3800 под OpenWRT на software crypto.

на асусах я думаю будет примерно то же самое, вообще надо смотреть что-то на x86 с hardware accelerated crypto.

быстрое гугление дало:

http://www.ubnt.com/edgemax#edge-router-lite очень даже девайс, мега :)
http://forums.smallnetbuilder.com/showthread.php?t=8194

QuickeneR2
05-02-2013, 06:32
это с шифрованием или без ?

6.4 mbit/sec с AES+LZO2 over UDP на Netgear WNDR3800 под OpenWRT на software crypto.

на асусах я думаю будет примерно то же самое, вообще надо смотреть что-то на x86 с hardware accelerated crypto.

быстрое гугление дало:

http://www.ubnt.com/edgemax#edge-router-lite очень даже девайс, мега :)
http://forums.smallnetbuilder.com/showthread.php?t=8194
Да, с шифрованием. Без шифрования на 1 мегабите и 500gP справляется приемлимо.
За ссылки спасибо! Получается, N66 прокачивает 10 мбит (тип шифрования не указан - наверное, дефолтный для OpenVPN Blowfish)
Про Edge Router Lite пишут (http://forum.ubnt.com/showpost.php?p=429230&postcount=3), что выдает где-то 10-20 мбит (возможно, ограничено другой стороной соединения), и это без аппаратного ускорения шифрования которое они еще не сделали для OpenVPN (http://forum.ubnt.com/showpost.php?p=429777&postcount=6). С распространенностью у него, конечно, не очень - навскидку нашел всего один магаз (http://www.netbym.ru/catalog/1/290/product-1413.html), где заявлено наличие. Цена, с другой стороны, даже меньше, чем у N66.

staticroute
05-02-2013, 11:35
наверное, дефолтный для OpenVPN Blowfish

It is important to understand that encryption is used for both purposes. It is also important to understand that the encryption ratings for either purpose can be different. For example, 2048bit blowfish on authentication and 256bit AES on the tunnel.

AES для туннеля, Blowfish для аутентификации только.

LZO2 для доп. сжатия данных.

лучшая скорость будет через UDP.

все-таки, кажется мне, какой-нибудь девайс на x86 будет шустрее, посмотрите miniITX материнки например, впрочем и дорогой роутер сможет держать, OpenVPN много накладных расходов, требует очень прилично памяти и получается код исполняется два-раза из userspace туда-сюда гоняется.

тот же accel-pppd или xl2tpd, который ядровый будет гораздо шустрее с encryption-ом (MPPE / Ipsec)

kpush
06-02-2013, 04:47
Вот если ещё бы добавить настройки openvpn в вебморду
Это было бы полезно, для начинающих админов.
При этом оставить возможность исправлять итоговый файл конфигурации,
т.к. OpenVPN имеет множество настроек и каждый использует ее по своему, создать интерфейс на все
это будет сложная работа и излишний расход ресурсов.

А когда OpenVPN сеть уже устоялась, то очень удобно добавлять узел
просто копируя настоечный файл.

ryzhov_al
06-02-2013, 06:13
Да, с шифрованием. Без шифрования на 1 мегабите и 500gP справляется приемлимо.OpenWRT'шники в транке хорошенько «причесали» openvpn, сделав три варианта пакетов: с openssl, с легковесной polarssl и без шифрования вовсе:p. Скоро добавлю в Entware.

bijoe
08-02-2013, 10:29
Добрый день. Есть Asus-RT-N16. Прошивка RT-N-1.9.2.7-rtn-r4772. Хочу установить OpenVPN.
При установке вижу следующее:

opkg install openvpn
Unknown package 'openvpn'.
Collected errors:
* opkg_install_cmd: Cannot install package openvpn.
Такого пакета как оказалось нет:

opkg list | grep openvpn
openvpn-easy-rsa - 2012-01-30-1 - Simple shell scripts to manage a Certificate Authority
openvpn-nossl - 2.3.0-1 - Open source VPN solution using plaintext (no SSL)
openvpn-openssl - 2.3.0-1 - Open source VPN solution using OpenSSL
openvpn-polarssl - 2.3.0-1 - Open source VPN solution using PolarSSL
Всего неделю назад заливал точно такой же Asus и проблем не было. Подскажите пожалуйста что можно сделать.

Спасибо

ryzhov_al
08-02-2013, 10:39
Подскажите пожалуйста что можно сделать. Можно ознакомиться (http://wl500g.info/showthread.php?28036&p=258140#post258140) с недавними изменениями в репозитории и найти детали (https://dev.openwrt.org/changeset/35412/) в первоисточнике, если есть желание.

bijoe
08-02-2013, 11:47
Можно ознакомиться (http://wl500g.info/showthread.php?28036&p=258140#post258140) с недавними изменениями в репозитории и найти детали (https://dev.openwrt.org/changeset/35412/) в первоисточнике, если есть желание.

Ознакомился, установил openvpn-openssl. Подправил скрипт S24openvpn:

#!/bin/sh
if [ -n "`pidof openvpn`" ]; then
/bin/killall openvpn 2>/dev/null
fi
/sbin/insmod tun
echo 1 > /proc/sys/net/ipv4/ip_forward
/opt/sbin/openvpn --cd /opt/etc/openvpn --daemon --log-append /var/log/openvpn.log --config openvpn.conf
(поменялась папка, куда устанавливается openvpn, раньше была /opt/bin). После этого всё нормально заработало.

Спасибо!

yurij
23-02-2013, 15:25
Очень насущная задача, прошу извинить если простые вещи спрашиваю: Хочу подключить домашнюю сетку 192.168.* к сетке офиса 10.8.* которая понятно дело за OpenVPN-ом. Пока подключаюсь к серверу офиса на IP с помощью OpenVPN с одного из компьютеров домашней сетки, и соответственно получаю адрес типа 10.8.0.6. Это неудобно, нет возможности поступить так для всех участников доомашней сети, так как требуется, чтобы каждый участник домашней сетки имел работающий клиент OpenVPN. А в сети есть простые сетевые устройства. Короче говоря, ищу такой роутер, который может стать клиентом опенвипиен и получить диапазон адресов типа 10.8.0.6-10.8.0.20. и далее раздавать эти vpn адреса в домашней сети. Я не ищу конфигов, пожалуйста посоветуйте устройство. Плохо представляю себе, что могут новые асусы. Спасибо за ответы, хочу поправиться насчет конфигов - если что-то мне, по-вашему мнению, стоит прочитать, то ссылки на ресурсы тоже пригодятся.

njachaj
18-05-2013, 07:38
Странно ведет себя сервер openvpn на последних билдах:
1.Все пинги ходят.
2.Все ресурсы за сервером доступны.
3.На самом роутере все ресурсы недоступны.
Похоже, что пакеты с tun0 на роутер погибают.
На 5066 все работает как надо.
Конфиги и выхлоп tcpdump, смогу выложить только вечером.

njachaj
18-05-2013, 15:20
Меня переместили http://wl500g.info/showthread.php?29322-OpenVPN-%E2-%F1%EE%F1%F2%E0%E2%E5-%EF%F0%EE%F8%E8%E2%EA%E8-%EE%F2-%FD%ED%F2%F3%E7%E8%E0%F1%F2%EE%E2&p=260220#post260220, но дело в прошивке.
Пытаюсь снаружи через openvpn достучаться до вебморды (она на 10013 порту).
На 5100 ничего не получается:

[root@routik root]$ cat /.version
1.9.2.7-rtn-r5100

[root@routik root]$ tcpdump -n -i tun0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on tun0, link-type RAW (Raw IP), capture size 65535 bytes
17:00:24.742122 IP 192.168.7.6.56350 > 192.168.1.1.10013: Flags [S], seq 4084234500, win 14600, options [mss 1368,sackOK,TS val 260452 ecr 0,nop,wscale 7], length 0
17:00:25.717781 IP 192.168.7.6.56350 > 192.168.1.1.10013: Flags [S], seq 4084234500, win 14600, options [mss 1368,sackOK,TS val 260702 ecr 0,nop,wscale 7], length 0
17:00:27.734555 IP 192.168.7.6.56350 > 192.168.1.1.10013: Flags [S], seq 4084234500, win 14600, options [mss 1368,sackOK,TS val 261203 ecr 0,nop,wscale 7], length 0
17:00:31.709872 IP 192.168.7.6.56350 > 192.168.1.1.10013: Flags [S], seq 4084234500, win 14600, options [mss 1368,sackOK,TS val 262204 ecr 0,nop,wscale 7], length 0
17:00:39.749507 IP 192.168.7.6.56350 > 192.168.1.1.10013: Flags [S], seq 4084234500, win 14600, options [mss 1368,sackOK,TS val 264208 ecr 0,nop,wscale 7], length 0

То же самое на 5090 отлично работает:

[root@routik root]$ cat /.version
1.9.2.7-rtn-r5090

[root@routik root]$ tcpdump -n -i tun0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on tun0, link-type RAW (Raw IP), capture size 65535 bytes
16:48:06.041181 IP 192.168.7.6.59124 > 192.168.1.1.80: Flags [S], seq 1441954901, win 14600, options [mss 1368,sackOK,TS val 75788 ecr 0,nop,wscale 7], length 0
16:48:06.041511 IP 192.168.1.1.80 > 192.168.7.6.59124: Flags [S.], seq 880930472, ack 1441954902, win 4344, options [mss 1460,sackOK,TS val 4294852152 ecr 75788,nop,wscale 2], length 0
16:48:06.136374 IP 192.168.7.6.59124 > 192.168.1.1.80: Flags [.], ack 1, win 115, options [nop,nop,TS val 75810 ecr 4294852152], length 0
16:48:06.148571 IP 192.168.7.6.59124 > 192.168.1.1.80: Flags [P.], seq 1:414, ack 1, win 115, options [nop,nop,TS val 75810 ecr 4294852152], length 413
16:48:06.148742 IP 192.168.1.1.80 > 192.168.7.6.59124: Flags [.], ack 414, win 1354, options [nop,nop,TS val 4294852259 ecr 75810], length 0
16:48:06.167781 IP 192.168.1.1.80 > 192.168.7.6.59124: Flags [P.], seq 1:205, ack 414, win 1354, options [nop,nop,TS val 4294852278 ecr 75810], length 204

AndreyPopov
18-05-2013, 16:18
вас переместили, потому как у вас похожая проблема, какая возникла у меня.

надо чтобы билд модулей в точности совпадал с билдом прошивки.

обновите модуля до версии вашей прошивки.

lly
19-05-2013, 17:11
Пытаюсь снаружи через openvpn достучаться до вебморды (она на 10013 порту).
На 5100 ничего не получается:
...
То же самое на 5090 отлично работает:
Модуль, надеюсь, грузите через insmod? На 5097 как?

njachaj
19-05-2013, 18:02
Модуль, надеюсь, грузите через insmod? На 5097 как?
1.5097 работает.
2. Загрузка- стандартный скрипт от EntWare:
# Make sure the tunnel driver is loaded
if ( !(lsmod | grep -q "^tun") ); then
# insmod /opt/lib/modules/tun.o
insmod tun
fi
Я, конечно из танка, но наверное следует внимательно посмотреть на 5099 http://code.google.com/p/wl500g/source/detail?r=5099

lly
19-05-2013, 18:19
Я, конечно из танка, но наверное следует внимательно посмотреть на 5099 http://code.google.com/p/wl500g/source/detail?r=5099
Безусловно, единственное осложнение в том, что мне либо придётся разворачивать самому OpenVPN, либо просить вас пробовать отладочные/промежуточные сборки. Если второй вариант подходит, я их соберу завтра/послезавтра.

njachaj
19-05-2013, 18:46
Безусловно, единственное осложнение в том, что мне либо придётся разворачивать самому OpenVPN, либо просить вас пробовать отладочные/промежуточные сборки. Если второй вариант подходит, я их соберу завтра/послезавтра.
Конечно устроит.

QuickeneR2
14-06-2013, 14:28
Как обещал когда-то давно (http://wl500g.info/showthread.php?29322-OpenVPN&p=258089#post258089), провел небольшую серию экспериментов.
Целью было установление максимально достижимой скорости сравнительно безопасного (а значит шифрованного)
VPN на недорогом оборудовании, и сравнение производительности оборудования и технологий.

Участники: Asus RT-N16, TP-Link TL-WDR4300 и Ubiquiti EdgeRouter Lite.
N16 с местной прошивкой 5066 и openvpn 2.2.2 из Entware.
4300 прошит OpenWRT 12.09, openvpn 2.2.2 и strongswan 5.0.0.
ERL с прошивкой 1.1.0, openvpn 2.2.1 и strongswan 4.4.1

Типы VPN: OpenVPN и IPsec
Второй роутер ("сервер"): Celeron D 3GHz под управлением Scientific Linux 6.4, openvpn 2.3.1 и openswan 2.6.32
Компьютеры-трафикогенераторы: Celeron 2.8GHz и Core2Duo E6850 3GHz, оба под Windows XP

В ходе эксперимента тестируемый роутер подключался к роутеру-серверу патч-кордом, к каждому из роутеров
подключался патч-кордом трафикогенератор, устанавливалось VPN соединение и определялась его скорость
с помощью запущенного на трафикогенераторах iperf 1.7.0.

Тестирование велось в течение 100 секунд, трафик подавался в обе стороны.
Команды:
iperf -s -i 3 (на одном)
iperf -c адрес-первого-компа -i 3 -t 100 -d (на другом)

Общие для всех экспериментов опции OpenVPN: proto udp, comp-lzo adaptive, no tls-auth
Для IPsec менялось шифрование только второй фазы (SA), первая же (ISAKMP) оставалась
на усмотрение устройств. Время жизни ключей - 1 час.

Результаты, МБ/сек, в обе стороны, через двоеточие:



VPN / Model
Asus RT-N16
TL-WDR4300
Ubiquiti ERL


OpenVPN, cipher/hash





aes128/sha1
5:6
9:8.5
9:7.5


aes128/md5
6:5.5
9:8.5
9:8


aes128/none
6.5:8
10.5:11
11:11


blowfish/none
7:8
11.5:11
11:11.5


none/sha1
9.5:8
16:16
14:13


none/md5
10:10
18:16
13:13


none/none
13.5:12
24:27
21.5:23


IPsec, cipher/hash





aes128/sha1
-
16.5:14.5
41:40


aes128/md5
-
18:15.5
41:39



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

Guncka
10-07-2013, 16:43
Можно ознакомиться (http://wl500g.info/showthread.php?28036&p=258140#post258140) с недавними изменениями в репозитории и найти детали (https://dev.openwrt.org/changeset/35412/) в первоисточнике, если есть желание.

Пытался ставить любой из пакетов opevpn (и с ssl и без него, и с rsa), но я не понял, где хранятся от них настройки.Где храниться openvpn.conf??? В старой версии где выбора не было, было все проще. На трех роутерах уже все работает. А тут прямо, в новой версии репозитория я просто завис и не знаю что делать.

MercuryV
10-07-2013, 20:39
Где храниться openvpn.conf
Действительно, готового образца конфига в пакеты не включено.
Пока что выложил отдельно конфиг из optware (http://x.vm0.ru/wl500g-repo/tmp/openvpn.conf) и все примеры из исходников (http://x.vm0.ru/wl500g-repo/tmp/openvpn-samples.tar.gz).
К сожалению, я сам не пользуюсь OpenVPN. Буду рад узнать мнения, каким должен быть конфигурационный файл в составе пакетов.

Guncka
10-07-2013, 22:42
MercuryV, такой файл подойдет, тем более он с комментариями. Но проблема не столько в том, что таких файлов просто нет, а просто не понятно где они должны размещаться. Тк сам файл openvpn находится в /opt/sbin/, конфиг и директорию с ключами я закинул туда же. Но после запуска S20openvpn на выходе все равно получаю failed.

QuickeneR2
11-07-2013, 05:16
MercuryV, такой файл подойдет, тем более он с комментариями. Но проблема не столько в том, что таких файлов просто нет, а просто не понятно где они должны размещаться. Тк сам файл openvpn находится в /opt/sbin/, конфиг и директорию с ключами я закинул туда же. Но после запуска S20openvpn на выходе все равно получаю failed.

Как насчет /opt/etc/openvpn/ ? До разделения пакетов было там.

MercuryV
11-07-2013, 06:45
Как насчет /opt/etc/openvpn/
Скрипт запуска (S20openvpn) использует параметры:

ARGS="--daemon --cd /opt/etc/openvpn --config openvpn.conf"

Guncka
12-07-2013, 08:53
Файл бросал сюда: /opt/etc/openvpn, редактировал S20openvpn, где указывал расположение openvpn.conf, но ничего не получается. Пляски с бубном не помогают. Похоже, в этом репозитории OpenVPN дохлый. Старой версии которая была до 7 февраля (где все вместе) нигде не осталось? А то через Optware она не ставится....

staticroute
20-07-2013, 23:03
Как обещал когда-то давно (http://wl500g.info/showthread.php?29322-OpenVPN&p=258089#post258089), провел небольшую серию экспериментов. Целью было установление максимально достижимой скорости сравнительно безопасного (а значит шифрованного) VPN на недорогом оборудовании, и сравнение производительности оборудования и технологий.

Участники: Asus RT-N16, TP-Link TL-WDR4300 и Ubiquiti EdgeRouter Lite. N16 с местной прошивкой 5066 и openvpn 2.2.2 из Entware. 4300 прошит OpenWRT 12.09, openvpn 2.2.2 и strongswan 5.0.0. ERL с прошивкой 1.1.0, openvpn 2.2.1 и strongswan 4.4.1
Типы VPN: OpenVPN и IPsec
Второй роутер ("сервер"): Celeron D 3GHz под управлением Scientific Linux 6.4, openvpn 2.3.1 и openswan 2.6.32
Компьютеры-трафикогенераторы: Celeron 2.8GHz и Core2Duo E6850 3GHz, оба под Windows XP

В ходе эксперимента тестируемый роутер подключался к роутеру-серверу патч-кордом, к каждому из роутеров подключался патч-кордом трафикогенератор, устанавливалось VPN соединение и определялась его скорость с помощью запущенного на трафикогенераторах iperf 1.7.0. Тестирование велось в течение 100 секунд, трафик подавался в обе стороны. Команды:
iperf -s -i 3 (на одном)
iperf -c адрес-первого-компа -i 3 -t 100 -d (на другом)

Общие для всех экспериментов опции OpenVPN: proto udp, comp-lzo adaptive, no tls-auth
Для IPsec менялось шифрование только второй фазы (SA), первая же (ISAKMP) оставалась на усмотрение устройств. Время жизни ключей - 1 час.

Результаты, МБ/сек, в обе стороны, через двоеточие:


VPN
RT-N16
TL-WDR4300
ERL


OpenVPN, cipher/hash


aes128/sha1
5:6
9:8.5
9:7.5


aes128/md5
6:5.5
9:8.5
9:8


aes128/none
6.5:8
10.5:11
11:11


blowfish/none
7:8
11.5:11
11:11.5


none/sha1
9.5:8
16:16
14:13


none/md5
10:10
18:16
13:13


none/none
13.5:12
24:27
21.5:23


IPsec, cipher/hash


aes128/sha1
-
16.5:14.5
41:40


aes128/md5
-
18:15.5
41:39


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

Ого! TP-Link демонстрирует какие-то невообразимые результаты...

Надо будет сделать тест именно на этих алгоритмах AES-128 / SHA-1, я так понимаю это опции


cipher AES-128-CBC

hmac = SHA1 дефолтный?

QuickeneR2
22-07-2013, 13:59
Ого! TP-Link демонстрирует какие-то невообразимые результаты...

Надо будет сделать тест именно на этих алгоритмах AES-128 / SHA-1, я так понимаю это опции


cipher AES-128-CBC

hmac = SHA1 дефолтный?

Если я правильно понимаю, hmac - это то, что в таблице обозначено как hash, а в конфиге параметр auth. Шифр, да, указывался в виде алгоритм-длина-режим, например aes-128-cbc, режим был всегда cbc.

staticroute
01-08-2013, 18:20
Наткнулся на интересный проект - http://www.softether.org/

скоро должен стать open source.

Сравнение по скорости с OpenVPN:

http://www.softether.org/@api/deki/files/12/=1.3.jpg

Надеюсь, что он действительно стоящий и будет иметь применение на наших с вами роутерах.

stvladimir
08-08-2013, 20:39
Странно ведет себя сервер openvpn на последних билдах:
1.Все пинги ходят.
2.Все ресурсы за сервером доступны.
3.На самом роутере все ресурсы недоступны.
Похоже, что пакеты с tun0 на роутер погибают.
На 5066 все работает как надо.
Конфиги и выхлоп tcpdump, смогу выложить только вечером.

Та же проблема. Думал, что проблема в том, что стояли пакеты из старого репозитория. Не было времени разбираться. Сейчас перешел на новый репозиторий Entware и установил 5233 билд - проблема осталась. При этом откатываюсь на билды до 5099 все работает на ура.

lly
09-08-2013, 07:34
Уже было и на этом форуме, и в issue 406 (http://code.google.com/p/wl500g/issues/detail?id=406) - после r5099 временно надо отключать fastNAT.

stvladimir
09-08-2013, 12:04
Уже было и на этом форуме, и в issue 406 (http://code.google.com/p/wl500g/issues/detail?id=406) - после r5099 временно надо отключать fastNAT.

Пробовал - не помогает.
nvram show | grep misc_fastnat_x
misc_fastnat_x=0

oblikoamorale
16-10-2013, 17:03
на r5297 с отключенным fastnat openvpn/tun на первый взгляд работает, как и прежде.

неожиданно не смог собрать openvpn 2.3.2 - перекроенный авторами configure не находит либы ssl. развёрнутый тут же openvpn 2.2.2 конфигурится, собирается и работает без проблем.

либы openssl 1.0.1e на месте:

-rw-r--r-- 1 4096826 Oct 15 21:05 /opt/brcm/hndtools-mipsel-uclibc/lib/libcrypto.a
-rw-r--r-- 1 681998 Oct 15 21:05 /opt/brcm/hndtools-mipsel-uclibc/lib/libssl.a

конфигурю openvpn так:

AR=/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-ar \
AS=/opt/brcm/hndtools-mipsel-uclibc/bin/bin/mipsel-uclibc-as \
LD=/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-ld \
NM=/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-nm \
CC=/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-gcc \
CPP="/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-gcc -E" \
GCC=/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-gcc \
CXX=/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-g++ \
RANLIB=/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-ranlib \
STRIP=/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-strip \
CFLAGS=" -O -ffunction-sections -fdata-sections " \
LDFLAGS="-Wl,-rpath,/opt/brcm/hndtools-mipsel-uclibc,-gc-sections" \
./configure \
--host=mipsel-linux \
--target=mipsel-linux \
--with-crypto-library=openssl \
--disable-selinux \
--disable-plugins \
--disable-eurephia \
--disable-management \
--disable-debug \
--disable-socks \
--enable-small \
--disable-pkcs11

в результате получаю: https://gist.github.com/anonymous/a4615fdde625f039ce12/raw/de9a9c842e495c621246a0992d5ec86eb18565d0/gistfile1.txt

config.log: https://gist.github.com/anonymous/5d9e296ac508d27f342d/raw/93296f1e8c555551f7e18a0e441bfcdb8d40eb11/gistfile1.txt

подскажите, куда копнуть?

ryzhov_al
17-10-2013, 14:17
либы openssl 1.0.1e на месте:

-rw-r--r-- 1 4096826 Oct 15 21:05 /opt/brcm/hndtools-mipsel-uclibc/lib/libcrypto.a
-rw-r--r-- 1 681998 Oct 15 21:05 /opt/brcm/hndtools-mipsel-uclibc/lib/libssl.aЗачем было класть stage-код в папку тулчейна? Боюсь, теперь там полная каша.

oblikoamorale
17-10-2013, 15:00
Зачем было класть stage-код в папку тулчейна? Боюсь, теперь там полная каша.

а как правильно? :)
штатный make install сложил собранные openssl и lzo в тулчейн, и раньше проблем это не создавало. смотрел я невнимательно, но, вроде бы, файлы ни в include, ни в lib не перезаписывались.

для простоты сборка openvpn и прочих нужных штук у меня происходит отдельно от сборки прошивки. я просто кладу бинарники в gateway/others

konnmor
29-10-2013, 10:20
Здравствуйте!

Установил сервер OpenVPN (openvpn-openssl) на роутер wl500gp (прошивка 1.9.2.7-rtn-r5066).
На удаленной машине Win7 соответственно клиент.

Подключение извне вроде происходит нормально, но сайты некоторые вообще не открываются, некоторые открываются с трудом, в общем все тормозит.
К странице роутера подключиться не удается.
Из локалки вообще не хочет подключаться.

В логе роутера такие строки:


Oct 29 12:57:48 openvpn[395]: TCP connection established with [AF_INET]хх.хх.хх.130:55938
Oct 29 12:57:48 openvpn[395]: TCPv4_SERVER link local (bound): [undef]
Oct 29 12:57:48 openvpn[395]: TCPv4_SERVER link remote: [AF_INET]хх.хх.хх.130:55938
Oct 29 12:57:48 openvpn[395]: WARNING: Bad encapsulated packet length from peer (5635), which must be > 0 and <= 1546 -- please ensure that --tun-mtu or --link-mtu is equal on both peers -- this condition could also indicate a possible active attack on the TCP link -- [Attempting restart...]
Oct 29 12:57:48 openvpn[395]: Connection reset, restarting [0]
Oct 29 12:57:48 openvpn[395]: /sbin/ifconfig tun0 0.0.0.0
Oct 29 12:57:48 openvpn[395]: SIGUSR1[soft,connection-reset] received, process restarting
Oct 29 12:57:49 openvpn[395]: TUN/TAP device tun0 opened
Oct 29 12:57:49 openvpn[395]: do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Oct 29 12:57:49 openvpn[395]: /sbin/ifconfig tun0 10.8.0.2 pointopoint 10.8.0.1 mtu 1500
Oct 29 12:57:49 openvpn[395]: Listening for incoming TCP connection on [undef]


post-firewall:


#!/bin/sh
vpnPort=443
vpnProto=tcp
vpnDevice=tun0
iptables -P INPUT DROP
iptables -D INPUT -j DROP
iptables -A INPUT -p $vpnProto --dport $vpnPort --tcp-flags FIN,SYN,RST,ACK SYN -j BRUTE
iptables -A INPUT -p $vpnProto --dport $vpnPort -j ACCEPT
iptables -I INPUT -i $vpnDevice -j ACCEPT
iptables -I FORWARD -i $vpnDevice -j ACCEPT
iptables -I FORWARD -o $vpnDevice -j ACCEPT
iptables -I OUTPUT -o $vpnDevice -j ACCEPT

конфиг сервера:


proto tcp-server
dev tun0
port 443
ifconfig 10.8.0.2 10.8.0.1
keepalive 10 120
secret static.key

конфиг клиента:


remote myhost.dlinkddns.com 443
dev tun0
secret static.key
proto tcp-client
ifconfig 10.8.0.2 10.8.0.1
redirect-gateway


Куда копать, что посоветуете?

P.S.
Вышеуказанный лог похоже показывает какое-то чужое подключение...
Вот лог точно моего:


Oct 29 15:02:42 openvpn[395]: TCP connection established with [AF_INET]188.хх.хх.242:33030
Oct 29 15:02:42 openvpn[395]: TCPv4_SERVER link local (bound): [undef]
Oct 29 15:02:42 openvpn[395]: TCPv4_SERVER link remote: [AF_INET]188.хх.хх.242:33030
Oct 29 15:02:42 openvpn[395]: Peer Connection Initiated with [AF_INET]188.хх.хх.242:33030
Oct 29 15:02:43 openvpn[395]: Initialization Sequence Completed
Oct 29 15:12:39 openvpn[395]: Connection reset, restarting [0]
Oct 29 15:12:39 openvpn[395]: /sbin/ifconfig tun0 0.0.0.0
Oct 29 15:12:40 openvpn[395]: SIGUSR1[soft,connection-reset] received, process restarting
Oct 29 15:12:41 openvpn[395]: TUN/TAP device tun0 opened
Oct 29 15:12:41 openvpn[395]: do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Oct 29 15:12:41 openvpn[395]: /sbin/ifconfig tun0 10.8.0.2 pointopoint 10.8.0.1 mtu 1500
Oct 29 15:12:41 openvpn[395]: Listening for incoming TCP connection on [undef]

Клиент подключается, но сайты не открываются, к веб-интерфейсу роутера 192.168.1.1 также достучаться не могу.

konnmor
30-10-2013, 12:15
Вроде нашел в чем косяк - в конфигах сервера и клиента строка ifconfig 10.8.0.2 10.8.0.1
была одинаковая. Поменял местами IP у клиента и всё заработало. Почти.
В локалку за роутером удаленно с клиента теперь захожу нормально. Но сайты открываются только разрешенные админом. Те, которые блокировались на стороне клиента без vpn так и блокируются c vpn.
В связи с этим вопрос - получается мой трафик в vpn-туннеле далеко не приватен, раз он всё-таки фильтруется? Или я где-то не включил шифрование? Зачем тогда создавался statiс.key?

AlexeyS
30-10-2013, 19:10
Но сайты открываются только разрешенные админом. Те, которые блокировались на стороне клиента без vpn так и блокируются c vpn.


Копайте в сторону DNS! Сервер должен браться через тоннель, а не локальный.
Думаю, для вашей задачи больше подойдёт sock прокси на основе ssh и тюнинг браузера, чтобы разрешал DNS через прокси.

konnmor
31-10-2013, 13:23
Копайте в сторону DNS! Сервер должен браться через тоннель, а не локальный.
Попробовал вставить в конфиг сервера push "dhcp-option DNS 10.8.0.2".
Ничего не изменилось, как часть сайтов блокировалась, так и блокируется. Или нужно как-то по другому?


тюнинг браузера, чтобы разрешал DNS через прокси.
А можно про это поподробнее, что за тюнинг?

MercuryV
31-10-2013, 20:00
А можно про это поподробнее, что за тюнинг?
Для Firefox - параметр network.proxy.socks_remote_dns
Должен быть true

konnmor
03-11-2013, 15:28
Для Firefox - параметр network.proxy.socks_remote_dns
Проверял настройки Firefox - вышеуказанный параметр true.
Пробовал установить DNS принудительно в настройках соединения tun0 - 10.8.0.2 и 8.8.8.8. Результат отрицательный, корпоративная защита по прежнему блокирует запрещенные сайты. Может быть с помощью Openvpn в нашей корпоративной сети её нельзя обойти в принципе? Уточню, что на клиентском компе системные настройки хранятся на сервере организации, выход в инет через ISA прокси. Из плюсов - права у меня админские. Кстати, через ТОР абсолютно все сайты доступны, всё работает (putty, WinSCP).

MercuryV
04-11-2013, 12:17
AlexeyS предлагал _вместо_ VPN использовать socks via ssh (про браузер - вторично)
Вы такой вариант пробовали?

konnmor
07-11-2013, 05:32
AlexeyS предлагал _вместо_ VPN использовать socks via ssh (про браузер - вторично)

Да, такой вариант работает. На роутере поставил stunnel сервер, на удаленном компе клиент. Запускаю динамический туннель ssh (putty) через stunnel, настраиваю Firefox на soсks прокси, всё чудесно работает, все сайты доступны. Через ТОР тоже всё ок.

Но всё же хочется понять, почему же с OpenVPN такая ситуация? Где меня режут?

AlexeyS
07-11-2013, 06:00
Но всё же хочется понять, почему же с OpenVPN такая ситуация? Где меня режут?

Скорее всего дело в DNS, нужно сделать так, чтобы компьютер использовал только сторонний DNS.

Asgard
27-11-2013, 15:38
Сгенерил сертификаты и ключи с эллиптическими кривыми при помощи OpenSSL и в логах вижу следующее

# cat /tmp/openvpn.log|grep ECDH
Wed Nov 27 17:09:31 2013 194.44.31.233:2698 Control Channel: TLSv1, cipher TLSv1/SSLv3 ECDH-ECDSA-AES256-SHA

Может кто подскажет как перейти от ECDH к ECDHE, ведь должны поддерживаться оба

# openvpn --show-tls|grep 256|grep ECDH|grep ECDSA
TLS-ECDHE-ECDSA-WITH-AES-256-CBC-SHA
TLS-ECDH-ECDSA-WITH-AES-256-CBC-SHA

Попытка прописать в конфиге

# cat /etc/openvpn/server1/config.ovpn|grep ECDH
tls-cipher TLS-ECDHE-ECDSA-WITH-AES-256-CBC-SHA

приводит к ошибке авторизации.