Zentyal Forum, Linux Small Business Server

International => Russian => Topic started by: mad_est on February 20, 2012, 08:46:08 pm

Title: openVPN
Post by: mad_est on February 20, 2012, 08:46:08 pm
Всем доброго времени.
Че то меня переклинило...
если у меня поднят openvpn сервер, есть белый айпишник к нему, 2 (два) удаленных офисе, мне надо поднять vpn между ними, чтобы они видели нашу локалку, с шарами, для АТС так же надо vpn.
кто нить делал такое?
просто создаю у себя в офисе сервер, в конфигурации указываю "разрешить туннели z-z", в удаленных офисах ставлю такие же шлюзы, там создаю клиенты, показываю что конектится к моему серверу..
теперь вопрос, обоим офисам будет выдаваться ip из диапазона, который я указан на главном сервере (например: 192.168.160.0/24).
если первый удаленный подконектится, сможет ли второй подключится к основной машине? не будет ли конфликтов между ними? спасибо.
Title: Re: openVPN
Post by: corwin-mg on March 10, 2012, 05:15:25 pm
Всем доброго времени.
Че то меня переклинило...
если у меня поднят openvpn сервер, есть белый айпишник к нему, 2 (два) удаленных офисе, мне надо поднять vpn между ними, чтобы они видели нашу локалку, с шарами, для АТС так же надо vpn.
кто нить делал такое?
просто создаю у себя в офисе сервер, в конфигурации указываю "разрешить туннели z-z", в удаленных офисах ставлю такие же шлюзы, там создаю клиенты, показываю что конектится к моему серверу..
теперь вопрос, обоим офисам будет выдаваться ip из диапазона, который я указан на главном сервере (например: 192.168.160.0/24).
если первый удаленный подконектится, сможет ли второй подключится к основной машине? не будет ли конфликтов между ними? спасибо.
192.168.160.0/24 - это вообще левые адреса. Главное, чтобы они не совпадали с существующими сетями у тебя. Выбираешь сеть, где у тебя самый хороший интернет с внешним белым адресом или доменным именем. Далее ставишь там главный сервер. К нему будут подсоединяться другие серверы, которые будут клиентами. Создаёшь на сервере сертфикаты, заводишь на этом центральном сервере серверы VPN для каждого подключения Zentyal-Zentyal c паролем. Скачиваешь потом с каждого созданного сервера файл настроек, где также указываешь адрес своего сервера OpenVPN. Далее, поднимаешь клиентов (сервера Zentyal, которые будут подключаться к центральному серверу Zentyal). Последним шагом - настройка маршрутизации на ПК, которые должны ходить в другие сети. При этом не надо будет никому ничего выдавать. Если надо выдавать, то есть PPtP с поддержкой VPN.
Title: Re: openVPN
Post by: mad_est on March 11, 2012, 06:32:10 am
corwin-mg спасибо большое за ответ, все так и сделал) мне ваще офисы надо было соединить только для телефонии, вот такая древняя платка стоит у нас АТС)
Title: Re: openVPN
Post by: corwin-mg on March 11, 2012, 06:45:43 am
Работает? : )
Title: Re: openVPN
Post by: mad_est on March 11, 2012, 07:00:33 am
я пока не тестовом проверил, все работает.. осталось только на стабильность обкатать... но думаю это со временем) в этом месяце буду внедрять в двух офисах удаленных - посмотрим))

как думаешь какой канал нужно в головном иметь?
Title: Re: openVPN
Post by: corwin-mg on March 11, 2012, 10:04:16 am
Мне хватает 512к (ADSL), чтобы осуществлять мониторинг серверов в сетях и администрирование (RDP). Ну и юзеры тоже используют этот канал, чтобы в "тырнет" ходить через прокси. Телефонию не гонял по OpenVPN каналу. Пробовал по IPSec...работает. Правда задержки и эхо было при разговоре...но это уже издержки VoIP и настроек QoS.
Title: Re: openVPN
Post by: mad_est on March 11, 2012, 10:59:48 am
ок, спс, в офисе 10мб в обе стороны будет скоро - проверим)
Title: Re: openVPN
Post by: atikhonov on April 24, 2012, 09:52:35 am
Зачем отдельно прописывать маршрутизацию на ПК? Для этого есть Advertised Networks в настройках VPN-сервера.
Title: Re: openVPN
Post by: corwin-mg on April 25, 2012, 07:57:52 am
Имеются в виду: Объявленные сети? Если речь про них, то у меня основным шлюзом не Zentyal является. Поэтому приходится прописывать маршрут в другую сеть руками. Вот если бы DHCP умел бы выдавать маршруты ещё, и много, то тогда бы не прописывал руками ничего : )
Title: Re: openVPN
Post by: atikhonov on May 16, 2012, 12:48:37 pm
А рабочие станции на чем?
Title: Re: openVPN
Post by: YOBA on May 22, 2012, 02:56:23 pm
Товарищи, как сделать так, чтобы шлюз, который находится в advertised network становился шлюзом по умолчанию у клиентов OpenVPN?

Само собой разумеется, что правка /etc/openvpn/<имя>.conf "смывается" zentyal'ом.

Где находятся шаблоны, которые необходимо поправить, чтобы прописать в конфигах openvpn настройку, согласно которой клиентам будет "пушиться" днс и шлюз?
Title: Re: openVPN
Post by: Oiler on May 26, 2012, 09:43:49 pm
Ситуация такая: настроил на сервере OpenVPN, на домашнем ноуте установил клиента, подключаюсь, вижу ресурсы на сервере, проходят пинги на машины за сервером по айпишникам офисной сети, по http:\\внутренний_ip виден сайт на внутренней машине, в сетевом окружении клиента виден только сервер. Как увидеть в сетевом окружении другие машины за сервером? Что не доделано?
Title: Re: openVPN
Post by: Oiler on June 01, 2012, 10:28:07 am
Ситуация такая: настроил на сервере OpenVPN, на домашнем ноуте установил клиента, подключаюсь, вижу ресурсы на сервере, проходят пинги на машины за сервером по айпишникам офисной сети, по http:\\внутренний_ip виден сайт на внутренней машине, в сетевом окружении клиента виден только сервер. Как увидеть в сетевом окружении другие машины за сервером? Что не доделано?
UP!
Title: Re: openVPN
Post by: corwin-mg on June 06, 2012, 12:56:30 pm
А рабочие станции на чем?
Windows XP :) Стандартная схема
Title: Re: openVPN
Post by: mravil on June 07, 2012, 10:07:45 am
Закрыты порты на сервере. Я вообще разрешил сети 192.168.160.0/24 полный доступ к своей внутренней сети
Title: Re: openVPN
Post by: Oiler on July 02, 2012, 12:43:04 pm
Закрыты порты на сервере. Я вообще разрешил сети 192.168.160.0/24 полный доступ к своей внутренней сети
Разрешил всё туда-обратно и в "Правила фильтрации из внешних сетей на внутренние сети" и в "Правила Фильтрации между внутренними сетями" по UDP 1194 (как в настройке сервера VPN), сервер слушает "все интерфейсы", результат без изменений:
Quote
настроил на сервере OpenVPN, на домашнем ноуте установил клиента, подключаюсь, вижу ресурсы на сервере, проходят пинги на машины за сервером по айпишникам офисной сети, по http:\\внутренний_ip виден сайт на внутренней машине, в сетевом окружении клиента виден только сервер.
Как увидеть офисные машины?
Title: Re: openVPN
Post by: YOBA on July 04, 2012, 07:47:11 am
Закрыты порты на сервере. Я вообще разрешил сети 192.168.160.0/24 полный доступ к своей внутренней сети
Разрешил всё туда-обратно и в "Правила фильтрации из внешних сетей на внутренние сети" и в "Правила Фильтрации между внутренними сетями" по UDP 1194 (как в настройке сервера VPN), сервер слушает "все интерфейсы", результат без изменений:
Quote
настроил на сервере OpenVPN, на домашнем ноуте установил клиента, подключаюсь, вижу ресурсы на сервере, проходят пинги на машины за сервером по айпишникам офисной сети, по http:\\внутренний_ip виден сайт на внутренней машине, в сетевом окружении клиента виден только сервер.
Как увидеть офисные машины?

Тебе надо в настройках VPN-сервера тыцнуть кнопачьку "Advertised networks" и добавить туда твою локаклку.
Title: Re: openVPN
Post by: Eagle on July 06, 2012, 03:33:50 pm
Товарищи, как сделать так, чтобы шлюз, который находится в advertised network становился шлюзом по умолчанию у клиентов OpenVPN?

Само собой разумеется, что правка /etc/openvpn/<имя>.conf "смывается" zentyal'ом.

Где находятся шаблоны, которые необходимо поправить, чтобы прописать в конфигах openvpn настройку, согласно которой клиентам будет "пушиться" днс и шлюз?

Настройки лежат по адресу /usr/share/zentyal/stubs/openvpn
Title: Re: openVPN
Post by: tunsa on July 07, 2012, 04:29:47 pm
Re: openVPN
« Reply #14 on: June 07, 2012, 10:07:45 am »
Quote
Закрыты порты на сервере. Я вообще разрешил сети 192.168.160.0/24 полный доступ к своей внутренней сети


А как ты это сделал??? Как это нужно прописать в Файрволе подскажи плиз......
Title: Re: openVPN
Post by: tunsa on July 08, 2012, 01:53:30 pm
а как это сделать в файрволе???
Title: Re: openVPN
Post by: mravil on July 09, 2012, 05:23:30 am
Packet Filter ▸ External networks to internal networks
Decision: Accept
Source: 192.168.160.0/24
Destination: Any
Service:    Any
Description: OpenVPN

Также как писал модератор atikhonov нужно использовать Advertised Networks, просто поставив в настройках OpenVPN галочку на Allow client-to-client connections
Title: Re: openVPN
Post by: tunsa on July 09, 2012, 10:01:11 am
спс....блин так же делала всё равно локальные машины клиента openvpn не видят внутреннюю сеть сервера openvpn. А сервер openvpn и клиент видят внутренние сети друг друга....В чем может быть проблема??????
Title: Re: openVPN
Post by: mravil on July 09, 2012, 10:18:56 am
спс....блин так же делала всё равно локальные машины клиента openvpn не видят внутреннюю сеть сервера openvpn. А сервер openvpn и клиент видят внутренние сети друг друга....В чем может быть проблема??????
То есть VPN-клиент имеет доступ к ресурсам Zentyal сервера, но не может получить доступ к ресурсам компьютера в локально для Zentyal сети? Правильно я вас понимаю? Какая ОС установлена на VPN-клиенте - Windows или Linux?
Покажите маршруты VPN-клиента
Code: [Select]
route print - просмотр маршрутов на Windows
Code: [Select]
route - просмотр маршрутов на Linux
Title: Re: openVPN
Post by: Oiler on July 11, 2012, 02:15:35 pm
Тебе надо в настройках VPN-сервера тыцнуть кнопачьку "Advertised networks" и добавить туда твою локаклку.
Указана офисная сеть, не помогает...
Title: Re: openVPN
Post by: Licht on October 15, 2012, 09:08:17 am
Подниму тему.
Как добавить маршрут на сервере к сети которая находиться за клиентом?
Title: Re: openVPN
Post by: mravil on October 15, 2012, 11:15:19 am
Подниму тему.
Как добавить маршрут на сервере к сети которая находиться за клиентом?
Одного маршрута мало. Нужно еще рзарешаюющее правило для фаервола.
К примеру
Zentyal
static ip: 192.168.1.1 netmask 255.255.255.0
OpenVPN ip: 192.168.160.1

Client - наш клиент,
static ip: 192.168.2.1 netmask  255.255.255.0
Openvpn ip: 192.168.160.2

На Zentyal пишем:
Code: [Select]
route add -net 192.168.2.0 -netmask 255.255.255.0 192.168.160.1
iptables -I FORWARD -p ALL -s 192.168.1.0/24 -d 192.168.2.0/24 -j ACCEPT
Первая строка задает маршрут из Zentyal в сеть клиента 192.168.2.0/24 через шлюз 192.168.160.2

Это же самое можно сделать через web-морду:
1) Network -> Static Routes -> Add new
Network:    192.168.2.0/24
Gateway:    192.168.160.2
2) Firewall -> Filtering rules for internal networks -> Add new
Decision:    Accept
Source:    192.168.1.0/24
Destination:    192.168.2.0/24
Service:    Any


Теоретически должно работать. Если на стороне клиента шлюз, то и там нужно прописать правило, разрешающее доступ из сети 192.168.1.0/24 к ресурсам сети 192.168.2.0/24
Title: Re: openVPN
Post by: Licht on October 25, 2012, 04:27:33 pm
При попытке добавить маршрут через вэбморду.
Gateway 192.168.160.2 not reachable

Если добавлять маршрут руками то все нормально, все ходит и без правил в фаере.

есть гли где возможность прописать добавление маршрута в обход вэбинтерфейса?
Title: Re: openVPN
Post by: mravil on October 29, 2012, 03:51:54 am
Клиент поднят? Адрес клиента верный? Пинг до клиента идет?
Title: Re: openVPN
Post by: Licht on October 31, 2012, 11:17:48 am
Да, и при ручном добавлении маршрута пинг идет в сеть за клиентом. Необходимо автомотизировать процесс.
может как вариант использовать hooks? Как добавить тогда?
Title: Re: openVPN
Post by: Russian_Ivan on January 15, 2013, 03:28:26 pm
Доброго времени суток.
В сети провайдера (внешней сети) имеются мой Zentyal и сервер баз данных (win2003). к этому серверу подключаются пользователи из локальной сети за моим Zentyal-ом (внутренней сети), а так же несколько пользователь из внешней (все на виндоводы). Все это идет без какого либо шифрования.
Есть вариант организовать на Зенте OpenVPN сервер, а остальные будут подключатся к нему  как клиенты. VPN-канал между БД-сервером и Зентом я поднял, а дальше возникает ряд специфических вопросов.

1)как сделать так, чтоб БД-сервер при подключении к VPN всегда получал один и  тоже IP адрес? Это необходимо для настройки программы БД-клиента. Желательно, но не обязательно, чтоб все VPN-клиенты при конекте получали постоянные адреса.

2)Вопрос про сертификаты. При созданни VPN-сервера я указал конкретный клиентский сертификат. Далее все клиенты будут подключатся по одному сертификату, или каждому клиенты требуется свой сертификат?

3) Licht, А какой протокол используешь, для VPN-канала?
Title: Re: openVPN
Post by: vovannovig on January 15, 2013, 07:40:43 pm
Доброго времени суток.
В сети провайдера (внешней сети) имеются мой Zentyal и сервер баз данных (win2003). к этому серверу подключаются пользователи из локальной сети за моим Zentyal-ом (внутренней сети), а так же несколько пользователь из внешней (все на виндоводы). Все это идет без какого либо шифрования.
Есть вариант организовать на Зенте OpenVPN сервер, а остальные будут подключатся к нему  как клиенты. VPN-канал между БД-сервером и Зентом я поднял, а дальше возникает ряд специфических вопросов.

1)как сделать так, чтоб БД-сервер при подключении к VPN всегда получал один и  тоже IP адрес? Это необходимо для настройки программы БД-клиента. Желательно, но не обязательно, чтоб все VPN-клиенты при конекте получали постоянные адреса.

2)Вопрос про сертификаты. При созданни VPN-сервера я указал конкретный клиентский сертификат. Далее все клиенты будут подключатся по одному сертификату, или каждому клиенты требуется свой сертификат?

3) Licht, А какой протокол используешь, для VPN-канала?
1-Чтобы получал один адрес а графе адреса VPN(в РРТР указывается и так один,а в OpenVPN в основном сеть т.е. /24 подправь...) указать ip/32 (Маска 32 - 1 адрес)
2-Для каждого OpenVPN  соединения надо свой,один корневой и один создавай сертификат клиента т.е. корневой один,а сертификаты клиентов у всех разные.

С маршрутизацией под окном встречал грабли в виду малых прав пользователя под которым запускается и поэтому таблицу маршрутизации автоматически не правит.Вообще все маршутизирует сервер - если указано default gateway то вообще и инет будет с сервера идти,и объявляются сети на сервере - он маршрутизирует!
Title: Re: openVPN
Post by: Russian_Ivan on January 16, 2013, 09:14:51 am

1-Чтобы получал один адрес а графе адреса VPN(в РРТР указывается и так один,а в OpenVPN в основном сеть т.е. /24 подправь...) указать ip/32 (Маска 32 - 1 адрес)
2-Для каждого OpenVPN  соединения надо свой,один корневой и один создавай сертификат клиента т.е. корневой один,а сертификаты клиентов у всех разные.


В настройках vpn-сервера нельзя выставить ip/32, только ip/30. К тому же,насколько я понимаю, к одному созданному vpn-серверу могут подключится несколько пользователей.При этом они  будут находится в одной виртуальной сети. в настройках есть пункт "Client authorization by common name:" в коментариях к нему написано " If disabled, any client with a certificate generated by Zentyal will be able to connect. If enabled, only certificates whose common name begins with the selected value will be able to connect. " (что я перевел как "Если disabled, то любой клиент с генерированным zentyal-ом сертификатом, может подключится, иначе только клиенты, у которых сертификат совпадает с выбранным."). Получается, что по одному сертификату может подключится любой клиент, если этот сертификат указать в настройках.

Но остается вопрос про постоянный IP-адрес для хотя бы одного клиента. Если я на клиенте укажу статический адрес (скажем 192.168.30.200), а потом перезапущу openvpn GUI, получается странная картина. Сам GUI говорит, что клиент получил ip 192.168.30.2, в "сетевых интерфейсах" в свойствах VPN-интерфейса пишется, что IP-адрес получается автоматически, а закладке "состояние" выдается 192.168.30.200. однако через route print  пропадает путь до компьютеров в моей локальной сети. А если оставить как есть и разрешить DHCP, то все работает как часы, но IP клиента будет 192.168.30.2. и я боюсь, что этот адрес будет зависить, кто из клиентов подключится  раньше.


Title: Re: openVPN
Post by: Licht on January 21, 2013, 12:46:18 pm
ip у клиента будет все время один и тот же, какой именно можно глянуть в /etc/openvpn/***.d/***-ipp.txt
как добавить маршрут к сети которая находиться за клиентом:
в папке /etc/zentyal/hooks/ лежат шаблоны, при помощи их можно выполнить дополнительные настройки. Для OpenVPN сделал добавление маршрута скриптом после старта сервиса, т.е. берем файл template.postservice копируем его под именен openvpn.postservice делаем исполняемым.
для примера:
:~# cat /etc/zentyal/hooks/openvpn.postservice
ip r add 192.168.1.0/24 via 192.168.160.2 dev tap0
Title: Re: openVPN
Post by: Russian_Ivan on January 24, 2013, 10:14:32 am
Путем проб и ошибок  я частично разобрался в этом вопросе. Вот инструкция для чайников вроде меня.
1) Создать на каждого клиента отдельный сертификат. Например:
"VPN-client-1"
"VPN-client-2"
"VPN-client-DB"
2) Создать еще один сертификат, в данном примере "VPN-client".
3) При создании VPN-сервера (с именем "vpn-server" ;)) выбрать использовать клиентский сертификат (Client authorization by common name) "VPN-client", а при создании новых клиентов (Download client bundle) выбирать сертификат с именами, удовлетворяющими условию "VPN-client*", где *-любой набор символов, разрешенный при создании новой лицензии (например "VPN-client-1"). Клиент с сертификатом "VPN_cl" подключится к конкретному VPN-серверу уже не сможет.
4) После подключения VPN-клиентов к Zeyntyal,  в настройках  VPN-сервера снять галочку Enable, и сохранить изменения. (Без этого не обойтись, иначе все дальнейшие изменения не сохранятся) После этого залезть в файл /etc/openvpn/vpn-server.d/vpn-server-ipp.txt и там указать какой ip-адрес присвоить клиенту с определенным сертификатом. Можно и самому в ручную вписать еще не подключившихся клиентов. В этом примере файл выглядит так:
VPN-client-1, 192.168.160.101
VPN-client-2, 192.168.160.102
VPN-client-DB, 192.168.160.100
5)Теперь можно запустить VPN-сервер и вы увидите, что все клиенты получили указанные вами ip-адреса.
6) Те, кто использует OpenVPN-installer под Windows и хочет, чтоб подключение к VPN было в автозагрузке, могут сделать так. Создаем в "\Documents and Settings\All Users\Главное меню\Программы\Автозагрузка" ярлык OpenvpnGUI (как правило можно скопировать с Рабочего стола). Вместо папки "All Users" можно указать папку определенного пользователя, если вы не хотите давать другим доступ к этому VPN-каналу. Далее открываем свойства этого ярлыка, и в строчке Объект дописать "--connect" и имя вашего *.ovpn файла (или путь к этому файлу, если вы его не положили в папку "OpenVPN\config"). В моем случае это выглядит так:
"C:\Program Files\OpenVPN\bin\openvpn-gui-1.0.3.exe" --connect vpn-server-client.ovpn
7)При выборе протокола для vpn-канала следует руководствоваться качеством канала. Для хорошего канала можно использовать UDP, для плохого только TCP.
В моем случае сеть через которую я пробрасывал VPN-канал поддерживает скорость 100Мбит/с, а VPN подключение открывается всего на 10Мбит/с (независимо от выбранного протокола).
Title: Re: openVPN
Post by: demin on January 29, 2013, 09:49:55 am
спс....блин так же делала всё равно локальные машины клиента openvpn не видят внутреннюю сеть сервера openvpn. А сервер openvpn и клиент видят внутренние сети друг друга....В чем может быть проблема??????
так и не решили свою проблему? у меня подобная проблема( делал все что советовали в теме, но машина за сервером впн так и не видят сеть клиента( помогите пожалуйста! у меня такое ощущение, что на сервере не применяются правила фаервола через веб интерфейс.
Title: Re: openVPN
Post by: mravil on January 30, 2013, 05:45:24 am
спс....блин так же делала всё равно локальные машины клиента openvpn не видят внутреннюю сеть сервера openvpn. А сервер openvpn и клиент видят внутренние сети друг друга....В чем может быть проблема??????
так и не решили свою проблему? у меня подобная проблема( делал все что советовали в теме, но машина за сервером впн так и не видят сеть клиента( помогите пожалуйста! у меня такое ощущение, что на сервере не применяются правила фаервола через веб интерфейс.

решено у нее, работает.
Еще раз распишу, что и как, на этом вот примере:
net0 - сеть 192.168.10.0/24, шлюз на Zentyal_0 c ip 192.168.10.1
net1 - сеть 192.168.20.0/24, шлюз на Zentyal_1 c ip 192.168.20.1
Задача: объединить сети net0 и net1.
начнем с поднятия туннеля, с этим проблем быть не должно, создаем Zentyal-to-Zentyal OpenVPN соединение по мануалу http://doc.zentyal.org/en/vpn.html#configuration-of-a-openvpn-server-with-zentyal.
теперь у нас в Zentyal_0 добавлен и поднят интерфейс tap0 с ip 192.168.160.1, на Zentyal_1 при подключении появляется tap0 с ip 192.168.160.2.
первое, что нужно проверить, есть ли пинг между 192.168.160.1 и 192.168.160.2. Если есть продолжаем:
на Zentyal_0:
Code: [Select]
route add -net 192.168.20.0 netmask 255.255.255.0 gw 192.168.160.2
на Zentyal_1
Code: [Select]
route add -net 192.168.10.0 netmask 255.255.255.0 gw 192.168.160.1

Также необходимо на Zentyal_0 создать правило, позволяющие сети net1 ходить в сеть net0. Для этого в подменю фаервола "Правила фильтрации из внешних сетей во внутренние сети" (Filtering rules from external networks to internal networks) создаем правило:
Decision:    Accept
Source:    Source IP 192.168.20.0/24
Destination:    Any
Service:    Any
Description: Allow net1

Аналогично для второй сети
Title: Re: openVPN
Post by: Licht on January 30, 2013, 09:44:00 am
спс....блин так же делала всё равно локальные машины клиента openvpn не видят внутреннюю сеть сервера openvpn. А сервер openvpn и клиент видят внутренние сети друг друга....В чем может быть проблема??????
так и не решили свою проблему? у меня подобная проблема( делал все что советовали в теме, но машина за сервером впн так и не видят сеть клиента( помогите пожалуйста! у меня такое ощущение, что на сервере не применяются правила фаервола через веб интерфейс.

решено у нее, работает.
Еще раз распишу, что и как, на этом вот примере:
net0 - сеть 192.168.10.0/24, шлюз на Zentyal_0 c ip 192.168.10.1
net1 - сеть 192.168.20.0/24, шлюз на Zentyal_1 c ip 192.168.20.1
Задача: объединить сети net0 и net1.
начнем с поднятия туннеля, с этим проблем быть не должно, создаем Zentyal-to-Zentyal OpenVPN соединение по мануалу http://doc.zentyal.org/en/vpn.html#configuration-of-a-openvpn-server-with-zentyal.
теперь у нас в Zentyal_0 добавлен и поднят интерфейс tap0 с ip 192.168.160.1, на Zentyal_1 при подключении появляется tap0 с ip 192.168.160.2.
первое, что нужно проверить, есть ли пинг между 192.168.160.1 и 192.168.160.2. Если есть продолжаем:
на Zentyal_0:
Code: [Select]
route add -net 192.168.20.0 netmask 255.255.255.0 gw 192.168.160.2
на Zentyal_1
Code: [Select]
route add -net 192.168.10.0 netmask 255.255.255.0 gw 192.168.160.1

Также необходимо на Zentyal_0 создать правило, позволяющие сети net1 ходить в сеть net0. Для этого в подменю фаервола "Правила фильтрации из внешних сетей во внутренние сети" (Filtering rules from external networks to internal networks) создаем правило:
Decision:    Accept
Source:    Source IP 192.168.20.0/24
Destination:    Any
Service:    Any
Description: Allow net1

Аналогично для второй сети

Один нюанс... в случае рестарта сервера команды на добавление маршрута ввести повторно
Title: Re: openVPN
Post by: demin on January 31, 2013, 06:00:57 am
спс....блин так же делала всё равно локальные машины клиента openvpn не видят внутреннюю сеть сервера openvpn. А сервер openvpn и клиент видят внутренние сети друг друга....В чем может быть проблема??????
так и не решили свою проблему? у меня подобная проблема( делал все что советовали в теме, но машина за сервером впн так и не видят сеть клиента( помогите пожалуйста! у меня такое ощущение, что на сервере не применяются правила фаервола через веб интерфейс.

решено у нее, работает.
Еще раз распишу, что и как, на этом вот примере:
net0 - сеть 192.168.10.0/24, шлюз на Zentyal_0 c ip 192.168.10.1
net1 - сеть 192.168.20.0/24, шлюз на Zentyal_1 c ip 192.168.20.1
Задача: объединить сети net0 и net1.
начнем с поднятия туннеля, с этим проблем быть не должно, создаем Zentyal-to-Zentyal OpenVPN соединение по мануалу http://doc.zentyal.org/en/vpn.html#configuration-of-a-openvpn-server-with-zentyal.
теперь у нас в Zentyal_0 добавлен и поднят интерфейс tap0 с ip 192.168.160.1, на Zentyal_1 при подключении появляется tap0 с ip 192.168.160.2.
первое, что нужно проверить, есть ли пинг между 192.168.160.1 и 192.168.160.2. Если есть продолжаем:
на Zentyal_0:
Code: [Select]
route add -net 192.168.20.0 netmask 255.255.255.0 gw 192.168.160.2
на Zentyal_1
Code: [Select]
route add -net 192.168.10.0 netmask 255.255.255.0 gw 192.168.160.1

Также необходимо на Zentyal_0 создать правило, позволяющие сети net1 ходить в сеть net0. Для этого в подменю фаервола "Правила фильтрации из внешних сетей во внутренние сети" (Filtering rules from external networks to internal networks) создаем правило:
Decision:    Accept
Source:    Source IP 192.168.20.0/24
Destination:    Any
Service:    Any
Description: Allow net1

Аналогично для второй сети
все сделал, так и не работает. надо попробовать наверное зентил переустановить. такое ощущение, что фаервол не отрабатывает правила(
Title: Re: openVPN
Post by: tunsa on February 05, 2013, 06:53:44 am
спс....блин так же делала всё равно локальные машины клиента openvpn не видят внутреннюю сеть сервера openvpn. А сервер openvpn и клиент видят внутренние сети друг друга....В чем может быть проблема??????
так и не решили свою проблему? у меня подобная проблема( делал все что советовали в теме, но машина за сервером впн так и не видят сеть клиента( помогите пожалуйста! у меня такое ощущение, что на сервере не применяются правила фаервола через веб интерфейс.

Mravil введу маленькую поправочку! Хочу вам сказать через тунель не работает ( сеть начинает пропадать и работает нестабильно)!
Сделала по схеме Сервер-Клиент
Что я сделала
1 офис ( сеть 192.168.5.0/24 шлюз 192.168.5.100-внутреняя сеть офиса 1). Для того чтобы  настроить Openvpn. Сделаем офис 1 сервером OpenVPN, адрес сервера VPN (192.168.160.1). Далее
2 офис (сеть 192.168.10.0/24 шлюз 192.168.10.10 -внутреняя сеть офиса 2). Офис 2 у меня клиент Openvpn (подкладываю сертификаты созданные на сервере офиса 1), адрес VPN  клиента   (192.168.160.2).
Если всё сделали правильно то сервер и клиент видят друг друга, а точнее 192.168.160.1 пингует 192.168.160.2 и наоборот.

2 этап. Моя задача была в том, чтобы  офис 1 и офис 2 видели друг друга и были в одной локальной сети!
В офисе 1 в терминале пишем  sudo route add -net 192.168.10.0 netmask 255.255.255.0 gw 192.168.160.2
В офисе 2 в терминале пишем  sudo route add -net 192.168.5.0 netmask 255.255.255.0 gw 192.168.160.1

Далее если сети 192.168.5.0/24, 192.168.10.0/24 стали видеть друг друга то вы всё сделали правильно.
Потом нужно прописать sudo route add -net 192.168.10.0 netmask 255.255.255.0 gw 192.168.160.2 ( в /etc/rc.local в офисе1 прописываем для того, чтобы после перезагрузки маршруты не слетели!!!)
                                 sudo route add -net 192.168.5.0 netmask 255.255.255.0 gw 192.168.160.1 ( в /etc/rc.local в офисе2 )

Объяснила как работает openvpn у меня в офисах. Может вам это поможет!!!
Вот ещё видео про сертификаты vpn http://www.youtube.com/watch?v=C32TrXOLzQ4
И ещё как написал Mravil прописать правило!
Title: Re: openVPN
Post by: Artless on February 06, 2013, 12:16:12 am
У меня тоже не работает. Шлюзы пингуют соседа и сеть за ним, открывают сетевые папки, а машины за ними нет. Маршруты добавлены, В правилах фильтрации разрешения стоят (Служба - Любой), а пинга и расшареных папок нет, НО сайт сети 1 в сети 2 открываеться, как такое возможно?
Title: Re: openVPN
Post by: mravil on February 06, 2013, 03:35:29 am
У меня тоже не работает. Шлюзы пингуют соседа и сеть за ним, открывают сетевые папки, а машины за ними нет. Маршруты добавлены, В правилах фильтрации разрешения стоят (Служба - Любой), а пинга и расшареных папок нет, НО сайт сети 1 в сети 2 открываеться, как такое возможно?

Блокируются ICMP пакеты, поэтому пинг не идет
Title: Re: openVPN
Post by: Artless on February 06, 2013, 05:08:43 am
В фаерволе уже вообще все открыл, безрезультатно. Наверно немаловажно, что сервер 2.2, а клиент 3.0, В версии 2.2 есть служебная вкладка фаервола, в 3-ем уже нет, м.б. какое-то правило не применяеться
Title: Re: openVPN
Post by: tunsa on February 06, 2013, 06:16:48 am
В фаерволе уже вообще все открыл, безрезультатно. Наверно немаловажно, что сервер 2.2, а клиент 3.0, В версии 2.2 есть служебная вкладка фаервола, в 3-ем уже нет, м.б. какое-то правило не применяеться


Файрвол мне не помог, маршруты всё равно пришлось руками прописывать! Попробуйте прописать в файрволе конкретное правило между внутренними сетями, разрешить из одной в другую сеть ходить (и прямо пропишите подсети). Кстати какая версия zentyal?
Title: Re: openVPN
Post by: tunsa on February 06, 2013, 06:28:01 am
У меня тоже не работает. Шлюзы пингуют соседа и сеть за ним, открывают сетевые папки, а машины за ними нет. Маршруты добавлены, В правилах фильтрации разрешения стоят (Служба - Любой), а пинга и расшареных папок нет, НО сайт сети 1 в сети 2 открываеться, как такое возможно?

Попробуйте удалить все маршруты и очистить файл rc.local, перезагрузить, а потом заново маршруты прописать....Бывает глюк
Title: Re: openVPN
Post by: Artless on February 09, 2013, 03:39:26 am
С маршрутами все в порядке было, это я в первую очередь проверил.
В 3.0 фаервол не добавил запись iptables -t nat -A POSTROUTING -o tap0 -j MASQUERADE.
т.е.

1) Создание туннеля
2) Маршруты
3) Фаервол
4) Маскарадинг
Title: Re: openVPN
Post by: Shadow1308 on March 24, 2013, 01:06:41 pm
Путем проб и ошибок  я частично разобрался в этом вопросе. Вот инструкция для чайников вроде меня.
1) Создать на каждого клиента отдельный сертификат. Например:
"VPN-client-1"
"VPN-client-2"
"VPN-client-DB"
2) Создать еще один сертификат, в данном примере "VPN-client".
3) При создании VPN-сервера (с именем "vpn-server" ;)) выбрать использовать клиентский сертификат (Client authorization by common name) "VPN-client", а при создании новых клиентов (Download client bundle) выбирать сертификат с именами, удовлетворяющими условию "VPN-client*", где *-любой набор символов, разрешенный при создании новой лицензии (например "VPN-client-1"). Клиент с сертификатом "VPN_cl" подключится к конкретному VPN-серверу уже не сможет.
4) После подключения VPN-клиентов к Zeyntyal,  в настройках  VPN-сервера снять галочку Enable, и сохранить изменения. (Без этого не обойтись, иначе все дальнейшие изменения не сохранятся) После этого залезть в файл /etc/openvpn/vpn-server.d/vpn-server-ipp.txt и там указать какой ip-адрес присвоить клиенту с определенным сертификатом. Можно и самому в ручную вписать еще не подключившихся клиентов. В этом примере файл выглядит так:
VPN-client-1, 192.168.160.101
VPN-client-2, 192.168.160.102
VPN-client-DB, 192.168.160.100
5)Теперь можно запустить VPN-сервер и вы увидите, что все клиенты получили указанные вами ip-адреса.
6) Те, кто использует OpenVPN-installer под Windows и хочет, чтоб подключение к VPN было в автозагрузке, могут сделать так. Создаем в "\Documents and Settings\All Users\Главное меню\Программы\Автозагрузка" ярлык OpenvpnGUI (как правило можно скопировать с Рабочего стола). Вместо папки "All Users" можно указать папку определенного пользователя, если вы не хотите давать другим доступ к этому VPN-каналу. Далее открываем свойства этого ярлыка, и в строчке Объект дописать "--connect" и имя вашего *.ovpn файла (или путь к этому файлу, если вы его не положили в папку "OpenVPN\config"). В моем случае это выглядит так:
"C:\Program Files\OpenVPN\bin\openvpn-gui-1.0.3.exe" --connect vpn-server-client.ovpn
7)При выборе протокола для vpn-канала следует руководствоваться качеством канала. Для хорошего канала можно использовать UDP, для плохого только TCP.
В моем случае сеть через которую я пробрасывал VPN-канал поддерживает скорость 100Мбит/с, а VPN подключение открывается всего на 10Мбит/с (независимо от выбранного протокола).
И всё таки я не могу понять КАК сделать каждому пользователю свой сертификат. Сейчас создан сертификат сервера (в центре сертификации), создан VPN сервер. В VPN сервере указан сертификат сервера (тут кстати тоже непонятно какой сертификат указывать). Так же есть в настройке сервера строка "Авторизация клиента по имени:" - это что такое?
В Веб морде так же есть VPN - клиенты. Вот в них можно создать клиента, НО: там нужно указывать сертификаты и ключ. Если подставить туда сертификаты и ключ сервера - то Веб морда принимает это, но при подключении по openVPN я не вижу что кто-то подключен (в смысле подключился я с Windows по openVPN к Zentyal'у и в веб морде не вижу что я сижу по ВПН).
Извиняюсь что непонятно расписал свою проблему =(
Надеюсь на помощь
Title: Re: openVPN
Post by: Artless on March 25, 2013, 07:12:22 am
В центре сертификации создавай сертификаты, они все одинаковые, но один указывается в настройках сервера (это сертификат сервера), а остальные выбираются при создании клиента (сертификаты клиентов)
Title: Re: openVPN
Post by: shpakser on August 07, 2013, 08:58:41 pm
Подскажите почему openvpn в файле ipp.txt назначает одному тому же клиенту (ключу) разные ip адреса???
Title: Re: openVPN
Post by: Russian_Ivan on August 29, 2013, 03:01:25 am
при создании сервера будет создан собственный сертификат сервера. при желании его можно заменить на любой другой, но лучше не стоит.
не забудьте в пункте "Interfaces to listen on" указать тот интерфейс, через который будут подключатся клиенты.
теперь с сертификатами клиентов. для создания сертификатов зайди в закладку Certification Authority.
вот мой пример. у меня 4 vpn-клиента. я создал 5 сертификатов:
vpn-client
vpn-client-1
vpn-client-2
vpn-client-3
vpn-client-4
при создании сервера в пункте "Авторизация клиента по имени:" укажите сертификат "vpn-client" . теперь к этому серверу могут подключится только клиенты с сертификатами, имена которых начинаются на "vpn-client.."

 пункт vpn-client на WEB-морде нужен только при создании клиента для подключения Zentyal->Zentyal.
если же у вас один сервер,  а остальные компы обычных пользователей, то все действия выполняются через закладку VPN server. для того чтоб получить файлы конфигурации клиента нужно открыть пункт "Download client bundle".
 
далее по пунктам
Client's type - "windows"
Client's certificate - "vpn-client-1(..2,..3,..4)" (каждому клиенту свой сертификат)
галочку Add installer
Server address - лучше указать  фактический   IP-адресс того интерфейса вашего сервера, через который организован VPN.
Нажимаем Download.
копируем на клиента полученый zip. распаковываем. а далее читаем мое предыдущее сообщение.
Title: Re: openVPN
Post by: Russian_Ivan on August 29, 2013, 05:46:47 am
Подскажите почему openvpn в файле ipp.txt назначает одному тому же клиенту (ключу) разные ip адреса???
попробуй очистить этот фаил. перед этим не забудь сначало убрать галочку "Enable" в настройках сервера. а после исправления снова запусти.   иначе изменения не пройдут.
Title: Re: openVPN
Post by: logdog on December 25, 2013, 07:34:37 pm
Подскажите, пожалуйста, в 3.0 в VPN Server configuration для вкладки Interface to listen on - можно выбрать либо 1 определенный интерфейс, либо all. В версии 3.3 все осталось по старому?
Так как у меня есть eth0,eth1,eth3 и мне нужно только 2 указать, а не 3.
Title: Re: openVPN
Post by: Sand_man on December 26, 2013, 05:32:48 am
Версия 3.3, интерфейсы можно выбирать.
Title: Re: openVPN
Post by: logdog on January 02, 2014, 02:29:07 am
Версия 3.3, интерфейсы можно выбирать.

Обманули вы меня  :-[

зы мне нужно было выбрать eth0 и eth1, а не eth0 или все (
Title: Re: openVPN
Post by: logdog on January 07, 2014, 11:31:47 pm
1. в файле ipp.txt указан ip-адрес/30 ?
т.е. строка client,192.168.160.4, означает, что client получит ip 192.168.160.4-192.168.160.6
А как сделать ip-адрес/32?

2. По всей видимости баг, но не могу заблокировать в версии 3.3 доступ по портам и ip-шникам.
- в vpn server заданы List of Advertised Networks  - 10.0.0.4
Задачи:
2.1 заблокировать доступ по порту 3389 на 10.0.0.4
-Правило, созданное в Filtering rules for internal networks не отрабатывает.
2.2 заблокировать доступ ip 192.168.160.16 на 10.0.0.4
-Правило, созданное в Filtering rules for internal networks не отрабатывает.
Title: Re: openVPN
Post by: yodaxxxx on January 14, 2014, 01:08:48 pm
Люди может тут кто подскажет у меня через vpn мой комп ни видит компы за zentyal по имени только по Ip в чем причина