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

    Маршрутизация OpenVPN

    Scheduled Pinned Locked Moved Russian
    97 Posts 7 Posters 28.8k 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.
    • D
      Desroze
      last edited by Desroze

      В общем таки разобрался, туннель таки взлетел, но одна проблема таки осталась, может вы чего подскажете, ибо гугл внятного не подсказал (либо я не понял).
      Дано:

      OpenVPN Server
      IP 192.168.72.1
      Tunnel IP 192.168.100.1
      Сеть за сервером 192.168.72.0/24
      
      OpenVPN Client 
      IP 192.168.166.1
      Tunnel IP 192.168.100.2
      Сеть за сервером 192.168.166.0/24
      

      С самих PF'ов сети я прекрасно пингую в обе стороны. А вот с сетей за ними пинги ходят только до адресов туннеля, дальше туннеля не хотят.
      Руками на PF'ах никаких маршрутов не прописывал, хотел было прописать на Centos'е из подсети 166, но что-то пошло не так

      [root@aster]# route add -net 192.168.72.0/24 gw 192.168.100.1
      SIOCADDRT: Нет такого процесса
      

      при том что с этой машины IP противоположного (тот самый 192.168.100.1) конца я прекрасно пингую. Если пускаю пинг с самого 192.168.166.1 до какого либо из хостов подсети 72 - все ок.
      Что я делаю не так?

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

        Добрый.

        Никаких маршрутов руками на клиентах. Достаточно указания шлюза в настр. сети (ip пф). И правил на интерфейсах пф (если необходимо). Удаляйте.

        На форуме ixbt есть ветка по openvpn. Там на русском хорошо описаны директивы.

        P.s. В правилах fw на LAN сервера попробуйте разрешить явно хождение в удаленную сеть. Хотя в 2.4.3 это вроде и не нужно, но все же.

        D 1 Reply Last reply Reply Quote 0
        • D
          Desroze @werter
          last edited by

          @werter said in Маршрутизация OpenVPN:

          Добрый.

          Никаких маршрутов руками на клиентах. Достаточно указания шлюза в настр. сети (ip пф). И правил на интерфейсах пф (если необходимо). Удаляйте.

          На форуме ixbt есть ветка по openvpn. Там на русском хорошо описаны директивы.

          P.s. В правилах fw на LAN сервера попробуйте разрешить явно хождение в удаленную сеть. Хотя в 2.4.3 это вроде и не нужно, но все же.

          Шлюз указан корректно, в правилах fw два правила, Anti-Lockout Rule и Default allow LAN to any rule. И тем не менее до целевой подсети связи нет

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

            "На форуме ixbt есть ветка по openvpn. Там на русском хорошо описаны директивы. "

            Подскажу, для того, чтобы сеть за сервером увидела сеть за клиентом на сервере нужна директива route (ее роль выполняет пункт remote network в настройках сервера)
            Наоборот - директива iroute на сервере в настройках Client specific overrides.

            Выше описанное касается только туннеля, построенного на сертификатах.

            1 Reply Last reply Reply Quote 0
            • PTZ-MP
              PTZ-M
              last edited by

              То же наступил на такие грабли, ток сервером у меня PfSense с сертификатами, а клиентом Zyxel на NDIS.
              С Zyxel в сетку за PfSense ходит прекрасно (видать сам OpenVPN разруливает маршруты), а вот в обратку никак.

              P 1 Reply Last reply Reply Quote 0
              • P
                pigbrother @PTZ-M
                last edited by pigbrother

                @ptz-m said in Маршрутизация OpenVPN:

                Zyxel

                Как написано выше - про route и iroute для клиента на Zyxel не забыли?
                Плюс иногда помогает правило на LAN pfSense :
                IPv4 * LAN net * a.b.с.d/24 *
                a.b.с.d/24 - сеть за Zyxel
                Правило поставить повыше, затем reset states перезакрузка.

                PTZ-MP 1 Reply Last reply Reply Quote 0
                • PTZ-MP
                  PTZ-M @pigbrother
                  last edited by PTZ-M

                  Ох как туго мозг включается после отпуска, да ещё и интерфейс форума переделали... ☠

                  @pigbrother
                  Насколько помню iroute в OpenVPN давным давно "грохнули" как атавизм, и без него норм работает на новых версиях.
                  LAN правило - м-м, оно вместо статического маршрута работает?

                  P.S. ещё вроде как tap на TCP надо переходить, а то с MultiWAN будут проблемы при UDP

                  P.S.S. кста, в видео, что выше, чувак делает точка-точка, а у меня точка-многоточка!

                  P werterW 2 Replies Last reply Reply Quote 0
                  • P
                    pigbrother @PTZ-M
                    last edited by pigbrother

                    @ptz-m said in Маршрутизация OpenVPN:

                    Насколько помню iroute в OpenVPN давным давно “грохнули” как атавизм, и без него норм работает на новых версиях.

                    Нет, это не так.
                    route говорит серверу - у тебя есть маршрут в a.b.с.d/24
                    iroute говорит серверу, что сеть a.b.с.d/24 находится за конкретным клиентом.

                    @ptz-m said in Маршрутизация OpenVPN:

                    LAN правило - м-м, оно вместо статического маршрута работает?

                    Нет, в pfSense иногда проявляется особенность, заставлюющая это правило создавать (если интересно - гуглите ветку на предмет negate rules)

                    @ptz-m said in Маршрутизация OpenVPN:

                    P.S. ещё вроде как tap на TCP надо переходить, а то с MultiWAN будут проблемы при UDP

                    Про это не слышал

                    PTZ-MP 1 Reply Last reply Reply Quote 0
                    • werterW
                      werter @PTZ-M
                      last edited by werter

                      @ptz-m said in Маршрутизация OpenVPN:

                      P.S. ещё вроде как tap на TCP надо переходить, а то с MultiWAN будут проблемы при UDP

                      Ерунда какая.
                      Не вводите др. участников в заблуждение.

                      P.s. Навскидку, TAP исп-ся, если необходим широковещательный домен - единая сеть с единой адресацией в ней.
                      В ютубе есть офиц. канал Netgate. Рекомендую видео по OpenVPN (и не только) там. Оч. доходчиво снято.

                      1 Reply Last reply Reply Quote 0
                      • PTZ-MP
                        PTZ-M @pigbrother
                        last edited by

                        @pigbrother said in Маршрутизация OpenVPN:

                        Про это не слышал

                        Да суть в технологии TCP/UDP, если VPN не ответственный (не касса или канал банка) то и х с ним. В противном случае где-то тут писалось, что тупить начинает - не понимает, что канал лёг и держит сессию. Реально может стать проблемой, если настроено кол-во подключений - слоты забиваются и до свидос.

                        P 1 Reply Last reply Reply Quote 0
                        • P
                          pigbrother @PTZ-M
                          last edited by

                          @ptz-m , Использую и TCP и UDP. Никакой разницы в моем случае не замечаю.

                          PTZ-MP werterW 2 Replies Last reply Reply Quote 0
                          • PTZ-MP
                            PTZ-M @pigbrother
                            last edited by PTZ-M

                            Вчера провёл эксперимент.
                            VPN - OpenVPN - Серверы - Локальные сети IPv4 кроме серверной сети 0.0 дописал клиентские 1.0 и т.д. В результате клиент перестал пинговать серверную сеть и открывать шару. Снёс изменения - пинг с клиента в серверную сеть снова пошёл, в обратку - по прежнему нет.
                            VPN - OpenVPN - Серверы - Специфические Настройки Клиента - Настройки Клиента - Расширенные добавил запись, с Обычное Имя (CN) соответствующие имени клиента VPN на сети 1.0, вида push "route 192.168.1.0 255.255.255.0". Толку 0%.
                            Межсетевой экран - Правила - LAN добавил запись Протокол IPv4 *, Источник LAN net, Порт *, Назначение 192.168.1.0, Порт *, Шлюз * и стало интереснее, согласно tracert пакеты в данном случае ходят по маршруту комп-pfsense-провайдер-заглушка. Убираем правило и маршрут меняется на комп-провайдер-заглушка. Тут возможно срабатывают правила, с которыми я воевал ранее - https://forum.netgate.com/topic/128281/multiwan-dns-do-not-override/19
                            Мысль вернулась к тому, что PfSense не пускает клиентам, поскольку просто не объявлен маршрут. Теперь вопрос - а как его прописать правильно? В Система - Маршрутизация - Статические Маршруты какая-то белиберда добавляется, предположу что надо в Межсетевой экран - Правила - OpenVPN добавить запись вида Протокол IPv4 *, Источник LAN net, Порт *, Назначение 192.168.1.0, Порт *, Шлюз *?

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

                              А с каким IP виден ПК, подключивщийся из сети за Zyxel к ресурсу в сети за pfSense? Обычно это видно в логах почтовых, веб и т.д серверов.

                              PTZ-MP 1 Reply Last reply Reply Quote 0
                              • werterW
                                werter @pigbrother
                                last edited by werter

                                Добрый.

                                VPN - OpenVPN - Серверы - Специфические Настройки Клиента - Настройки Клиента - Расширенные добавил запись, с Обычное Имя (CN) соответствующие имени клиента VPN на сети 1.0, вида push “route 192.168.1.0 255.255.255.0”. Толку 0%.

                                Enter the X.509 common name for the client certificate, or the username for VPNs utilizing password authentication. This match is case sensitive.

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

                                Если только на сертификатах - правильное CN сертфиката пол-ля.
                                Внимательно с этим.

                                1 Reply Last reply Reply Quote 0
                                • PTZ-MP
                                  PTZ-M @pigbrother
                                  last edited by PTZ-M

                                  @pigbrother а вот это хороший вопрос... народ пользуется шарой, на pfsense в логах разве что смотреть...

                                  @werter said in Маршрутизация OpenVPN:

                                  Если только на сертификатах - правильное CN сертфиката пол-ля.
                                  Внимательно с этим.

                                  имя полностью писал -> ля-ля-ля.домен , специально 2 раза проверил

                                  P 1 Reply Last reply Reply Quote 0
                                  • P
                                    pigbrother @PTZ-M
                                    last edited by

                                    @ptz-m said in Маршрутизация OpenVPN:

                                    а вот это хороший вопрос… народ пользуется шарой, на pfsense в логах разве что смотреть…

                                    Смотреть можно на ПК с шарой. netstat, хотите в GUI -
                                    https://live.sysinternals.com/Tcpview.exe

                                    @ptz-m said in Маршрутизация OpenVPN:

                                    имя полностью писал -> ля-ля-ля.домен , специально 2 раза проверил

                                    ля-ля-ля.домен? Имеется в виду CN (common name) сертификата пользователя.

                                    PTZ-MP 1 Reply Last reply Reply Quote 0
                                    • PTZ-MP
                                      PTZ-M @pigbrother
                                      last edited by

                                      @pigbrother
                                      я уже глянул в ту сторону, на следующей неделе займусь этим вопросом

                                      ну CN у меня есть и трёхсоставные - ля-ля-ля.город.отдел

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

                                        Покажите скрин того, что вы считаете CN. Так нам всем понятнее будет.

                                        PTZ-MP 1 Reply Last reply Reply Quote 0
                                        • PTZ-MP
                                          PTZ-M @werter
                                          last edited by PTZ-M

                                          @werter 0_1529094343166_cn.jpg

                                          не знаю что это даст, но вот - смотрите. берём имя из сертификата.
                                          проблема то в маршрутизации на данный момент, идея с правилом в разделе OpenVPN ничего не дала. согласно tracert - по прежнему сыпет pf пакетами для 1.0 сети в мир вместо того что-бы гнать его в туннель. идея с правилом в LAN от pigbrother даёт хоть что-то, но опять же, трафик сыпется в дефолтный гейтвей и выкидываться в мир вместо туннеля. бредовая идея с созданием прослойки в виде "левого" гейтвея и прогоном трафика из LAN через него в failover выглядит диким костылём

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

                                            1. Повторю свой вопрос :

                                            @pigbrother said in Маршрутизация OpenVPN:

                                            с каким IP виден ПК, подключивщийся из сети за Zyxel к ресурсу в сети за pfSense?

                                            1. Попробуйте создать пользователя с CN попроще, из 1 слова без точек и спецсимволов.
                                            PTZ-MP 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.