PfSense OpenVPN Server + Linux-client



  • Ребят, всем привет!
    Имеем pfSense, на нём нужно развернуть OpenVPN-сервер и нужно обеспечить возможность подключаться к нему как Linux-хостами (Site-to-Site) так и Windows клиентами (Client-to-Site). Как это всё организовать? Какой режим сервера OpenVPN подойдет именно под эту задачу? В инете куча мануалов, но именно в связке pfSense OVPN server <–--> Linux OVPN client не нашёл. Надеюсь на помощь. Спасибо!



  • В принципе - любой

    Разница между конфигурациями  Site-to-Site и Client-to-Site условная - в наборе настроек. Выбирайте Client-to-Site (в терминологии pfSense - Remote Acess SSl/TLS или  Remote Acess SSl/TLS +User Auth.
    Потенциально ограничения при работе с Windows-клиентами - желательность выбора типа туннеля net30, более новый тип туннеля subnet не поддерживается старыми(?) версиями Wndows.



  • А у вас какой именно режим выбран сервера OpenVPN? Одна копия pfSense OpenVPN-сервера?




  • Поправил свой пост выше.
    Исторически копий 2.
    Так сложилось из-за необходимости работы с Микротик, который не поддерживает UDP
    Эта копия - Site-to-Site.
    Вторая - Remote Acess SSl/TLS +User Auth.



  • Понятно, значит Peer-to-Peer (SSL/TLS) - это как раз-таки Site-to-Site копия, именно для филиальных шлюзов (на linux и т.д.)?
    а Remote Access (SSL/TLS) именно для "виндовых" клиентов?



  • Remote Access (SSL/TLS) именно для "виндовых" клиентов?

    Не совсем.

    Клиент (как удаленный "сервер-клиент так и физический пользователь) сможет подключится к любому типу сервера.
    Справедливо для любых ОС клиента

    Просто Remote Acess SSl/TLS сразу предлагает максимум доступных из GUI настроек, а +User Auth добавляет возможность задействовать имя\пароль.

    Резюме - к  Remote Acess SSl/TLS смогут подключится все, как удаленный "сервер-клиент, так и физический пользователь, при этом ОС на которой они работают значения не имеет.



  • Значит, Remote Access (SSL/TLS) - мой выбор. На "виндовом" клиенте он у меня завёлся. Теперь нужно разобраться, как завести его на Linux-клиенте (Debian).



  • нужно разобраться, как завести его на Linux-клиенте (Debian).

    В интернете зиллионы инструкций на эту тему.

    Установите в  pfSense пакет OpenVPN Client Export Utility и через нее экспортируйте готовый конфиг практически для любого клиента, а для Windows утилита генерит готовый дистрибутив - с конфигом, сертификатми, ключами и всем необходимым софтом..

    Понятно, значит Peer-to-Peer (SSL/TLS) - это как раз-таки Site-to-Site копия, именно для филиальных шлюзов (на linux и т.д.)?
    а Remote Access (SSL/TLS) именно для "виндовых" клиентов?

    Можно поступить и так. Получится 2 независимых сервера (на разных! портах) , которые можно включать\администрировать\управлять правилами на файрволле  по-отдельности. А можно обойтись одним, все зависит от вашего выбора, поставленных целей, дальнейшей перспективы использования.



  • Client Export Utility генерит серты под всё, кроме Linux (насколько я понял), поэтому тут нужно другим методом, как-то напрямую с pfSense генерить их, что я уже пробовал сделать, но почему-то не завелось



  • в Client Export Utility варианты
    Archive
    Config Only
    Можно попробовать Others.

    Дают конфиг, требующий минимальных правок.

    Набор директив конфига на 99% не зависит от версии ОС
    Расширение .ovpn сменить на .config

    Сам  pfSense не генерит конфиги для клиента.



  • @pigbrother:

    в Client Export Utility варианты
    Archive
    Config Only
    Можно попробовать Others.

    Дают конфиг, требующий минимальных правок.

    Набор директив конфига на 99% не зависит от версии ОС
    Расширение .ovpn сменить на .config

    Сам  pfSense не генерит конфиги для клиента.

    Если делать "Others", то он выдает один файл с расширением .ovpn, меняю расширение на .config и даю скушать Debian'у (клиенту) но выдает ошибку при старте OpenVPN:

    root@stk-test:/etc/openvpn# service openvpn start
    
    Mar  2 17:45:25 stk-test ovpn-linux[13255]: Re-using SSL/TLS context
    Mar  2 17:45:25 stk-test ovpn-linux[13255]: LZO compression initialized
    Mar  2 17:45:25 stk-test ovpn-linux[13255]: Control Channel MTU parms [ L:1542 D:138 EF:38 EB:0 ET:0 EL:0 ]
    Mar  2 17:45:25 stk-test ovpn-linux[13255]: Socket Buffers: R=[229376->131072] S=[229376->131072]
    Mar  2 17:45:25 stk-test ovpn-linux[13255]: Data Channel MTU parms [ L:1542 D:1450 EF:42 EB:135 ET:0 EL:0 AF:3/1 ]
    Mar  2 17:45:25 stk-test ovpn-linux[13255]: Local Options hash (VER=V4): '41690919'
    Mar  2 17:45:25 stk-test ovpn-linux[13255]: Expected Remote Options hash (VER=V4): '530fdded'
    Mar  2 17:45:25 stk-test ovpn-linux[13255]: UDPv4 link local: [undef]
    Mar  2 17:45:25 stk-test ovpn-linux[13255]: UDPv4 link remote: [AF_INET]MY_OPENVPNSERVER_IP:1197
    Mar  2 17:46:25 stk-test ovpn-linux[13255]: TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
    Mar  2 17:46:25 stk-test ovpn-linux[13255]: TLS Error: TLS handshake failed
    Mar  2 17:46:25 stk-test ovpn-linux[13255]: TCP/UDP: Closing socket
    Mar  2 17:46:25 stk-test ovpn-linux[13255]: SIGUSR1[soft,tls-error] received, process restarting
    Mar  2 17:46:25 stk-test ovpn-linux[13255]: Restart pause, 2 second(s)
    Mar  2 17:46:27 stk-test ovpn-linux[13255]: NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
    Mar  2 17:46:27 stk-test ovpn-linux[13255]: Re-using SSL/TLS context
    Mar  2 17:46:27 stk-test ovpn-linux[13255]: LZO compression initialized
    Mar  2 17:46:27 stk-test ovpn-linux[13255]: Control Channel MTU parms [ L:1542 D:138 EF:38 EB:0 ET:0 EL:0 ]
    Mar  2 17:46:27 stk-test ovpn-linux[13255]: Socket Buffers: R=[229376->131072] S=[229376->131072]
    Mar  2 17:46:27 stk-test ovpn-linux[13255]: Data Channel MTU parms [ L:1542 D:1450 EF:42 EB:135 ET:0 EL:0 AF:3/1 ]
    Mar  2 17:46:27 stk-test ovpn-linux[13255]: Local Options hash (VER=V4): '41690919'
    Mar  2 17:46:27 stk-test ovpn-linux[13255]: Expected Remote Options hash (VER=V4): '530fdded'
    Mar  2 17:46:27 stk-test ovpn-linux[13255]: UDPv4 link local: [undef]
    Mar  2 17:46:27 stk-test ovpn-linux[13255]: UDPv4 link remote: [AF_INET]MY_OPENVPNSERVER_IP:1197
    Mar  2 17:47:27 stk-test ovpn-linux[13255]: TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
    Mar  2 17:47:27 stk-test ovpn-linux[13255]: TLS Error: TLS handshake failed
    Mar  2 17:47:27 stk-test ovpn-linux[13255]: TCP/UDP: Closing socket
    Mar  2 17:47:27 stk-test ovpn-linux[13255]: SIGUSR1[soft,tls-error] received, process restarting
    Mar  2 17:47:27 stk-test ovpn-linux[13255]: Restart pause, 2 second(s)
    Mar  2 17:47:29 stk-test ovpn-linux[13255]: NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
    Mar  2 17:47:29 stk-test ovpn-linux[13255]: Re-using SSL/TLS context
    Mar  2 17:47:29 stk-test ovpn-linux[13255]: LZO compression initialized:138 EF:38 EB:0 ET:0 EL:0 ]
    Mar  2 17:47:29 stk-test ovpn-linux[13255]: Socket Buffers: R=[229376->131072] S=[229376->131072]
    Mar  2 17:47:29 stk-test ovpn-linux[13255]: Data Channel MTU parms [ L:1542 D:1450 EF:42 EB:135 ET:0 EL:0 AF:3/1 ]
    Mar  2 17:47:29 stk-test ovpn-linux[13255]: Local Options hash (VER=V4): '41690919'
    Mar  2 17:47:29 stk-test ovpn-linux[13255]: Expected Remote Options hash (VER=V4): '530fdded'
    Mar  2 17:47:29 stk-test ovpn-linux[13255]: UDPv4 link local: [undef]
    Mar  2 17:47:29 stk-test ovpn-linux[13255]: UDPv4 link remote: [AF_INET]MY_INET_IP:1197
    Mar  2 17:48:29 stk-test ovpn-linux[13255]: TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
    Mar  2 17:48:29 stk-test ovpn-linux[13255]: TLS Error: TLS handshake failed
    Mar  2 17:48:29 stk-test ovpn-linux[13255]: TCP/UDP: Closing socket
    Mar  2 17:48:29 stk-test ovpn-linux[13255]: SIGUSR1[soft,tls-error] received, process restarting
    Mar  2 17:48:29 stk-test ovpn-linux[13255]: Restart pause, 2 second(s)
    Mar  2 17:48:31 stk-test ovpn-linux[13255]: NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
    Mar  2 17:48:31 stk-test ovpn-linux[13255]: Re-using SSL/TLS context
    Mar  2 17:48:31 stk-test ovpn-linux[13255]: LZO compression initialized
    Mar  2 17:48:31 stk-test ovpn-linux[13255]: Control Channel MTU parms [ L:1542 D:138 EF:38 EB:0 ET:0 EL:0 ]
    Mar  2 17:48:31 stk-test ovpn-linux[13255]: Socket Buffers: R=[229376->131072] S=[229376->131072]
    Mar  2 17:48:31 stk-test ovpn-linux[13255]: Data Channel MTU parms [ L:1542 D:1450 EF:42 EB:135 ET:0 EL:0 AF:3/1 ]
    Mar  2 17:48:31 stk-test ovpn-linux[13255]: Local Options hash (VER=V4): '41690919'
    Mar  2 17:48:31 stk-test ovpn-linux[13255]: Expected Remote Options hash (VER=V4): '530fdded'
    Mar  2 17:48:31 stk-test ovpn-linux[13255]: UDPv4 link local: [undef]
    Mar  2 17:48:31 stk-test ovpn-linux[13255]: UDPv4 link remote: [AF_INET]MY_OPENVPNSERVER_IP:1197
    Mar  2 17:49:31 stk-test ovpn-linux[13255]: TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
    Mar  2 17:49:31 stk-test ovpn-linux[13255]: TLS Error: TLS handshake failed
    Mar  2 17:49:31 stk-test ovpn-linux[13255]: TCP/UDP: Closing socket
    Mar  2 17:49:31 stk-test ovpn-linux[13255]: SIGUSR1[soft,tls-error] received, process restarting
    Mar  2 17:49:31 stk-test ovpn-linux[13255]: Restart pause, 2 second(s)
    
    


  • Редактировать конфиг клиента вам, увы, придется самому.
    В сети тысячи мануалов по настройке Open VPN для любых Линукс. Со стороны pfSense Open VPN-сервер совершенно стандартен.



  • Доброе.
    Покажите конфиг Вашего клиента.



  • Добрый день! Проверьте настройки пользователя (которому предоставлен доступ к ВПН) в части User Certificates. У вас скорее всего не совпадают настройки (Key length и\или Digest Algorithm) в сертификате пользователя и сервера ВПН (DH Parameters Length и\или Auth Digest Algorithm).



  • Добрый вечер, два дня штудировал темы про openvpn, однако все в полном объеме настроить не удалось.
    Начну из далека, вот попалась эту фраза:

    Понятно, значит Peer-to-Peer (SSL/TLS) - это как раз-таки Site-to-Site копия, именно для филиальных шлюзов (на linux и т.д.)?
    а Remote Access (SSL/TLS) именно для "виндовых" клиентов?

    Можно поступить и так. Получится 2 независимых сервера (на разных! портах) , которые можно включать\администрировать\управлять правилами на файрволле  по-отдельности. А можно обойтись одним, все зависит от вашего выбора, поставленных целей, дальнейшей перспективы использования.

    В связи с этим возник вопрос есть ли проверенный вариант настроек когда поднято ДВА openvpn сервера, один Peer-to-Peer (shared key) по которому объединены две сети (192.168.1.0/24 - главная сеть и 192.168.87.0/24 - удаленная, а второй openvpn сервер Remote access SSL/TSL для мобильных клиентов.
    Планирую подключить к главной еще одну удаленную есть и важно обеспечить обмен данными между всеми сетями и клиентами, не зависимо кто где находится и как подключен.
    На стороне удаленных сетей использую роутер с прошивкой http://tomato.groov.pl/
    В главной сети есть еще одна типа DMZ сеть - 192.168.12.0/24 - web сервер- это для справки.

    Проблема в том, что мобильные клиенты не могут получить доступ в удаленную сеть. Из главной сети в удаленную и обратно все бегает.
    Как я понял не создается маршрут вторым сервером в удаленную сеть или должна образоваться связь между openvpn серверами? но её так же нет в роутах, так же как и нет связи между мобильными клиентами.
    Скрины ниже, wan порты открыты, т.е. сам канал поднимается, в логах криминала не наблюдаю.
    Куда копать помогите пожалуйста.



    ![????????? ??????? peer to peer (shared key)1.JPG](/public/imported_attachments/1/????????? ??????? peer to peer (shared key)1.JPG)
    ![????????? ??????? peer to peer (shared key)1.JPG_thumb](/public/imported_attachments/1/????????? ??????? peer to peer (shared key)1.JPG_thumb)
    ![????????? ??????? Remote Access (SSL_TLS)1.JPG](/public/imported_attachments/1/????????? ??????? Remote Access (SSL_TLS)1.JPG)
    ![????????? ??????? Remote Access (SSL_TLS)1.JPG_thumb](/public/imported_attachments/1/????????? ??????? Remote Access (SSL_TLS)1.JPG_thumb)
    ![????????? ??????? Remote Access (SSL_TLS)2.JPG](/public/imported_attachments/1/????????? ??????? Remote Access (SSL_TLS)2.JPG)
    ![????????? ??????? Remote Access (SSL_TLS)2.JPG_thumb](/public/imported_attachments/1/????????? ??????? Remote Access (SSL_TLS)2.JPG_thumb)
    ![????????? ??????? Remote Access (SSL_TLS)3.JPG](/public/imported_attachments/1/????????? ??????? Remote Access (SSL_TLS)3.JPG)
    ![????????? ??????? Remote Access (SSL_TLS)3.JPG_thumb](/public/imported_attachments/1/????????? ??????? Remote Access (SSL_TLS)3.JPG_thumb)


    ![Client Specific Override.JPG](/public/imported_attachments/1/Client Specific Override.JPG)
    ![Client Specific Override.JPG_thumb](/public/imported_attachments/1/Client Specific Override.JPG_thumb)


    ![Rules LAN.JPG](/public/imported_attachments/1/Rules LAN.JPG)
    ![Rules LAN.JPG_thumb](/public/imported_attachments/1/Rules LAN.JPG_thumb)
    ![Rules OpenVPN.JPG](/public/imported_attachments/1/Rules OpenVPN.JPG)
    ![Rules OpenVPN.JPG_thumb](/public/imported_attachments/1/Rules OpenVPN.JPG_thumb)
    ![?????? ?3_1.JPG](/public/imported_attachments/1/?????? ?3_1.JPG)
    ![?????? ?3_1.JPG_thumb](/public/imported_attachments/1/?????? ?3_1.JPG_thumb)
    ![?????? ?3_2.JPG](/public/imported_attachments/1/?????? ?3_2.JPG)
    ![?????? ?3_2.JPG_thumb](/public/imported_attachments/1/?????? ?3_2.JPG_thumb)



  • Не вижу в client specific overrides директивы iroute или записи в IPv4 Remote Network с указанием сети за  клиентом.

    iroute х.х.1.х 255.255.255= IPv4 Remote Network х.х.1.х/24



  • @pigbrother:

    Не вижу в client specific overrides директивы iroute или записи в IPv4 Remote Network с указанием сети за  клиентом.

    iroute х.х.1.х 255.255.255= IPv4 Remote Network х.х.1.х/24

    Дописал в client specific overrides для одного из клиентов - результат нуль, прикладываю файл с скриншотом.
    Более того сегодня днем обнаружил, что из главной сети не могу пропинговать машины в удаленной сети, вчера поскольку машины все были выключены проверял связь между сетями только через наличие доступа к вебморде роутера, т. е. к админке роутера из главной сети доступ есть, а дальше нет. маршруты на роутере так же прилагаю.
    Какой-то ступор…

    ![Routes-tomato router.JPG_thumb](/public/imported_attachments/1/Routes-tomato router.JPG_thumb)
    ![Routes-tomato router.JPG](/public/imported_attachments/1/Routes-tomato router.JPG)
    ![Client ?2.JPG_thumb](/public/imported_attachments/1/Client ?2.JPG_thumb)
    ![Client ?2.JPG](/public/imported_attachments/1/Client ?2.JPG)



  • Добрый день! В настройках

    второй openvpn сервер Remote access SSL/TSL для мобильных клиентов

    В разделе Tunnel Settings -> IPv4 Local Network/s допишите через запятую в какие сети хотите предоставить доступ аля: 192.168.1.0/24,192.168.12.0/24,(remoute network/mask)
    А из раздела Advanced Settings -> Advanced  удалите всю "какафонию" с роутами.
    После, сделайте реконнект мобильных клиентов и посмотрите роуты на клиентах (или просто доступность что пытали открыть)
    И покажите пожалуйста правила фаервола для DMZ (чтоб понимать картину происходящего)



  • @timon12:

    Добрый день! В настройках

    второй openvpn сервер Remote access SSL/TSL для мобильных клиентов

    В разделе Tunnel Settings -> IPv4 Local Network/s допишите через запятую в какие сети хотите предоставить доступ аля: 192.168.1.0/24,192.168.12.0/24,(remoute network/mask)
    А из раздела Advanced Settings -> Advanced  удалите всю "какафонию" с роутами.
    После, сделайте реконнект мобильных клиентов и посмотрите роуты на клиентах (или просто доступность что пытали открыть)
    И покажите пожалуйста правила фаервола для DMZ (чтоб понимать картину происходящего)

    Уточните пожалуйста куда внести правки.
    У меня два openvpn сервера, в настройках сервера peer to peer все указано, в настройке remote access так же указаны локальные сети 192.168.1.0/24 и 192.168.12.0/24.
    На клиентских настройках client cpecific overrides в разделе IPv4 Local Network/s - 192.168.1.0/24 в разделе advanced push "route 192.168.1.0 255.255.255.0";push "route 192.168.87.0 255.255.255.0";push "route 192.168.12.0 255.255.255.0"; что по сути одно и то же. Клиенты получают маршруты во все указанные сети, но доступа кроме главной сети нет. Я понял так, что у меня не прописывается маршрут на сервере ovpns2, на скриншоте ROUTES видно, что нет маршрута связывающего сеть 10.0.16.0/24 с сетью 192.168.87.0/24




  • В связи с этим возник вопрос есть ли проверенный вариант настроек когда поднято ДВА openvpn сервера, один Peer-to-Peer (shared key) по которому объединены две сети (192.168.1.0/24 - главная сеть и 192.168.87.0/24 - удаленная, а второй openvpn сервер Remote access SSL/TSL для мобильных клиентов.

    Из своего опыта, у меня 2 офисса, между ними два канала от провайдеров, по каждому каналу поднят отдельный  openvpn сервер  Peer-to-Peer (shared key) (т.е 2 шт) и поверх этих openvpn серверов настроенно Quagga OSPF. Плюс на главном офиссе еще есть 2 openvpn сервер Remote access SSL/TSL для мобильных клиентов. И все прекрасно работает, мобильные лиенты видят удаленный офис.

    Проблема в том, что мобильные клиенты не могут получить доступ в удаленную сеть.

    В настроках openvpn сервера для мобильных клиентов (см скрин):
    В разделе Tunnel Settings -> IPv4 Local Network/s допишите через запятую в какие сети хотите предоставить доступ аля: 192.168.1.0/24,192.168.12.0/24,192.168.87.0/24. Пускай openvpn сервер сам определяет маршрутизацию. И удалите advanced push "route 192.168.1.0 255.255.255.0";push "route 192.168.87.0 255.255.255.0";push "route 192.168.12.0 255.255.255.0" - стоит попробывать.

    ![Remote Access (SSL_TLS)2.jpg](/public/imported_attachments/1/Remote Access (SSL_TLS)2.jpg)
    ![Remote Access (SSL_TLS)2.jpg_thumb](/public/imported_attachments/1/Remote Access (SSL_TLS)2.jpg_thumb)



  • Доброе.

    2 Tano
    Снимите галку с Server definitions в Client Specific …
    Покажите скрины Certificates на pfsense

    т. е. к админке роутера из главной сети доступ есть, а дальше нет

    У всех машин в удал. сети шлюзом должен быть роутер с tomato. Проверьте этот момент.
    И исп. команду tracert для понимания , где в прохождение пакетов затык.



  • @werter:

    Доброе.

    2 Tano
    Снимите галку с Server definitions в Client Specific …
    Покажите скрины Certificates на pfsense

    т. е. к админке роутера из главной сети доступ есть, а дальше нет

    У всех машин в удал. сети шлюзом должен быть роутер с tomato. Проверьте этот момент.
    И исп. команду tracert для понимания , где в прохождение пакетов затык.

    Убрал галку, скрин. во вложении.
          Проверил, поскольку адреса выдаются по DHCP шлюз у всех 192.168.87.1.

    Внес изменения как советовал timon12, теперь настройки сервера remoute access выгладят как во вложении см. файл SERVER remote access

    Для эксперимента по вай-фай через мобильный телефон подключил ноут, таким образом имитирую подключение мобильного клиента в сетям.
    Поднял канал, это клиент client cpecific overrides - common name - 16_VPN_C1, его настройки так же во вложении. см файл Client_C1.
    В итоге имею доступ с этого ноута в главную сеть, но все так же нет доступа в удаленную сеть. трасерт с ноута на одну из машин в этой сети прикладываю.
    Так же нет доступа из главной сети в удаленную, на машины расположенные за роутером (на сам роутер доступ есть). Трасерт из главной сети в удаленную так же во вложении см. файл tracert from main net
    Из удаленной сети в главную доступ есть и Pfsense и ресурсам сети.



    ![Server remoute access.JPG](/public/imported_attachments/1/Server remoute access.JPG)
    ![Server remoute access.JPG_thumb](/public/imported_attachments/1/Server remoute access.JPG_thumb)


    ![Tracert from main net.JPG](/public/imported_attachments/1/Tracert from main net.JPG)
    ![Tracert from main net.JPG_thumb](/public/imported_attachments/1/Tracert from main net.JPG_thumb)



  • Последний скрин - уберите всё в Advanced.
    Там же - уберите tunnel network.

    На клиенте запускайте Openvpn от им. Администратора, т.е. прав. кн. мыши - Запустить от им. Адм-ра.
    Покажите route print на проблемном клиенте после поднятия туннеля.



  • Согласен с

    Последний скрин - уберите всё в Advanced.

    Покажите таблицу роутов (cmd: route print) с ноута, при имитации.

    У себя на pfsense-х не настраивал client specific overrides.

    На скрине Server remoute access.JPG почему пропала "галочка" с Clent Settings -> Address Poll, смотри мой последний скрин (который брал у тебя ранее) Remote Access (SSL_TLS)2.jpg



  • @timon12:

    Согласен с

    Последний скрин - уберите всё в Advanced.

    Покажите таблицу роутов (cmd: route print) с ноута, при имитации.

    У себя на pfsense-х не настраивал client specific overrides.

    На скрине Server remoute access.JPG почему пропала "галочка" с Clent Settings -> Address Poll, смотри мой последний скрин (который брал у тебя ранее) Remote Access (SSL_TLS)2.jpg

    Спасибо за помощь, но доступа в удаленную сеть так и не получил, есть только доступ в главную сеть.
    Скрин во вложении.
    Убрал все из Advanced для тестового клиента, вот ниже его лог:
    Fri Mar 11 18:24:26 2016 OpenVPN 2.3.10 x86_64-w64-mingw32 [SSL (OpenSSL)] [LZO] [PKCS11] [IPv6] built on Jan  4 2016
    Fri Mar 11 18:24:26 2016 Windows version 6.2 (Windows 8 or greater)
    Fri Mar 11 18:24:26 2016 library versions: OpenSSL 1.0.1q 3 Dec 2015, LZO 2.09
    Enter Management Password:
    Fri Mar 11 18:24:27 2016 Control Channel Authentication: tls-auth using INLINE static key file
    Fri Mar 11 18:24:27 2016 UDPv4 link local (bound): [undef]
    Fri Mar 11 18:24:27 2016 UDPv4 link remote: [AF_INET]ХХХ.ХХХ.ХХХ.ХХХ:1199
    Fri Mar 11 18:24:28 2016 [16_VPN_S] Peer Connection Initiated with [AF_INET]ХХХ.ХХХ.ХХХ.ХХХ:1199
    Fri Mar 11 18:24:31 2016 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
    Fri Mar 11 18:24:31 2016 open_tun, tt->ipv6=0
    Fri Mar 11 18:24:31 2016 TAP-WIN32 device [Ethernet 2] opened: \.\Global{47DCBEC1-8E0C-4188-B62D-845494609D02}.tap
    Fri Mar 11 18:24:31 2016 Notified TAP-Windows driver to set a DHCP IP/netmask of 10.0.16.10/255.255.255.252 on interface {47DCBEC1-8E0C-4188-B62D-845494609D02} [DHCP-serv: 10.0.16.9, lease-time: 31536000]
    Fri Mar 11 18:24:31 2016 Successful ARP Flush on interface [41] {47DCBEC1-8E0C-4188-B62D-845494609D02}
    Fri Mar 11 18:24:36 2016 ROUTE: route addition failed using CreateIpForwardEntry: Этот объект уже существует.  [status=5010 if_index=41]
    Fri Mar 11 18:24:36 2016 env_block: add PATH=C:\Windows\System32;C:\Windows;C:\Windows\System32\Wbem
    Fri Mar 11 18:24:36 2016 ROUTE: route addition failed using CreateIpForwardEntry: Этот объект уже существует.  [status=5010 if_index=41]
    Fri Mar 11 18:24:36 2016 env_block: add PATH=C:\Windows\System32;C:\Windows;C:\Windows\System32\Wbem
    Fri Mar 11 18:24:36 2016 ROUTE: route addition failed using CreateIpForwardEntry: Этот объект уже существует.  [status=5010 if_index=41]
    Fri Mar 11 18:24:36 2016 env_block: add PATH=C:\Windows\System32;C:\Windows;C:\Windows\System32\Wbem
    Fri Mar 11 18:24:36 2016 Initialization Sequence Completed

    Напомню, что из главной сети нет доступа в удаленную сеть, точнее есть только до роутера, к машинам за роутером доступа нет, однако тестовый клиент не получает доступа и к роутеру. Из удаленной сети в главную все работает.
    Вложил еще раз скрин закладки ROUTES с PFsense.



    ![Routes main net.JPG](/public/imported_attachments/1/Routes main net.JPG)
    ![Routes main net.JPG_thumb](/public/imported_attachments/1/Routes main net.JPG_thumb)



  • Простите, а где

    Покажите route print на проблемном клиенте после поднятия туннеля.

    Покажите таблицу роутов (cmd: route print) с ноута, при имитации.

    На скрине Tracert_client_C1.JPG в данном случае полезней посмотреть таблицу роутов чем трасерт.

    И кстати, в логах подключения у вас

    Fri Mar 11 18:24:36 2016 ROUTE: route addition failed using CreateIpForwardEntry: Этот объект уже существует.  [status=5010 if_index=41]

    Бросьте это в гугл, и там сразу будут куча ответов, в том числе и из https://forum.pfsense.org/index.php?topic=70763.0
    Полезным еще будут логи опенвпн с пфсенсы вашей, когда тестируете подключение и доступы.



  • Я решил все упросить, убил opnvpn сервер peer to peer shared keys, и настроил на клиента (tomato shibby MIPSR2-133 K26 USB VPN) через сервер OVPN REMOTE ACCESS SSL|TLS.
    Соединение устанавливается, из удаленной сети есть доступ в главную сеть (в принципе для данного клиента это основной режим работы). Но так и нет доступа из главной сети в удаленную.
    Что у меня нет так? во вложении скрины:
    На скрине трасировки видно, что запрос от машины при обращении к компу в удаленной сети уходит на WAN хотя по идее должен уходит в OPENVPN туннель. FFSENSe не маршрутит запросы в удаленную сеть.

    ![ovpn server remote access.JPG](/public/imported_attachments/1/ovpn server remote access.JPG)
    ![ovpn server remote access.JPG_thumb](/public/imported_attachments/1/ovpn server remote access.JPG_thumb)


    ![Routing table TOMATO.JPG](/public/imported_attachments/1/Routing table TOMATO.JPG)
    ![Routing table TOMATO.JPG_thumb](/public/imported_attachments/1/Routing table TOMATO.JPG_thumb)
    ![Routing tables PFSENSE.JPG](/public/imported_attachments/1/Routing tables PFSENSE.JPG)
    ![Routing tables PFSENSE.JPG_thumb](/public/imported_attachments/1/Routing tables PFSENSE.JPG_thumb)
    ![Tracer from main net.JPG](/public/imported_attachments/1/Tracer from main net.JPG)
    ![Tracer from main net.JPG_thumb](/public/imported_attachments/1/Tracer from main net.JPG_thumb)



  • Для чего push "route 192.168.1.0 255.255.255.0" в настройках сервера?

    Добавьте на LAN pfSense выше остальных правило

    IPv4 * LAN net * 192.168.87.0/24 * * none

    Такие правила нужны для каждой сети за OVPN-клиентом.

    Маршруты в сети за другими OVPN-серверами указываются  в Client Specific Overrides через

    push "route 192.168.12.0 255.255.255.0"

    или заполнением

    IPv4 Local Network/s там же в виде

    192.168.12.0/24

    Вместо iroute 192.168.87.0 255.255.255.0

    можно\нужно использовать поле  IPv4 Remote Network/s

    192.168.87.0/24

    Брандмауэры Windows в удаленной сети должны быть отключены или настроены на пропуск пакетов из других подсетей.



  • @pigbrother:

    Для чего push "route 192.168.1.0 255.255.255.0" в настройках сервера?

    Лишнее правило убрал.
    @pigbrother:

    Добавьте на LAN pfSense выше остальных правило

    IPv4 * LAN net * 192.168.87.0/24 * * none

    Такие правила нужны для каждой сети за OVPN-клиентом.

    Такое правило есть, все скрины FW есть на предыдущей странице этого топика и оно стоит первым.
    @pigbrother:

    Маршруты в сети за другими OVPN-серверами указываются  в Client Specific Overrides через
    push "route 192.168.12.0 255.255.255.0"

    В моем случае это вторая подсеть в главной сети,  типа DZM можно сказать вторая LAN, в которой работает WEB сервер, поэтому я информацию об этой сети размещаю в разделе IPv4 Local Network/s на сервере.
    @pigbrother:

    или заполнением
    IPv4 Local Network/s там же в виде
    192.168.12.0/24
    Вместо iroute 192.168.87.0 255.255.255.0
    можно\нужно использовать поле  IPv4 Remote Network/s
    192.168.87.0/24
    Брандмауэры Windows в удаленной сети должны быть отключены или настроены на пропуск пакетов из других подсетей.

    Так и сделал, еще раз выставил согласно ваших рекомендаций.
    Доступа из главной сети в удаленную НЕТ, обратно есть.
    Скрины сервера и  Client Specific Overrides после изменений во вложении.

    ![ovpn server remote access1.JPG](/public/imported_attachments/1/ovpn server remote access1.JPG)
    ![ovpn server remote access1.JPG_thumb](/public/imported_attachments/1/ovpn server remote access1.JPG_thumb)



  • IP Local Networks в настр. клиента уберите. Вы их уже в настр. сервера указали.
    В настр. сервера галку на Addr pool поставьте.

    Ну и самое главное, Common Name верно в клиент. настройках указан ? Его нужно смотреть в Certificates.

    P.s. На одном из скринов peer certificate revocation list  Blocked ? Вы там случаем сертификат не отозвали у пол-ля ?



  • werter, я проверил ваши предложения, но результат был тот же.
    Comonn name верный, сертификаты не "заглушены", я лишь сделал заготовку, чтобы потом можно были их туда вписывать, там сейчас закрытых сертификатов нуль, но я для пробы поставил NONE, в любом случае ничего не изменилось.
    Пока читал разные источники наткнулся на эту страницу https://doc.pfsense.org/index.php/Why_won't_OpenVPN_push_routes
    Поэтому решил вернуться опять к варианту когда за работу мобильных клиентов будет отвечать opnevpn server - REMOTE ACCESS SSL|TLS, а для соединения двух и более локальных сетей (для чего я и затеял весь этот сыр бор) будет отвечать другой openvpn server - Peer to peer, только уже настроил его по варианту SSL|TSL, а не Shared key как было ранее.
    В итоге есть двухсторонняя связь между главной и удаленной сетью, - УРА.
    В перспективе я подключу еще одну удаленную сеть по такому же принципу и постараюсь обеспечить связь каждой сети с каждой не зависимо от каждой.
    Сейчас же идем дальше, подключаю мобильного клиента, в конкретном случае планшет, имеем полный доступ в главную сеть, но нет доступа в удаленную, не роутит PFSENSE из одного Openvpn сервер в другой…
    Добавил таблицу маршрутов которая сейчас сформировалась на pfsense, также лог сервера OVPNS при подключении к нему планшет:
    Mar 13 01:20:15 openvpn[69378]: 16_VPN_C2/217.118.78.123:39394 SENT CONTROL [16_VPN_C2]: 'PUSH_REPLY,route 192.168.1.0 255.255.255.0,route 192.168.12.0 255.255.255.0,route 192.168.87.0 255.255.255.0,ifconfig 10.0.0.6 10.0.0.5' (status=1)
    Mar 13 01:20:15 openvpn[69378]: 16_VPN_C2/217.118.78.123:39394 send_push_reply(): safe_cap=940
    Mar 13 01:20:15 openvpn[69378]: 16_VPN_C2/217.118.78.123:39394 PUSH: Received control message: 'PUSH_REQUEST'
    Mar 13 01:20:15 openvpn[69378]: 16_VPN_C2/217.118.78.123:39394 MULTI: primary virtual IP for 16_VPN_C2/217.118.78.123:39394: 10.0.0.6
    Mar 13 01:20:15 openvpn[69378]: 16_VPN_C2/217.118.78.123:39394 MULTI: Learn: 10.0.0.6 -> 16_VPN_C2/217.118.78.123:39394
    Mar 13 01:20:15 openvpn[69378]: 16_VPN_C2/217.118.78.123:39394 MULTI_sva: pool returned IPv4=10.0.0.6, IPv6=(Not enabled)
    Mar 13 01:20:15 openvpn[69378]: 16_VPN_C2/217.118.78.123:39394 OPTIONS IMPORT: reading client specific options from: /var/etc/openvpn-csc/16_VPN_C2
    Mar 13 01:20:15 openvpn[69378]: 217.118.78.123:39394 [16_VPN_C2] Peer Connection Initiated with [AF_INET]217.118.78.123:39394
    Mar 13 01:20:15 openvpn[69378]: 217.118.78.123:39394 Control Channel: TLSv1.2, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHA, 2048 bit RSA
    Mar 13 01:20:15 openvpn[69378]: 217.118.78.123:39394 Data Channel Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
    Mar 13 01:20:15 openvpn[69378]: 217.118.78.123:39394 Data Channel Decrypt: Cipher 'AES-256-CBC' initialized with 256 bit key
    Mar 13 01:20:15 openvpn[69378]: 217.118.78.123:39394 Data Channel Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
    Mar 13 01:20:15 openvpn[69378]: 217.118.78.123:39394 Data Channel Encrypt: Cipher 'AES-256-CBC' initialized with 256 bit key
    Mar 13 01:20:15 openvpn[69378]: 217.118.78.123:39394 VERIFY OK: depth=0, C=RU, ST=SPB, L=SPB, O=16, emailAddress=tano@16.spb.ru, CN=16_VPN_C2
    Mar 13 01:20:15 openvpn[69378]: 217.118.78.123:39394 VERIFY SCRIPT OK: depth=0, C=RU, ST=SPB, L=SPB, O=16, emailAddress=tano@16.spb.ru, CN=16_VPN_C2
    Mar 13 01:20:15 openvpn[69378]: 217.118.78.123:39394 VERIFY OK: depth=1, C=RU, ST=SPB, L=SPB, O=16, emailAddress=tano@16.spb.ru, CN=16_CA
    Mar 13 01:20:15 openvpn[69378]: 217.118.78.123:39394 VERIFY SCRIPT OK: depth=1, C=RU, ST=SPB, L=SPB, O=16, emailAddress=tano@16.spb.ru, CN=16_CA
    Mar 13 01:20:13 openvpn[69378]: 217.118.78.123:39394 TLS: Initial packet from [AF_INET]217.118.78.123:39394, sid=1f71d622 811fd4e0
    Mar 13 01:19:37 openvpn[69378]: 16_VPN_C2/217.118.78.123:39389 SIGTERM[soft,remote-exit] received, client-instance exiting

    В его настройках Client Specific Overrides - common names - 16_VPN_C2 указал в разделе IPv4 Local Network/s все три сети к которым хочу обеспечить доступ, в итоге в сети: 192.168.1.0/24 и 192.168.12.0/24 доступ есть, а вот в удаленную есть нет.
    В настройках его сервера ничего не менял, кроме того, что вы советовали, на всякий случае его тоже выкладываю.

    ![Routing tables PFSENSE TWO ovpnserver.JPG](/public/imported_attachments/1/Routing tables PFSENSE TWO ovpnserver.JPG)
    ![Routing tables PFSENSE TWO ovpnserver.JPG_thumb](/public/imported_attachments/1/Routing tables PFSENSE TWO ovpnserver.JPG_thumb)
    ![ovpn server remote access2.JPG](/public/imported_attachments/1/ovpn server remote access2.JPG)
    ![ovpn server remote access2.JPG_thumb](/public/imported_attachments/1/ovpn server remote access2.JPG_thumb)



  • Сейчас же идем дальше, подключаю мобильного клиента, в конкретном случае планшет, имеем полный доступ в главную сеть, но нет доступа в удаленную, не роутит PFSENSE из одного Openvpn сервер в другой…

    А вы не по ви-фи ли его внутри локал. сети подключаете ?
    Необходимо подкл. только извне. Это важно.  Используйте 3g\4g подключение.

    Пока читал разные источники наткнулся на эту страницу https://doc.pfsense.org/index.php/Why_won't_OpenVPN_push_routes

    А вот за это - мерсИ.



  • Routes cannot be pushed on a shared key setup or an SSL/TLS setup using a /30 tunnel network

    Имеется в виду что route push не будет работать если используется net30, а не subnet?

    Тогда почему данная связка работает у меня? Может потому, что первоначально OVPN настраивался на 2.0.х?



  • 2 Tano

    Может я проглядел, но схемы с адресацией не увидел. Рисуйте.



  • @Tano:

    @werter:

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

    А вы не по ви-фи ли его внутри локал. сети подключаете ?
    Необходимо подкл. только извне. Это важно.  Используйте 3g\4g подключение.

    Пока читал разные источники наткнулся на эту страницу https://doc.pfsense.org/index.php/Why_won't_OpenVPN_push_routes

    А вот за это - мерсИ.

    Нет конечно, вайфай выключаю, плншет подключается по 3G, то же самое делал с тестовой машиной, которая подключалась по vpn.



  • @pigbrother:

    Routes cannot be pushed on a shared key setup or an SSL/TLS setup using a /30 tunnel network

    Имеется в виду что route push не будет работать если используется net30, а не subnet?

    Тогда почему данная связка работает у меня? Может потому, что первоначально OVPN настраивался на 2.0.х?

    У меня сейчас pfsense 2.2.6, поскольку все развернуто на ESXI после выхода релиза 2.3 разверну еще одну виртуальную машину и попробую настроить все с нуля, на чистую версию, если будет что то иначе чем сейчас, руками перенесу все настройки, не чем сохранение конфигурации.



  • @werter:

    2 Tano

    Может я проглядел, но схемы с адресацией не увидел. Рисуйте.

    Вот схема она практически такая же как и на инструкции которую взял за основу настройки https://forum.pfsense.org/index.php?topic=99694.0




  • Укажите на схеме между какими сетями\клиентами проблемы.



  • Сейчас же идем дальше, подключаю мобильного клиента, в конкретном случае планшет, имеем полный доступ в главную сеть, но нет доступа в удаленную, не роутит PFSENSE из одного Openvpn сервер в другой…

    Покажите пожалуйста таблицу маршрутизации у мобильного клиента при подключении по впн (на картинке это ноут), один из важных моментов в понимании проблемы, чтоб понять в какую сторону думать - настройки впн-сервера или роутинг на пф



  • @werter:

    Укажите на схеме между какими сетями\клиентами проблемы.

    Сеть 192.168.1.0/24 главная сеть, тут на входе стоит Pfsense  и всем рулит.
    Сеть 192.168.87.0/24 удаленная сеть, там на входе стоит Neatgear 3500L с последней прошивкой Tomato shybbi v133
    Между этими сетями поднимается OPENVPN канал - 192.168.99.0/24 Peer to Peer SSL/TLS
    Между сетями есть полный двух сторонний обмен данными.
    В перспективе будет еще одна аналогичная удаленная сеть, с таким же оборудованием - в моем случае это будет дача, где разворачивается умный дом и система видео наблюдения.
    Есть мобильные клиенты, планшет, смартфоны или ноуты, которые должны попадать в любую из сетей, как в главную так и в удаленные. Сейчас мобильный клиент подключен через openvpn remote access ssl/tls, туннель - 10.0.0.0/24 и имеет доступ в главную сеть, но нет доступа в удаленную.
    Попробовал это нарисовать стрелками.



Log in to reply