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

    OpenVPN и локальные ресурсы внутри сети

    Scheduled Pinned Locked Moved Russian
    57 Posts 5 Posters 10.1k Views 3 Watching
    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 Offline
      marchello
      last edited by

      Нет, не желает соединятся. Хотя другие сервера на которых шлюзом прописан сам pfSense с соответствующим правилом в firewall и NAT обмениваются пакетами без проблем. Нужно исхитриться сделать так чтобы пакеты отправляемые с подсети OpenVPN доходили а ответы возвращались отправителю с сервера находящегося в локальной сети за pfSense у которого шлюз не pfSense.

      K 1 Reply Last reply Reply Quote 0
      • K Offline
        Konstanti @marchello
        last edited by Konstanti

        @marchello
        Это значит , что

        1. или Вы меня не поняли
        2. или что-то делаете неправильно

        Тут задача простая , подменить IP адрес источника на адрес , на который сервер обязательно ответит, не используя шлюз по умолчанию . Этим адресом станет ip адрес lan интерфейса ( при условии , что pf и сервер находятся в одной сети ) . Для решения этой задачи Вам надо создать правило Nat Outbound на lan интерфейсе pf для всех пакетов , идущих от openvpn клиентов в сторону сервера .

        Например , используя iptables это будет выглядеть так

        -A POSTROUTING -o LAN_ИНТЕРФЕЙС -p tcp -s КЛИЕНТЫ_OPENVPN --dport ПОРТ_ВАШЕГО_СЕРВЕРА -d АДРЕС_ВАШЕГО_СЕРВЕРА -j SNAT --to-source IP_АДРЕС_LAN_ИНТЕРФЕЙСА

        https://forum.netgate.com/topic/156968/help - проблема , по сути, та же , только без проброса портов

        M 1 Reply Last reply Reply Quote 0
        • M Offline
          marchello @Konstanti
          last edited by

          @Konstanti В Interfaces > Interface Assignments Добавил и активировал интерфейс VPN-а
          Screenshot 2020-10-02 094554.png
          Далее создал в Firewall > NAT > Outbound
          Буфер обмена-1.png
          Попытка достучаться ping-ом до сервера снаружи по VPN безуспешна ((( не отвечает хотя другие сервера у которых прописан гейтом pfSense отрабатывают штатно.

          K 1 Reply Last reply Reply Quote 0
          • K Offline
            Konstanti @marchello
            last edited by

            @marchello
            Логично, что не отвечает
            TCP и Icmp немного разные протоколы

            M 1 Reply Last reply Reply Quote 0
            • K Offline
              Konstanti
              last edited by

              This post is deleted!
              M 1 Reply Last reply Reply Quote 0
              • M Offline
                marchello @Konstanti
                last edited by

                This post is deleted!
                1 Reply Last reply Reply Quote 0
                • M Offline
                  marchello @Konstanti
                  last edited by

                  @Konstanti said in OpenVPN и локальные ресурсы внутри сети:

                  @marchello
                  Логично, что не отвечает
                  TCP и Icmp немного разные протоколы

                  Не логично, прошу заметить что в протоколах указано ''any''

                  K 1 Reply Last reply Reply Quote 0
                  • K Offline
                    Konstanti @marchello
                    last edited by

                    @marchello
                    На вашей картинке прописано , tcp для интерфейса lan . Откуда any ?

                    M 1 Reply Last reply Reply Quote 0
                    • M Offline
                      marchello @Konstanti
                      last edited by

                      @Konstanti said in OpenVPN и локальные ресурсы внутри сети:

                      @marchello
                      На вашей картинке прописано , tcp для интерфейса lan . Откуда any ?

                      Это два правила касающиеся двух портов на двух разных серверах на которые заходят клиенты из вне, это не имеет отношения к нашему VPN )))

                      K L 2 Replies Last reply Reply Quote 0
                      • K Offline
                        Konstanti @marchello
                        last edited by

                        @marchello тогда у Вас нет нужно правила на lan интерфейсе

                        M 1 Reply Last reply Reply Quote 0
                        • L Offline
                          luha @marchello
                          last edited by

                          @marchello Привет. Недавно настраивал OpenVPN и так же надо было видеть сервера.

                          1. В настройках сервера OpenVPN на pf в разделе "Advanced Configuration" в "Custom options" прописываем в какую подсеть могут стучать клиенты OpenVPN - push "route 192.168.1.0 255.255.255.0" (там это даже в подсказке указано и не с проста)
                          2. На самом сервере при необходимости разрешить доступ с подсети OpenVPN (с той, которую ты указываешь в настройках сервера OpenVPN).

                          ... и всё, должно работать. Может быть ещё включить "заворачивание всего трафика через туннель", но тогда обратить внимание на настройки DNS.

                          M 1 Reply Last reply Reply Quote 0
                          • M Offline
                            marchello @Konstanti
                            last edited by

                            @Konstanti said in OpenVPN и локальные ресурсы внутри сети:

                            @marchello тогда у Вас нет нужно правила на lan интерфейсе

                            В порядке эксперимента добавил правило на эхо, и всё равно не работает.
                            Буфер обмена-1.png

                            K 1 Reply Last reply Reply Quote 0
                            • K Offline
                              Konstanti @marchello
                              last edited by

                              @marchello
                              Тогда только остается включать tcpdump и смотреть , что происходит в момент пинга
                              tcpdump -netti имя_lan_интерфейса icmp and host ip_адрес_сервера

                              и проверять
                              1 отрабатывает ли nat outbound (те изменился ли ip адрес источника)
                              2 и приходят ли ответные пакеты

                              1 Reply Last reply Reply Quote 0
                              • M Offline
                                marchello @luha
                                last edited by

                                @luha said in OpenVPN и локальные ресурсы внутри сети:

                                @marchello Привет. Недавно настраивал OpenVPN и так же надо было видеть сервера.

                                1. В настройках сервера OpenVPN на pf в разделе "Advanced Configuration" в "Custom options" прописываем в какую подсеть могут стучать клиенты OpenVPN - push "route 192.168.1.0 255.255.255.0" (там это даже в подсказке указано и не с проста)
                                2. На самом сервере при необходимости разрешить доступ с подсети OpenVPN (с той, которую ты указываешь в настройках сервера OpenVPN).

                                ... и всё, должно работать. Может быть ещё включить "заворачивание всего трафика через туннель", но тогда обратить внимание на настройки DNS.

                                Удалил все правила включая OpenVPN. Создал новый сервер включив дополнительный маршрут в Custom options, далее выгрузил конфигурацию, загрузил на клиента, проверил подключение к OpenVPN серверу - работает без вопросов. Добавил правило в NAT
                                Буфер обмена-1.png

                                Перепроверил активность и поднятое состояние OpenVPN интерфейса. По итогу ping с клиента показывает что сервера с прописаным гейтом pfSense отвечают, с иным ip гейта на интерфейсе молчат.

                                K 1 Reply Last reply Reply Quote 0
                                • L Offline
                                  luha
                                  last edited by luha

                                  Думаю дело не в том какой шлюз указан на "неотвечающем" сервере, а во взаимодействии подсетей. Шлюз это только для выхода в интернет. Учти, прохождение пакетов зависит от каждой из участвующих сторон! Ты же на сервере ведь проверил, слушает он подсеть OpenVPN или нет? От стороны pf твой клиент виден в локалке с адресом подсети VPN... соответственно свичи там разные, компьютеры, сервера, все будут отличные от их подсети пакеты или игнорировать или принимать, зависит от настроек.

                                  Кстати! А на pf разрешил трафик между подсетями?! Может pf сам не слушает того твоего сервера?

                                  1 Reply Last reply Reply Quote 0
                                  • K Offline
                                    Konstanti @marchello
                                    last edited by Konstanti

                                    @marchello
                                    Можете показать вывод tcpdump на lan интерфейсе при запущенном пинге в направлении нужного сервера ( с настроенным NAT outbound) ?

                                    1 Reply Last reply Reply Quote 0
                                    • M Offline
                                      marchello
                                      last edited by marchello

                                      Для следующих поколений оставляю готовый рецепт настройки доступа пользователей из VPN во внутреннюю сеть предприятия без необходимости прописывать на запрашиваемом ресурсе шлюзом pfSense.

                                      1. Заходите в Interfaces > Interface Assignments добавляете интерфейс OpenVPN и в его свойствах активируете (поднимаете)
                                        82aabad9-231f-4131-b409-04138fc14a0a-изображение.png

                                      2. Запоминаем сетку и маску выделенную для тоннеля + галка на ''Redirect IPv4 Gateway'' включена.
                                        dd0bd314-cbb6-40c7-89e5-600ea30bbbfb-изображение.png

                                      3. Добавляем принудительно маршрут в локальную сеть предприятия при установке соединения клиентом
                                        7035b855-b5e7-41d2-ad05-19270e8d3b60-изображение.png

                                      4. Далее идём в NAT и создаём правило которое позволяет клиентам из сетки VPN ходить в сеть предприятия и обратно.
                                        aa16ae96-dfbe-4371-bac3-8be26e445923-изображение.png

                                      Всё будет работать при условии, что сам OpenVPN предварительно был настроен верно и подключение к нему перед этими манипуляциями проверялось. Спасибо Konstanti и Luha в решении проблемы.

                                      P/S появилась дополнительная проблема, веб сайт к которому получен доступ и который отвечает внутри сети предприятия, делает редирект пользователя за пределы сети предприятия, на другой веб-сервис, попытка дополнительного добавления сети этого нового веб-сервиса (находящемуся за пределами локальной сети предприятия) в NAT и в соответствующее поле VPN к клиенту не помогает.

                                      L 1 Reply Last reply Reply Quote 1
                                      • werterW Offline
                                        werter
                                        last edited by

                                        Добрый.

                                        @marchello

                                        1. Зачем ВЕСЬ траффик впн-клиентов в туннель-то заворачивать?
                                        2. В чем проблема указать шлюзом ЛАН-адрес пф на интересующей машине? Зачем "танцы" ?
                                        M 1 Reply Last reply Reply Quote 0
                                        • M Offline
                                          marchello @werter
                                          last edited by

                                          @werter said in OpenVPN и локальные ресурсы внутри сети:

                                          Добрый.

                                          @marchello

                                          1. Зачем ВЕСЬ траффик впн-клиентов в туннель-то заворачивать?
                                          2. В чем проблема указать шлюзом ЛАН-адрес пф на интересующей машине? Зачем "танцы" ?

                                          Есть причины и найдены последствия. 1 - нужно весь 2 - низя поменять шлюз ресурса (вообще низя ))) )

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

                                            Тогда команда route на этом сервере вас спасет:

                                            route -p -4 ADD адрес-сети-впн-клиентов MASK маска-сети-впн-клиентов ЛАН-ip-пф
                                            
                                            M 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.