Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    PfSense OpenVPN Server + Linux-client

    Scheduled Pinned Locked Moved Russian
    76 Posts 5 Posters 16.1k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      Tano
      last edited by

      @Tano:

      @werter:

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

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

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

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

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

      1 Reply Last reply Reply Quote 0
      • T
        Tano
        last edited by

        @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 разверну еще одну виртуальную машину и попробую настроить все с нуля, на чистую версию, если будет что то иначе чем сейчас, руками перенесу все настройки, не чем сохранение конфигурации.

        1 Reply Last reply Reply Quote 0
        • T
          Tano
          last edited by

          @werter:

          2 Tano

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

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

          PLAN.jpg
          PLAN.jpg_thumb

          1 Reply Last reply Reply Quote 0
          • werterW
            werter
            last edited by

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

            1 Reply Last reply Reply Quote 0
            • T
              timon12
              last edited by

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

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

              1 Reply Last reply Reply Quote 0
              • T
                Tano
                last edited by

                @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 и имеет доступ в главную сеть, но нет доступа в удаленную.
                Попробовал это нарисовать стрелками.

                PLAN-1.jpg
                PLAN-1.jpg_thumb

                1 Reply Last reply Reply Quote 0
                • werterW
                  werter
                  last edited by

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

                  +1
                  route print в ком. строке

                  На этом ноуте устанавливайте и запускайте Openpvn от имени Адм-ра, т.е. прав. кн. мыши "Запустить от имени Адм-ра"
                  Дистрибутив качать с родного сайта. Он там самый свежий.

                  И еще. Если у вас ОС х64 - попробуйте исп. х32 openvpn-клиент.

                  1 Reply Last reply Reply Quote 0
                  • T
                    Tano
                    last edited by

                    Вот свежие данные: Клиент ноутбук сони, подключен через вайфай к телефону который раздает инет.
                    Вот лог подключения этого клиента:
                    Sun Mar 13 20:36:45 2016 OpenVPN 2.3.10 x86_64-w64-mingw32 [SSL (OpenSSL)] [LZO] [PKCS11] [IPv6] built on Feb  1 2016
                    Sun Mar 13 20:36:45 2016 Windows version 6.2 (Windows 8 or greater)
                    Sun Mar 13 20:36:45 2016 library versions: OpenSSL 1.0.1r  28 Jan 2016, LZO 2.09
                    Enter Management Password:
                    Sun Mar 13 20:36:45 2016 Control Channel Authentication: tls-auth using INLINE static key file
                    Sun Mar 13 20:36:45 2016 UDPv4 link local (bound): [undef]
                    Sun Mar 13 20:36:45 2016 UDPv4 link remote: [AF_INET]ххх.ххх.ххх.ххх199
                    Sun Mar 13 20:36:46 2016 [16_VPN_S] Peer Connection Initiated with [AF_INET]ххх.ххх.ххх.ххх:1199
                    Sun Mar 13 20:36:48 2016 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
                    Sun Mar 13 20:36:48 2016 open_tun, tt->ipv6=0
                    Sun Mar 13 20:36:48 2016 TAP-WIN32 device [Ethernet 2] opened: \.\Global{DAEA41DA-4D2C-46D8-9CF7-73E9ACDAF1B2}.tap
                    Sun Mar 13 20:36:48 2016 Notified TAP-Windows driver to set a DHCP IP/netmask of 10.0.0.10/255.255.255.252 on interface {DAEA41DA-4D2C-46D8-9CF7-73E9ACDAF1B2} [DHCP-serv: 10.0.0.9, lease-time: 31536000]
                    Sun Mar 13 20:36:48 2016 Successful ARP Flush on interface [30] {DAEA41DA-4D2C-46D8-9CF7-73E9ACDAF1B2}
                    Sun Mar 13 20:36:53 2016 Initialization Sequence Completed

                    Чуть ниже скрины tracert на машину в удаленной сети (это принтер он точно в сети и из главной сети на пинги отвечает) и route print после поднятия ovpn канала.
                    OVPN клиент на ноуте запущет от имени администратора, сам пользователь то же администратор.
                    Клиент последний не давно скачан с оф. сайта.
                    Версия на мой взгляд значение не имеет, поскольку такая же проблема на планшете.
                    Так же выкладываю текущую конфигурацию Client Specific Overrides этого клиента-16_VPN_C3

                    ![Route print client_sony.PNG](/public/imported_attachments/1/Route print client_sony.PNG)
                    ![Route print client_sony.PNG_thumb](/public/imported_attachments/1/Route print client_sony.PNG_thumb)
                    ![Tracert from client to 87net.PNG](/public/imported_attachments/1/Tracert from client to 87net.PNG)
                    ![Tracert from client to 87net.PNG_thumb](/public/imported_attachments/1/Tracert from client to 87net.PNG_thumb)
                    CSOverrides_16_VPN_C3-sony.JPG
                    CSOverrides_16_VPN_C3-sony.JPG_thumb

                    1 Reply Last reply Reply Quote 0
                    • E
                      Electricshock
                      last edited by

                      Имеем pfSense, на нём OpenVPN сервер (Remote Access TLS/SSL). Имеем клиента на CentOS, он подключен к серверу (tun0-интерфейс) всё ок, пингует, видит. А вот машинки за этим шлюзом на CentOS не видят и не пингуют "серверную" сетку, хотя вроде все правила не запрещают это. Куда копать? Читал, что вроде как нужно уйти с "tun" на "tap", если это шлюз, за которым будут "жить" клиенты, так ли это?
                      P.S. почему-то на "tap'ax" не работает туннель, т.е. он устанавливается, но пинги не ходят…
                      Маршруты на клиентском CentOS (шлюзе)

                      
                      [root@server log]# route -n
                      Kernel IP routing table
                      Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
                      inet_ip            0.0.0.0         255.255.255.252 U     0      0        0 eth0
                      192.168.100.0   0.0.0.0         255.255.255.0   U     0      0        0 eth3
                      10.10.10.0      0.0.0.0         255.255.255.0   U     0      0        0 tun0
                      192.168.0.0     10.10.10.1      255.255.240.0   UG    0      0        0 tun0
                      169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0
                      169.254.0.0     0.0.0.0         255.255.0.0     U     1003   0        0 eth3
                      0.0.0.0         inet_gateway   0.0.0.0         UG    0      0        0 eth0
                      

                      Т.е. исходя из этого видно, что сервер "знает" о туннельной сети 192.168.0.0/20 и видит/пингует её, всё ок.

                      Вот маршруты клиента на Win 7 за этим CentOS сервером:

                      C:\Users\ПК>route print
                      ===========================================================================
                      Список интерфейсов
                       11...bc 5f f4 60 70 e7 ......Realtek PCIe GBE Family Controller
                        1...........................Software Loopback Interface 1
                       12...00 00 00 00 00 00 00 e0 Адаптер Microsoft ISATAP
                       13...00 00 00 00 00 00 00 e0 Teredo Tunneling Pseudo-Interface
                      ===========================================================================
                      
                      IPv4 таблица маршрута
                      ===========================================================================
                      Активные маршруты:
                      Сетевой адрес           Маска сети      Адрес шлюза       Интерфейс  Метрика
                                0.0.0.0          0.0.0.0    192.168.100.1   192.168.100.82     10
                              127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
                              127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
                        127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
                          192.168.100.0    255.255.255.0         On-link    192.168.100.82    266
                         192.168.100.82  255.255.255.255         On-link    192.168.100.82    266
                        192.168.100.255  255.255.255.255         On-link    192.168.100.82    266
                              224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
                              224.0.0.0        240.0.0.0         On-link    192.168.100.82    266
                        255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
                        255.255.255.255  255.255.255.255         On-link    192.168.100.82    266
                      ===========================================================================
                      Постоянные маршруты:
                        Отсутствует
                      
                      IPv6 таблица маршрута
                      ===========================================================================
                      Активные маршруты:
                       Метрика   Сетевой адрес            Шлюз
                        1    306 ::1/128                  On-link
                       11    266 fe80::/64                On-link
                       11    266 fe80::959a:37c9:fa8a:3744/128
                                                          On-link
                        1    306 ff00::/8                 On-link
                       11    266 ff00::/8                 On-link
                      ===========================================================================
                      Постоянные маршруты:
                        Отсутствует
                      
                      C:\Users\ПК>
                      
                      

                      И при пинге с клиента хоста за туннелем, например

                      C:\Users\ПК>ping 192.168.1.58
                      
                      Обмен пакетами с 192.168.1.58 по с 32 байтами данных:
                      Превышен интервал ожидания для запроса.
                      Превышен интервал ожидания для запроса.
                      

                      Видим фигу, в то время, как с самого клиентского CentOS'a:

                      [root@server log]# ping 192.168.1.58
                      PING 192.168.1.58 (192.168.1.58) 56(84) bytes of data.
                      64 bytes from 192.168.1.58: icmp_seq=1 ttl=127 time=73.0 ms
                      64 bytes from 192.168.1.58: icmp_seq=2 ttl=127 time=72.8 ms
                      64 bytes from 192.168.1.58: icmp_seq=3 ttl=127 time=73.1 ms
                      64 bytes from 192.168.1.58: icmp_seq=4 ttl=127 time=75.2 ms
                      

                      Где затык?

                      1 Reply Last reply Reply Quote 0
                      • T
                        timon12
                        last edited by

                        Добрый день!

                        Вот свежие данные: Клиент ноутбук сони, подключен через вайфай к телефону который раздает инет.

                        Если чесно, я не пользуюсь OpenVPN Client specific overrides.

                        Для експеримента попробуйте удалить всех юзеров из  OpenVPN Client specific overrides, заново экспортировать настройки для подключения и проверить.
                        (Сначало сделать, чтоб нормально любой клиент мог достучаться в удаленную сеть при подключении по ВПН, а уже потом для каждого клиента определять настройки.)
                        ВВиду того, что https://doc.pfsense.org/index.php/OpenVPN_multi_purpose_single_server#OpenVPN_Client_specific_overrides

                        Маршруты из вашего ноута правильные, т.е. конфигурация OpenVPN-сервера для мобильных клиентов правильная. Теперь вопрос настроек и конфигов ПФсенсы.
                        Покажите еще правила фаервола на LAN, OpenVPN, а также Firewall: NAT: Outbound

                        1 Reply Last reply Reply Quote 0
                        • werterW
                          werter
                          last edited by

                          2 Tano

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

                          О, еще как имеет.

                          Так же выкладываю текущую конфигурацию Client Specific Overrides этого клиента-16_VPN_C3

                          Если вашим машинам за сервером (к-ые в сети 192.168.1.0/24) не нужен доступ в сеть за этим Win-клиентом, то Client Specific Overrides
                          не нужно.
                          И еще, чтобы дать доступ за win-клиент нужно некоторое шаманство - https://community.openvpn.net/openvpn/wiki/NatOverWindows2008

                          1. Enabling IP forwarding Press Windows+R and type:
                          regedit.exe

                          Now navigate to the:
                          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Tcpip\Parameters

                          and set
                          IpEnableRouter

                          to 1

                          И перезагрузить клиента.

                          1 Reply Last reply Reply Quote 0
                          • T
                            timon12
                            last edited by

                            И еще, чтобы дать доступ за win-клиент нужно некоторое шаманство

                            Верно подмечено!!!!!!

                            yUb0j31YTbFwzXEVP5bVY28mzePPdVBPLWhwR3GZ.jpg
                            yUb0j31YTbFwzXEVP5bVY28mzePPdVBPLWhwR3GZ.jpg_thumb

                            1 Reply Last reply Reply Quote 0
                            • E
                              Electricshock
                              last edited by

                              tap или tun? Если Site-to-Site?

                              1 Reply Last reply Reply Quote 0
                              • T
                                Tano
                                last edited by

                                @timon12:

                                Добрый день!

                                Вот свежие данные: Клиент ноутбук сони, подключен через вайфай к телефону который раздает инет.

                                Если чесно, я не пользуюсь OpenVPN Client specific overrides.

                                Для експеримента попробуйте удалить всех юзеров из  OpenVPN Client specific overrides, заново экспортировать настройки для подключения и проверить.
                                (Сначало сделать, чтоб нормально любой клиент мог достучаться в удаленную сеть при подключении по ВПН, а уже потом для каждого клиента определять настройки.)
                                ВВиду того, что https://doc.pfsense.org/index.php/OpenVPN_multi_purpose_single_server#OpenVPN_Client_specific_overrides

                                Маршруты из вашего ноута правильные, т.е. конфигурация OpenVPN-сервера для мобильных клиентов правильная. Теперь вопрос настроек и конфигов ПФсенсы.
                                Покажите еще правила фаервола на LAN, OpenVPN, а также Firewall: NAT: Outbound

                                Если для клиента не использовать OpenVPN Client specific overrides то как я передам клиенту информацию об удаленной сети, в этом случае клиент получит доступ только в главную сеть, который по сути сейчас и имеет, но у него не появится маршрут в удаленную сеть.
                                Поэтому в моём случае думаю Client specific overrides придется использовать.
                                Или на сервере можно прописать удаленную сеть??? как локальную сеть? это будет верно?

                                Настройки фаервола на LAN, OpenVPN, а также Firewall: NAT: Outbound я выложил в самом начале обсуждения вопроса.

                                1 Reply Last reply Reply Quote 0
                                • T
                                  timon12
                                  last edited by

                                  Или на сервере можно прописать удаленную сеть??? как локальную сеть? это будет верно?

                                  В настроках openvpn сервера для мобильных клиентов (см скрин):
                                  В разделе Tunnel Settings -> IPv4 Local Network/s допишите через запятую в какие сети хотите предоставить доступ аля: 192.168.1.0/24,192.168.12.0/24,192.168.87.0/24. Пускай openvpn сервер сам определяет маршрутизацию.
                                  Для експеримента попробуйте удалить всех юзеров из  OpenVPN Client specific overrides, заново экспортировать настройки для подключения и проверить.

                                  В данном случае все клиенты, которые будут подключаться к openvpn для мобильных клиентов будт иметь одинаковые настройки, это имеет смысл для правильной настройки, когда все получиться, тогда делать для каждого клиента OpenVPN Client specific overrides - тем самым нарезая доступы как нравиться.

                                  ![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)

                                  1 Reply Last reply Reply Quote 0
                                  • werterW
                                    werter
                                    last edited by

                                    Если для клиента не использовать OpenVPN Client specific overrides то как я передам клиенту информацию об удаленной сети, в этом случае клиент получит доступ только в главную сеть, который по сути сейчас и имеет, но у него не появится маршрут в удаленную сеть.

                                    Вы ошибаетесь. Client specific overrides исп-ся для сети за сервером для доступа к сети за клиентом.
                                    Для доступа к сети за сервером клиенту сервером отдаются марш-ты директивой push route …..;

                                    1 Reply Last reply Reply Quote 0
                                    • T
                                      timon12
                                      last edited by

                                      Если для клиента не использовать OpenVPN Client specific overrides то как я передам клиенту информацию об удаленной сети

                                      При подключении клиент запрашивает у сервера лист маршрутизации, а сервер ему выдает куда можно ходить клиенту исходя из списка В разделе Tunnel Settings -> IPv4 Local Network/s. Я б не советовал, но у меня таким образом настроенно, и работает все прекрасно.

                                      Суть таковая, клиент подключаеться к ПФ-ке, ПФ-ка выдает клиенту маршруты из "Tunnel Settings -> IPv4 Local Network/s" (смотрим маршрутизацию после подключения впн). Дальше клиент посылает запрос на удаленню сеть .87.0/24, и пакет по таблице идет локально – в тунель впн -- на ПФ-ку (пф-ка уже знает где ваша сеть .0.87/24) -- сново впн тунель в удаленку -- УДАЛЕНКА, А вот будет ли ответ здесь, зависит от того знает ли ваш роутер на удаленке где сеть с которой клиент посылает запрос.
                                      Вот и все шаманство на двух пальцах.

                                      Дело за вами, как плясать с бубном))))))))

                                      1 Reply Last reply Reply Quote 0
                                      • T
                                        Tano
                                        last edited by

                                        @werter:

                                        Если для клиента не использовать OpenVPN Client specific overrides то как я передам клиенту информацию об удаленной сети, в этом случае клиент получит доступ только в главную сеть, который по сути сейчас и имеет, но у него не появится маршрут в удаленную сеть.

                                        Вы ошибаетесь. Client specific overrides исп-ся для сети за сервером для доступа к сети за клиентом.
                                        Для доступа к сети за сервером клиенту сервером отдаются марш-ты директивой push route …..;

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

                                        1 Reply Last reply Reply Quote 0
                                        • P
                                          pigbrother
                                          last edited by

                                          @Electric^shock:

                                          tap или tun? Если Site-to-Site?

                                          tun - для маршрутизации между разными сетями. tap - объединения сетей в одну L2\Ethernet-сеть, как будто у сетей один свитч.
                                          https://ru.wikipedia.org/wiki/TUN/TAP

                                          1 Reply Last reply Reply Quote 0
                                          • T
                                            Tano
                                            last edited by

                                            @Tano:

                                            @werter:

                                            Если для клиента не использовать OpenVPN Client specific overrides то как я передам клиенту информацию об удаленной сети, в этом случае клиент получит доступ только в главную сеть, который по сути сейчас и имеет, но у него не появится маршрут в удаленную сеть.

                                            Вы ошибаетесь. Client specific overrides исп-ся для сети за сервером для доступа к сети за клиентом.
                                            Для доступа к сети за сервером клиенту сервером отдаются марш-ты директивой push route …..;

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

                                            Общее замечание:
                                            По поводу Client specific overrides  я настраивал OPEN VPN режим Remote access SSL/TSL все по этой "ИНСТРУКЦИИ https://forum.pfsense.org/index.php?topic=99694.0"
                                            Там как раз мобильному клиенту (по аналогии с удаленным шлюзом) настраивается Client specific overrides, вот я и посчитал, что основная цель этого раздела для передачи маршрутов, а оказалось, что в действительности все маршруты может дать сервер, и лишь если надо конкретному клиенту создать особые правила, можно/нужно применить  Client specific overrides для этого клиента.

                                            В моём случае:
                                            Теперь удалил по вашим советам все Client specific overrides кроме одного, который для роутера, где и нужно обеспечить двухсторониий обмен данными и чтобы все машины за сервером и за роутером могли обмениваться данными друг с другом. Сейчас это реализовано, обмен есть.
                                            Роутер получает инструкцию от сервера и поднимает два маршрута в главную сеть, у меня их две сети LAN,  в итоге он впускает и выпускает пакеты из/в главной сети.
                                            При подключении мобильного клиента, он получает все инструкции от сервера, в том числе три маршрута и один из них в сеть …87.0/24, без использования  Client specific overrides, однако доступа в удаленную сеть 192.168.87.0/24 нет.
                                            Затык идет на pfsense, он не заворачивает запрос из туннеля openvpn мобильного клиента в туннель между pfsense-роутер.
                                            В FW OPENVPN правило Pv4 * * * * * * none
                                            В FW LAN правило        IPv4 * LAN net * 192.168.87.0/24 * * none
                                            Floating ничего нет
                                            WAN открыт нужные порты иначе не было бы соединения.
                                            OutBound WAN 127.0.0.0/8 192.168.1.0/24 192.168.12.0/24 192.168.1.80/32 10.0.0.0/24 10.87.0.0/24 10.12.0.0/24 * * * WAN address * NO

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.