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

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

    Scheduled Pinned Locked Moved Russian
    97 Posts 7 Posters 28.9k 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.
    • M
      Monya @PTZ-M
      last edited by Monya

      @ptz-m извините за долгое отсутствие... Во первых я просил трассировку из головной сети, где находится сам OpenVPN сервер в клиентскую. Во вторых вы не сказали что у вас клиент оказывается на Зухеле а не на pfSense, в этом случае у вас на Зухеле надо добавить правило файрвола и возможно NAT (последняя строчка) он же простой Linux.
      пример правила

      iptables -I INPUT -i tun1 -j ACCEPT
      iptables -I FORWARD -i tun1 -j ACCEPT
      iptables -I FORWARD -i br0 -o tun1 -j ACCEPT
      iptables -I FORWARD -i tun1 -o br0 -j ACCEPT
      iptables -t nat -A POSTROUTING -o tun1 -j MASQUERADE
      

      имена интерфейсов могут отличаться

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

        @monya
        спс, аналогичное чуть выше скинул werter, однако суть в том , что серверная сеть не видит и клиентов на обычных виндовых машинах. не пингует и не трессирует до них, всё что имеет адрес 192.168.1.х улетает к провайдеру по умолчанию. а вот с 172.16.0.х сложнее, пинг уходит в никуда, а трейс затыкается на самом pfsense, при этом если использовать утилиту встроенную в сам pfsense и указать интерфейс openvpn для пингования - всё ок!
        от сюда и возникает логичное предположение, что 192.168.0.х (серверная сеть), т.е. LAN, не имеет маршрута к OpenVPN серверу (сеть OpenVPN как бы изолированна и является внешним интерфейсом подчиняющимся NAT pfsense, что есть м бред), а как его добавить - я хз.

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

          @ptz-m к сожалению pfSense имеет странное явление не пропускать трафик если он не натируется как я и писал. Сделайте правило NAT - outbound и попробуйте после этого.

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

            @monya

            вот такая петрушка у меня в исходящих, смущает правила на WAN для 172.16.0.х

            0_1530731512166_исходящий.jpg

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

              @ptz-m сгенерировано верно. А по поводу правила для OpenVPN, если трафик не идёт в клиентскую сеть, значит надо заменить NO NAT на адрес интерфейса. Но обычно такое я делаю только на стороне клиента а не сервера. И только когда сеть не маршрутизированная.

              1 Reply Last reply Reply Quote 0
              • D
                derwin
                last edited by derwin

                @ptz-m @werter

                передаю всем привет. В топике используется моя статья с хабра. Она существенно устарела.

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

                  Добрый.

                  Уберите правило NAT для опенвпн. По-умолч. NAT для опенвпн выкл. Проверено.
                  Скорее всего у вас проблемы на Зюхеле - правила NAT, правила fw.

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

                    @derwin
                    какая именно статья, и что устарело? 🤔

                    @werter
                    да забудьте о бедном zyxel-е! 🙃 я и под виндовыми клиентами наблюдаю полную ересь со стороны pFsense!

                    0_1530780746166_пинг.jpg

                    Вот, тут тишина со стороны серверной сети за pfsense!

                    0_1530780783939_пинг1.jpg

                    А вот тут всё красиво со стороны виндовых клиентов!

                    Вывод - openvpn, тут вообще не при делах.

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

                      Грохните все. И с нуля. На ЮТ есть оф. мануалы. Не спеша. Кучу времени угробили. Там делов на 15 минут.

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

                        @werter
                        если бы всё было просто, то я бы не мудыхался с этим глючущим гавном, а поставил бы CentOS ещё год назад и по нормальному всё скоммутировал через iptables.
                        и да, такая проблема не у меня одного, вот колхозрешение - https://forum.netgate.com/topic/44019/iptables-to-pfsense-command-line вот ток nat.conf похоже переместили за 6 лет(

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

                          @PTZ-M

                          если бы всё было просто, то я бы не мудыхался с этим глючущим гавном,

                          Работаю с пф почти 10 лет (и еще с его папы моноволла интересовался).
                          Более 2-ух десятков крупных инсталляций (мелкие не в счет) Проблем особых нет. Дело 99,9 % в настраивающем.

                          а поставил бы CentOS ещё год назад

                          Что мешает?

                          Пересмотрел ваш пост с самого начала.
                          Уверен, что проблема не в пф. Посмотрите, остались ли у вас маршруты на пф, добавленные руками. Если есть - удаляйте.

                          Грохните все. И с нуля. На ЮТ есть оф. мануалы. Не спеша. Кучу времени угробили. Там делов на 15 минут.

                          И перезагружайте пф.

                          P.s. Найдите человека, к-ый вам настроит. За деньги, ес-но.

                          1 Reply Last reply Reply Quote 0
                          • D
                            derwin
                            last edited by

                            использую pfsense около 8 лет, нерешаемых проблем не встречал.
                            8 крупных инсталляций на 1000+ вланов, несколько десятков мелких.
                            Проблема в качестве настройщика.

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

                              Присоединюсь.
                              Более человечной реализации OpenVPN, чем в pfSense не встречал.
                              Одних комментариев к настройкам вполне достаточно, чтобы настроить базовую конфигурацию, плюс работающий визард. Настройки визарда легко трансформируются из Remote Access в site-to-site (peer to peer).
                              Реализация, IMHO, удачнее, чем в коммерческом продукте от самих разработчиков - OpenVPN Access Server
                              https://openvpn.net/index.php/access-server/overview
                              Хотите к вашим неясностям с OpenVPN добавить дзен iptables - никто не мешает. На стороне pfSense, правда, никакие манипуляции, аналогичные действиям в Линукс с iptables не нужны.

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

                                Р Е Ш Е Н О

                                ____________________________________________________________________________________________________________________

                                Ну во-общем, благодаря помощи Monya через удалёнку, за часа 4 - удалось победить!
                                Косяк явственно был в не очевидных настройках PfSense. Без помощи - вжись не допёр бы(
                                Делать надо по инструкции от Monya Маршрутизация OpenVPN с небольшими дополнениями из-за специфичности задачи.

                                Создаём маску через алиасы межсетевого экрана:
                                Имя - произвольное
                                Тип - Сеть
                                Сеть или имя или алиас - 192.168.1.0/24 - клиент с сетью за Zyxel
                                нажать +Добавить Сеть
                                172.16.0.0/24 - тунель vpn

                                0_1530876524117_aliace.jpg

                                Пишем правило для LAN интерфейса, ручками, поинт-энд-клик не робит)

                                Действие - Разрешить
                                Интефейс - Локальная сеть
                                Адресное семейство - IPv4
                                Протокол - Любой
                                Источник - Любой
                                Назначение - Один хост или алиас - имя алиаса берём из предыдущего шага

                                0_1530876686559_lan_rule.jpg

                                И не забываем правило без которого НЕ РАБОТАЕТ вся эта конструкция!

                                Межсетевой экран - Сетевая Трансляция Адресов - Исходящий

                                Не применять NAT - не стоит
                                Интерфейс - OpenVPN
                                Источник - Любой
                                Назначение - Любой
                                Адрес - Адрес Интерфейса
                                Порт или Диапазон - пусто
                                Статический Порт - не стоит
                                Нет синхронизации - не стоит

                                0_1530876990154_out.jpg

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

                                Сервер:

                                dev ovpns1
                                verb 3
                                dev-type tun
                                dev-node /dev/tun1
                                writepid /var/run/openvpn_server1.pid
                                #user nobody
                                #group nobody
                                script-security 3
                                daemon
                                keepalive 10 60
                                ping-timer-rem
                                persist-tun
                                persist-key
                                proto udp
                                cipher AES-256-CBC
                                auth SHA1
                                up /usr/local/sbin/ovpn-linkup
                                down /usr/local/sbin/ovpn-linkdown
                                local XXX.XXX.XXX.XXX 255.255.255.0
                                tls-server
                                server 172.16.0.0 255.255.255.0
                                client-config-dir /var/etc/openvpn-csc/server1
                                tls-verify "/usr/local/sbin/ovpn_auth_verify tls 'server.ля-ля-ля.mainframe' 1"
                                lport 1194
                                management /var/etc/openvpn/server1.sock unix
                                push "route 192.168.0.0 255.255.255.0"
                                push "dhcp-option WINS 192.168.0.1"
                                client-to-client
                                ca /var/etc/openvpn/server1.ca 
                                cert /var/etc/openvpn/server1.cert 
                                key /var/etc/openvpn/server1.key 
                                dh /etc/dh-parameters.2048
                                tls-auth /var/etc/openvpn/server1.tls-auth 0
                                ncp-ciphers AES-256-GCM:AES-128-GCM
                                comp-lzo adaptive
                                push "comp-lzo adaptive"
                                persist-remote-ip
                                float
                                topology subnet
                                route 192.168.1.0 255.255.255.0
                                
                                route 192.168.2.0 255.255.255.0
                                
                                

                                Клиент

                                iroute 192.168.1.0 255.255.255.0
                                ifconfig-push 172.16.0.2 255.255.255.0
                                
                                iroute 192.168.2.0 255.255.255.0
                                ifconfig-push 172.16.0.3 255.255.255.0
                                

                                Из минусов - это невозможность "грохнуть" конкретное соединение, только перезагрузить весь сервис целиком = РЕШЕНО - виновата multihome, т.е. меню Протокол - UDP IPv4 and IPv6 on all interfaces ставим IPv4 и возвращается local - тогда можно гробить коннекты

                                В настройках Zyxel KEENETIC Extra II v12 оказалось ещё проще, правда добавил на всякий OPKG и пакет фильтрации трафика из него (хз надо ли было вообще это делать), но вроде хватает правил в файерволе через веб интерфейс - на интерфейсе OpenVPN разрешить всё для протоколов TCP, UDP, ICMP

                                0_1531562003989_файер.jpg

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

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

                                  Почему мастер не предлагает сделать такие настройки при конфигурировании сервера - я хз.

                                  Дело в вашей конкретной специфике. Никогда не использовал ни алиасов, ни правил outbound NAT.
                                  А смысл объединять алиасом сеть туннеля(?) с LAN - мне вообще непонятен.

                                  M 1 Reply Last reply Reply Quote 0
                                  • M
                                    Monya @pigbrother
                                    last edited by

                                    @pigbrother там пришлось отдельное правило писать по причине использования gateway-group в правиле для всех в качестве гетвея
                                    П.С. получилось как-то сумбурно, но кто в теме тот поймёт

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

                                      @monya, да, любопытная конструкция получилась.
                                      Всегда стараюсь использовать маршрутизацию, если это возможно, вместо NAT.

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

                                        Добрый.

                                        А в чем причина использования gw group? Для чего он нужен в данном случае? Можно ли схему ? Потому как @PTZ-M об этом не упоминал.

                                        P.s. Повторюсь. В версии 2.4.х NAT автоматом на дефолтном опенвпн-интерфейсе и так отключен. Нет надобности его явно откл.

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

                                          @werter как это не писал?! О.о
                                          @ptz-m said in Маршрутизация OpenVPN:

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

                                            Добрый.

                                            @PTZ-M
                                            Покажите, пож-та, где идет речь о GW GROUP (группа шлюзов). Видимо, у нас разные понятия об этом термине.

                                            И самое главное, зачем оно в вашем случае нужно?

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