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

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

    Scheduled Pinned Locked Moved Russian
    57 Posts 5 Posters 7.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.
    • M
      marchello
      last edited by

      Возможно ли клиентам OpenVPN сделать доступным сервер находящийся за pfSense но у которого шлюзом не прописан pfSense ?

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

        @marchello
        Возможно
        Nat outbound на lan интерфейсе Вам в помощь для клиентов Openvpn , устанавливающих соединение с данным серевером

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

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

          K 1 Reply Last reply Reply Quote 0
          • K
            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
              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
                Konstanti @marchello
                last edited by

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

                            M 1 Reply Last reply Reply Quote 0
                            • L
                              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
                                marchello @Konstanti
                                last edited by

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

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

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

                                K 1 Reply Last reply Reply Quote 0
                                • K
                                  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
                                    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
                                      luha
                                      last edited by luha

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

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

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

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

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          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
                                            werter
                                            last edited by

                                            Добрый.

                                            @marchello

                                            1. Зачем ВЕСЬ траффик впн-клиентов в туннель-то заворачивать?
                                            2. В чем проблема указать шлюзом ЛАН-адрес пф на интересующей машине? Зачем "танцы" ?
                                            M 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.