OpenVPN PKI: Site-to-Site инструкция для обсуждения
-
А как завернуть сеть в сеть которые за VPN находятся ? что бы сети друг друга "знали" ?
Если имеются в виду подсети за OVPN-клиентами, подключенными к "центральному"OVPN-серверу, то указать каждой подсети маршрут в другую подсеть:
На клиентах в Advanced configuration
route 192.168.Х.0/24 255.255.255.0или, если на сервере используется конфигурация PKI - в Client Specific Overrides
push route "192.168.Х.0 255.255.255.0"где 192.168.Х.0 - сеть удаленного филиала
В редких случаях push route может оказаться нужным дополнить явным указанием шлюза:
push route "192.168.Х.0 255.255.255.0 10.х.х.1"где 10.х.х.1 адрес OVPN-сервера в туннеле
Не лишним может оказаться добавление на LAN на сервере и клиентах правил вида
IPv4 * LAN net * 192.168.Х.0/24 * * none
Обратите внимание на **IPv4 *** - по умолчанию правило создается только для TCP
-
А как завернуть сеть в сеть которые за VPN находятся ? что бы сети друг друга "знали" ?
Если имеются в виду подсети за OVPN-клиентами, подключенными к "центральному"OVPN-серверу, то указать каждой подсети маршрут в другую подсеть:
На клиентах в Advanced configuration
route 192.168.Х.0/24 255.255.255.0или, если на сервере используется конфигурация PKI - в Client Specific Overrides
push route "192.168.Х.0 255.255.255.0"где 192.168.Х.0 - сеть удаленного филиала
В редких случаях push route может оказаться нужным дополнить явным указанием шлюза:
push route "192.168.Х.0 255.255.255.0 10.х.х.1"где 10.х.х.1 адрес OVPN-сервера в туннеле
Не лишним может оказаться добавление на LAN на сервере и клиентах правил вида
IPv4 * LAN net * 192.168.Х.0/24 * * none
Обратите внимание на **IPv4 *** - по умолчанию правило создается только для TCP
Тобишь, если имеется сервер с IPv4 Tunnel Network 172.16.1.0/24 нужно в Advanced добавить помимо вот этого push "route 192.168.0.0 255.255.255.0";
route 192.168.100.0 255.255.255.0; ещё и push route "192.168.5.0 255.255.255.0 172.16.1.0 ? Сеть от 5 заворачиваем через 172.16.1.0 в 100 ? это на одном сервере, тоже самое на другом, только тунель будет другим ? -
Забудьте про адресацию туннелей. Для туннеля ваша единственная задача - обеспечить уникальную (неиспользуемую ни в какой реальной подсети адресацию, которая работает\будет работать в OpenVPN.
После того, как туннель поднялся все настройки производятся с реальными адресами подсетей, шлюзов и т.д.это на одном сервере, тоже самое на другом, только тунель будет другим ?
Давайте уточним терминологию.
Сервер - это то, что ожидает подключения.
Клиент - это то, что инициирует подключение.В случае PKI ("сервер с сертификатами") настройки сервера в client specific overrides в принципе равнозначны настройкам на клиенте.
Например push route "…. в client specific overrides делает то же самое, что route в настройках клиента.
Исключение - директива iroute, ее нужно указывать именно в client specific overrides на сервере. -
Забудьте про адресацию туннелей. Для туннеля ваша единственная задача - обеспечить уникальную (неиспользуемую ни в какой реальной подсети адресацию, которая работает\будет работать в OpenVPN.
После того, как туннель поднялся все настройки производятся с реальными адресами подсетей, шлюзов и т.д.Ну и где это делается ? из сети 192.168.0.0 я могу пинговать всё что можно, а вот из 192.168.5.0 не могу пинговать 192.168.100.0 но из этих сетей я могу пинговать 192.168.0.0
-
Добрый день!
Все сделал как написано в топике, все хорошо работает. Но почему то компьютеры не видят друг друга в сетевом окружении и более того непонятен такой момент. Компьютеры которые находятся в одной подсети с сервером не пингуют компы из подсети клиента, а наоборот пинги есть и доступ по IP.
Какой то парабокс - доступ из клиентской подсети в серверною есть, а наоборот нет :(Сеть с сервером 10.2.0.0/24
Сеть клиента 10.2.1.0/24
Туннель 172.16.0.1/24Маршруты на сервере
default xxx.xxx.xxx.xxx UGS 0 8327006 1500 em1
10.2.0.0 link#1 U 0 8450553 1500 em0
gw01 link#1 UHS 0 0 16384 lo0
10.2.1.0 172.16.0.2 UGS 0 3790876 1500 ovpns1
xxx.xxx.xxx.0/27 link#2 U 0 205476 1500 em1
xxx.xxx.xxx.xxx link#2 UHS 0 0 16384 lo0
localhost link#5 UH 0 217 16384 lo0
172.16.0.0 172.16.0.2 UGS 0 0 1500 ovpns1
172.16.0.1 link#7 UHS 0 0 16384 lo0
172.16.0.2 link#7 UH 0 0 1500 ovpns1Маршруты на клиенте
default xxx.xxx.xxx.xxx UGS 0 29325548 1500 em0
10.2.0.0/24 172.16.0.5 UGS 0 2891014 1500 ovpnc1
10.2.1.0/24 link#2 U 0 28010720 1500 em1
10.2.1.1 link#2 UHS 0 0 16384 lo0
xxx.xxx.xxx.xxx/27 link#1 U 0 715465 1500 em0
xxx.xxx.xxx.xxx link#1 UHS 0 0 16384 lo0
127.0.0.1 link#5 UH 0 176 16384 lo0
172.16.0.1/32 172.16.0.5 UGS 0 0 1500 ovpnc1
172.16.0.5 link#7 UH 0 0 1500 ovpnc1
172.16.0.6 link#7 UHS 0 0 16384 lo0Чего не хватает?
-
NetBIOS, iroute.
-
iroute 10.2.1.0 255.255.255.0 добавлено в specific.
А как быть с NetBios -
Внимательнее смотрите страницу настроек. Там должна быть галка по поводу NetBIOS.
Или поднимайте tap-туннель. -
Добрый день!
Посоветуйте, как лучше реализовать следующую схему:Есть 2 сети за pfsense и внешние виндовые клиенты с виндовым openvpn.
Нужно объединить сети за pfsence и дать возможность внешним клиентам, при подключении видеть общие ресурсы обеих сетей, а не только той к openvpn серверу которой они коннектятся.
При этом не хотелось бы устраивать на pfsense множество серверов openvnc. Желательно вообще 1.Навскидку кажется, что можно это сделать при помощи “Peer to Peer (SSL/TLS)” (PKI), но неясно можно ли подключить туда виндовых клиентов, и если да, то как.
-
Для одиночных клиентов есть Remote access… Peer to Peer - это когда нужно сделать связь сети за сервером с сетью за клиентом.
-
У меня 2 pfsense за каждым из них сеть и эти сети надо объединить. Кроме этого существуют виндовые клиенты, которые подключаются к одному из серверов, но хотят видеть ресурсы из второй сети тоже.
Вы предлагаете, поднять для виндовых клиентов отдельный север с RA, а 2 сети объединять Site 2 Site ? Сейчас так и сделано, но при этом виндовые клиенты видят только сеть за сервером к которому подключаются. -
Если сети за pfSense'ми видят друг-друга, то и клиенты на windows тоже могут без проблем. Нужно просто передать им маршрут в соседнюю сеть. Типа: route 192.168.0.0 255.255.255.0
-
Это сделано, но не помогает *)
-
Наконец, зачем была нужна директива: iroute 192.168.20.0 255.255.255.0 в Client Specific Overrides для клиента ovpnc1
Прописываю iroute в Client Specific Overrides на OpenVPN сервере (что бы прописать мартрут и сказать серверу за каким клиентом сеть) и почему то не добавляется маршрут на сервере, а если прописываю route в Advanced в настройках самого OpenVPN сервера то маршрут прописывается и все работает
-
если прописываю route в Advanced в настройках самого OpenVPN сервера то маршрут прописывается и все работает
Не советую этого делать.
Прописываю iroute в Client Specific Overrides на OpenVPN сервере (что бы прописать мартрут и сказать серверу за каким клиентом сеть) и почему то не добавляется маршрут на сервере
А имя клиента в Client Specific Overrides - правильное ?
NOTE: Common Name should be the same as specified in the clients certificate:
If you have forgotten this name go to System\Cert Manager\Certificates and check the value of the CN for your VPN user
-
Уважаемый werter, прежде все хочу сказать спасибо за Ваши ответы!
Теперь по теме, я задал не правильно вопрос…
В настройках OpenVPN сервера я прописываю -
VPN - OpenVPN - Server - Advanced - route ip_range netmask;
Делаю я это для того что бы в таблице маршрутизации OpenVPN сервера прописался маршрут до удаленной сети за OpenVPN клиентом.Вопрос как можно приписать добавление маршрута в таблицу маршрутизации OpenVPN сервера в настройках
VPN - OpenVPN - Client Specific Overrides - CommonName - Advancedесли прописываю route в Advanced в настройках самого OpenVPN сервера то маршрут прописывается и все работает
Не советую этого делать.
Поясните как лучше сделать?
@werter:Прописываю iroute в Client Specific Overrides на OpenVPN сервере (что бы прописать мартрут и сказать серверу за каким клиентом сеть) и почему то не добавляется маршрут на сервере
А имя клиента в Client Specific Overrides - правильное ?
Да праивльное в предыдущем посте про iroute излишняя информация этой дериктивой прописываем за каким конкретно клентом та или иная сеть.
Почему этого не достаточно и необходимо еще прописывать route в настройках сервера? -
… iroute... этой дериктивой прописываем за каким конкретно клентом та или иная сеть.
Почему этого не достаточно и необходимо еще прописывать route в настройках сервера?Потому что route инсталлирует маршрут в системную таблицу маршрутов pfSense (и говорит системе, что сеть находится за OpenVPN сервером), а iroute - во внутреннюю базу маршрутов OpenVPN (и говорит серверу за каким именно клиентом находится сеть). Это совсем разные вещи.
Почему iroute не инсталлирует маршруты и туда и туда? Таков дизайн, и это правильно. Мне например никакие системные маршруты от iroute не нужны, т. к. я получаю их по OSPF. Что было бы если бы те же маршруты полезло писать туда же iroute? Так что, пусть каждый занимается своим делом.
-
Помогите пожалуйста.. настраивал OpenVPN по этой инструкции … с подводными камнями разобрался и все работало (есть мои посты выше)
Уже подключено с 10 клиентов и все работает.... версия 2.1.3-RELEASE (i386)Сейчас подключается еще 1 клиент.... все настроено как и раньше единственное отличие это новая версия pfSense 2.2.2-RELEASE (i386)
Никак не могу понять что он хочет?... почему реконект?Лог клиента pfSense 2.2.2-RELEASE (i386)
Apr 20 09:18:57 openvpn[96982]: Restart pause, 5 second(s) Apr 20 09:19:02 openvpn[96982]: WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm for more info. Apr 20 09:19:02 openvpn[96982]: NOTE: the current --script-security setting may allow this configuration to call user-defined scripts Apr 20 09:19:02 openvpn[96982]: Socket Buffers: R=[65228->65536] S=[65228->65536] Apr 20 09:19:02 openvpn[96982]: Attempting to establish TCP connection with [AF_INET]203.169.76.29:1194 [nonblock] Apr 20 09:19:03 openvpn[96982]: TCP connection established with [AF_INET]203.169.76.29:1194 Apr 20 09:19:03 openvpn[96982]: TCPv4_CLIENT link local (bound): [AF_INET]10.85.110.7 Apr 20 09:19:03 openvpn[96982]: TCPv4_CLIENT link remote: [AF_INET]203.169.76.29:1194 Apr 20 09:19:03 openvpn[96982]: TLS: Initial packet from [AF_INET]203.169.76.29:1194, sid=9fd8d700 66b332bc Apr 20 09:19:03 openvpn[96982]: VERIFY OK: depth=1, C=UA, ST=Kyivskaya, L=Kyiv, O=Gidroenergoinvest, emailAddress=itgdr@gmail.com, CN=internal-vpn2-ca Apr 20 09:19:04 openvpn[96982]: VERIFY OK: depth=0, C=UA, ST=Kyivskaya, L=Kyiv, O=Gidroenergoinvest, emailAddress=itgdr@gmail.com, CN=gei.com Apr 20 09:19:05 openvpn[96982]: Data Channel Encrypt: Cipher 'BF-CBC' initialized with 128 bit key Apr 20 09:19:05 openvpn[96982]: Data Channel Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication Apr 20 09:19:05 openvpn[96982]: Data Channel Decrypt: Cipher 'BF-CBC' initialized with 128 bit key Apr 20 09:19:05 openvpn[96982]: Data Channel Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication Apr 20 09:19:05 openvpn[96982]: Control Channel: TLSv1, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHA, 2048 bit RSA Apr 20 09:19:05 openvpn[96982]: [gei.com] Peer Connection Initiated with [AF_INET]203.169.76.29:1194 Apr 20 09:19:07 openvpn[96982]: SENT CONTROL [gei.com]: 'PUSH_REQUEST' (status=1) Apr 20 09:19:07 openvpn[96982]: PUSH: Received control message: 'PUSH_REPLY,route 172.21.0.0 255.255.255.0,route 172.21.0.0 255.255.255.0 172.10.0.1,route-gateway 172.10.0.1,topology subnet,ping 10,ping-restart 60,ifconfig 172.10.0.3 255.255.255.0' Apr 20 09:19:07 openvpn[96982]: OPTIONS IMPORT: timers and/or timeouts modified Apr 20 09:19:07 openvpn[96982]: OPTIONS IMPORT: --ifconfig/up options modified Apr 20 09:19:07 openvpn[96982]: OPTIONS IMPORT: route options modified Apr 20 09:19:07 openvpn[96982]: OPTIONS IMPORT: route-related options modified Apr 20 09:19:07 openvpn[96982]: Preserving previous TUN/TAP instance: ovpnc1 Apr 20 09:19:07 openvpn[96982]: Initialization Sequence Completed Apr 20 09:19:12 openvpn[96982]: Connection reset, restarting [0] Apr 20 09:19:12 openvpn[96982]: SIGUSR1[soft,connection-reset] received, process restarting Apr 20 09:19:12 openvpn[96982]: Restart pause, 5 second(s)
Лог с сервера pfSense 2.1.3-RELEASE (i386)
Apr 20 09:19:00 openvpn[38122]: ktsvo.com/186.105.212.244:9355 send_push_reply(): safe_cap=940 Apr 20 09:19:02 openvpn[38122]: TCP connection established with [AF_INET]105.134.224.202:8627 Apr 20 09:19:05 openvpn[38122]: 105.134.224.202:8627 [ ktsvo.com] Peer Connection Initiated with [AF_INET]105.134.224.202:8627 Apr 20 09:19:05 openvpn[38122]: MULTI_sva: pool returned IPv4=172.10.0.3, IPv6=(Not enabled)
-
Эти директивы есть в конфиг. файле клиента ?
keepalive 5 10
ping-timer-rem
persist-tun
persist-keyhttp://tuxnotes.ru/note/1
-
ээээмм…. не знаю.... а где это указывается?.... в Advanced configuration чисто… на сервере только iroute указан в Client Specific Override….