synology.forum архив спільноти · 2005–2022
ai.synology.forum →
ГлавнаяОсновные Вопросы по Продукции › openvpn

openvpn

ariyets · 01.05.2010

Здравствуйте! Работаю в компании, где безопасность читает весь мой трафик. Есть желание закрыться от них прокинув тунель до дома, откуда уже и выходить в инет. Читал про openvpn, но не смог поставить его у себя дома, слаб обказался :P .. Кто то сталкивался с подобными задачами, накидайте шагов плиз? У меня DS110j + Asus WL520GU.

RIA · 02.05.2010

Насчёт openvpn не подскажу, но.. как технически вы собираетесь достучаться с работы до дома? Если через Интернет, тогда что это даст?

Alexeybb · 04.05.2010

Присоединяюсь к ariyets.

У меня на работе такая же фигня.

Igr_ua · 04.05.2010
Присоединяюсь к ariyets.

У меня на работе такая же фигня.

 

Я, для себя эту проблему решил так:

 

Прямой IP + DynDNS + GPRS(или 3g)

 

Все настроил и хожу откуда надо и когда надо через мобильный... ( в смысле с компа через мобильный интернет)

transmission-remote-dotnet настраивается и задачи ставлю удаленно.

ariyets · 04.05.2010

Народ! Решил проблемму немного неожиданно для себя, случайно наткнувшись на статеечку... Смысл в том, что на работе, пользуя ssh-клиент (putty) коннекчусь домой на роутер, где работает ssh сервер (роутер у меня асус прошит олегом), создавая туннель, и через него уже использую браузер и аську. Единственное что, в настройках браузера и аськи прописываю прокси socks. На стороне дома вообще никаких настроек не надо делать! Если тема интересна, могу более детально описать!

Lesort · 05.05.2010
Народ! Решил проблемму немного неожиданно для себя, случайно наткнувшись на статеечку... Смысл в том, что на работе, пользуя ssh-клиент (putty) коннекчусь домой на роутер, где работает ssh сервер (роутер у меня асус прошит олегом), создавая туннель, и через него уже использую браузер и аську. Единственное что, в настройках браузера и аськи прописываю прокси socks. На стороне дома вообще никаких настроек не надо делать! Если тема интересна, могу более детально описать!
Да, опиши, если можно. Все понятно, кроме того как создать туннель через ssh.
Lesort · 05.05.2010

Все, разобрался. Спасибо за идею.

danilovav · 07.05.2010

OpenVPN сам по себе совсем не сложен, на том же хабре куча описаний. Например, http://ikardedalovich.habrahabr.ru/blog/78101/, разве что push-remote-gateway добавить

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

Zyxmon · 08.05.2010
...но думаю что и на NAS можно реализовать, вопрос в том как трафик развести - ведь NAS не роутер и из-за этого могут быть проблемы (например, двойной NAT).

Без проблем поднимается openvpn из optware на synology, что вчера и сделал. В последних прошивках драйвер ядра tun.ko есть, лежит в /lib/modules

смысла поднимать второй nat на synology не вижу. достаточно включить маршрутизацию:

echo 1 > /proc/sys/net/ipv4/ip_forward

на маршрутизаторе нужно создать статический маршрут в openvpn подсеть. Создание конфигураций и ключей много где описано.

Скрипт запуска openvpn из optware у меня такой.

#!/bin/sh

MODULES_BASE="/lib/modules"
KERNEL_VERSION=`uname -r`

case "$KERNEL_VERSION" in
"2.6.24")
    KERNEL_MODULES_OPENVPN="tun.ko"
;;
esac

success() {
    [ -n $1 ] && echo "success" || echo "$1: success"
}

failure() {
    [ -n $1 ] && echo "failed" || echo "$1: failed"
}

insmod_syno() {
    local modules=$1
    local mod
    local err=0

    for mod in $modules; do
        echo -n "$mod: "
        /sbin/insmod ${MODULES_BASE}/${mod} > /dev/null 2>&1
        ret=$?
        [ $ret -eq 0 ] && success $mod || failure $mod
        err=`expr $err + $ret`;
    done

    return $err
}

rmmod_syno() {
    local modules=$1
    local mod
    local err=0
    
    for mod in $modules; do
        echo -n "$mod: "
        /sbin/rmmod ${MODULES_BASE}/${mod} > /dev/null 2>&1
        ret=$?
        [ $ret -eq 0 ] && success $mod || failure $mod
        err=`expr $err + $ret`;
    done
    
    return $err
}

start() {
    local ret=0;

    echo ""
    echo "Loading OpenVPN kernel modules:"
    insmod_syno "$KERNEL_MODULES_OPENVPN"
    
    # Make sure IP forwarding is enabled
    echo 1 > /proc/sys/net/ipv4/ip_forward

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

    echo ""
    echo -n "Starting OpenVPN in daemon mode...."
    /opt/sbin/openvpn --cd /opt/etc/openvpn --daemon --config /opt/etc/openvpn/myconf.ovpn --script-security 2 --log-append /opt/var/log/openvpn.log > /dev/null 2>&1
    ret=$?
    [ $ret -eq 0 ] && success || failure
    err=`expr $err + $ret`;
    
    return $err
}

stop() {
    
    echo ""
    echo -n "Killing OpenVPN processes...."
    if [ -n "`pidof openvpn`" ]; then 
        /usr/bin/killall openvpn 2>/dev/null
    fi
    ret=$?
    [ $ret -eq 0 ] && success || failure
    
    sleep 1

    echo ""
    echo "Unloading OpenVPN kernel modules... "
    rmmod_syno "$KERNEL_MODULES_OPENVPN"

    return $ret
}

restart() {
    stop
    sleep 3
    start
}

case "$1" in
    start)
        start
        RETVAL=$?
;;
    stop)
        stop
        RETVAL=$?
;;
    restart)
        restart
        RETVAL=$?
;;
    *)
        echo $"Usage: ${0##*/} {start|stop|restart}"
        RETVAL=2
;;
esac

exit $RETVAL

Возникла, правда, одна проблема. С openvpn клиента доступны только synology и роутер. Проблема описана тут

http://forum.synology.com/enu/viewtopic.php?f=27&t=20724

(для просмотре некоторых разделов forum.synology.com нужна регистрация). Если разберусь с проблемой - напишу.

danilovav · 08.05.2010

Эта проблема - не такая уж проблема, если использовать нормальные маршрутизаторы :D

Смысл ее в том, что LAN-клиенты (в той же подсети, что и NAS) ничего не знают об OpenVPN сети и пытаются ответные пакеты для нее отправлять на маршрутизатор, а не на NAS.

Решений несколько

1) на клиентах надо руками делать маршрут на OpenVPN сеть через NAS (ага, привет камеры и прочие мегатонкие девайсы)

2) на NAS надо делать NAT из OpenVPN сети в LAN

3) на маршрутизаторе сделать правила и маршрут LAN (lannet) > LAN (OpenVPN net) (заворачивать весь трафик из LAN для OpenVPN сети на NAS) - тут правда разве что WRT девайсы из домашних справятся

4) обеспечить, чтобы NAS был а шлюзом для сети - не вариант для случая с NAS т.к. весь трафик до него маршрутизировать будет очень медленно. Но у меня внешний OpenVPN девайс и поэтому я пошел именно таким путем - вынес в VLAN

Сам я считаю что для домашнего использования подойдет п.2, надо только разобраться

Zyxmon · 08.05.2010
Эта проблема - не такая уж проблема, если использовать нормальные маршрутизаторы :D

Смысл ее в том, что LAN-клиенты (в той же подсети, что и NAS) ничего не знают об OpenVPN сети и пытаются ответные пакеты для нее отправлять на маршрутизатор, а не на NAS.

Решений несколько

1) на клиентах надо руками делать маршрут на OpenVPN сеть через NAS (ага, привет камеры и прочие мегатонкие девайсы)

2) на NAS надо делать NAT из OpenVPN сети в LAN

3) на маршрутизаторе сделать правила и маршрут LAN (lannet) > LAN (OpenVPN net) (заворачивать весь трафик из LAN для OpenVPN сети на NAS) - тут правда разве что WRT девайсы из домашних справятся

4) обеспечить, чтобы NAS был а шлюзом для сети - не вариант для случая с NAS т.к. весь трафик до него маршрутизировать будет очень медленно. Но у меня внешний OpenVPN девайс и поэтому я пошел именно таким путем - вынес в VLAN

Сам я считаю что для домашнего использования подойдет п.2, надо только разобраться

Ну так я сделал по варианту 3). С клиентов LAN можно пинговать ip openvpn. tracerout идет через маршрутизатор. Скорее это проблема с proxyarp.

Как написано по приведенной ссылке, если оставить на synology маршрут в lan только через шлюз по умолчанию, то все начинает работать. Но это не выход.

danilovav · 09.05.2010

А покажите плиз ваш конфиг /opt/etc/openvpn/myconf.ovpn. Вариант с ARP proxy (эмуляция 2 уровня через 3й) не должен требовать шлюзов вообще, но порождает много лишнего трафика (поэтому я его не использую). Описанная вами проблема бывает обычно при реализации чисто 3 уровня.

Zyxmon · 09.05.2010
А покажите плиз ваш конфиг /opt/etc/openvpn/myconf.ovpn. Вариант с ARP proxy (эмуляция 2 уровня через 3й) не должен требовать шлюзов вообще, но порождает много лишнего трафика (поэтому я его не использую). Описанная вами проблема бывает обычно при реализации чисто 3 уровня.

Насколько понимаю в kernel от synology отключена возможность мостов. Иначе бы сделал server-bridge.

Пока не стал делать эмуляцию с arp_proxy. Хотя уже понял как.

Проблему изложил тут - http://ddixlab.ru/forum/viewtopic.php?p=18085

ip в посте на ddixlab в соответсвии со схемой из поста. Реально у меня другие.

подсеть за nat 10.0.0.0/24

конфиг изначально был такой (немного его менял, но это ни к чему не привело)

port XXXX # он естественно проброшен
proto udp
dev tun
ca ca.crt
cert NAS.crt
key NAS.key
dh dh1024.pem
#local 10.0.0.6
server 192.168.99.0 255.255.255.0
push "route 10.0.0.0 255.255.255.0"
# client-to-client
keepalive 20 180
comp-lzo
max-clients 10
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
log-append openvpn.log
verb 5
mute 20

Zyxmon · 23.05.2010

Кривое решение своих проблем с openvpn изложил тут

http://forum.synology.com/enu/viewtopic.ph...;t=20724#p99568

korti · 19.06.2010

Всем привет!

Подскажите плиз с какой стороны начать копать установку OpenVPN на Synology?

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

korti · 22.06.2010

Нашел инструкцию по развертыванию vpn

http://blog.deadcode.net/2009/05/19/synolo...envpn-client/2/

но случился затык в 11 пункте

Edit the following scripts

 

/opt/etc/openvpn/easy-rsa/clean-all

/opt/etc/openvpn/easy-rsa/build-ca

/opt/etc/openvpn/easy-rsa/build-key-server

/opt/etc/openvpn/easy-rsa/build-key

/opt/etc/openvpn/easy-rsa/build-dh

 

change the first line to

 

#!/opt/bin/bash

 

может, кто подскажет, что это значит?

Zyxmon · 22.06.2010
может, кто подскажет, что это значит?

Это инструкция по генерации ключей. Если привычней под windows - сгенерите ключи под windows. Инструкций по генерации ключей под windows вагон и маленькая тележка (google).

korti · 23.06.2010
Это инструкция по генерации ключей. Если привычней под windows - сгенерите ключи под windows. Инструкций по генерации ключей под windows вагон и маленькая тележка (google).

 

Спасибо, из под винды проще )

Zyxmon · 28.07.2010

Вопросы по openvpn лучше задавать в теме http://www.synology.forum/index.php?showtopic=1648

 

Там и ссылка на wiki по установке.