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

    Доступ из lan в openvpn клиент

    Scheduled Pinned Locked Moved Russian
    25 Posts 3 Posters 3.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.
    • K Offline
      kerby_lime
      last edited by

      Здравствуйте. Pfsense работает в качестве шлюза и OpenVPN сервера. На клиенте OpenVPN запущен web-сервер. Мне нужно из ЛС за шлюзом Pfsense попасть на web-интерфейс клиента OpenVPN. При этом пинги с локальной машины на ip vpn-клиента идут, но ни web-морда , ни другие ресурсы недоступны почему-то. Помогите разобраться пожалуйста.

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

        Правила на на Open VPN\LAN интерфейсах pfSense?
        Брандмауэр на клиенте? web-сервер\иные ресурсы на клиенте привязаны только к LAN-IP клиента?

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

          1.брандмауэр можно исключить. Скажем так, он выключен. Плюс по белому ip c пробросом на маршрутизаторе все работает.
          2. если правильно понял, то Да. Но лучше уточните, что имеется ввиду.
          Правил особо и нет, кроме стандартных

          111.jpg
          111.jpg_thumb

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

            В настройках web-сервер к какому IP привязан сервер?
            Специально проверил. На Windows openvpn клиенте по IP, полученному из туннеля работают RDP, SMB.

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

              Тоже попробовал с RDP. Не коннектит. Но пинги тоже идут. Видимо проблема глубже.

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

                Доброе.
                Скрин правид Fw на LAN покажите.

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

                  Скажем так, он выключен

                  Все же - выключен или как-бы выключен?
                  Для TAP-адаптера включены все службы?

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

                    Давайте тогда ограничимся пока проблемой с windows клиентом. Брандмауэр выключен. Клиент установлен тот, который скачивается из pfsense. С локальной машины за шлюзом pfsense пинги на клиента openvpn идут. По RDP не коннектит. По белому ip с пробросом порта на клиентском роутере все коннектится.
                    Появилась мысль, что сервер криво сконфигурирован. Настраивал через визард с использованием freeradius. Плюс у меня мультиван. Дак вот, может проблема с Server mode. Выбран был автоматически Remote Access (User Auth). Я так понял, что в связке с радиусом другого не дано. Может ли проблема быть в этом? То есть возможно тип сервера другой должен быть? Для моей задачи что больше подходит? Спасибо.

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

                      @kerby_lime:

                      Давайте тогда ограничимся пока проблемой с windows клиентом. Брандмауэр выключен. Клиент установлен тот, который скачивается из pfsense. С локальной машины за шлюзом pfsense пинги на клиента openvpn идут. По RDP не коннектит. По белому ip с пробросом порта на клиентском роутере все коннектится.

                      При точно такой же конфигурации (специально смоделировал) ВСЕ ресурсы машины-клиента доступны.
                      Приведите скрин настроек сервера, протестуйте размер максимального пакета
                      http://www.tp-linkru.com/faq-190.html
                      Получаемый клиентом IP не попадает в диапазоны IP LAN офиса или сети, откуда клиент коннектится?

                      Подобную ситуацию имел c IPSEC. Пинг в удаленную сеть ходил, все остальное не работало. Меняли MTU, MSS - не помогло ничего, пришлось переходить на OVPN.

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

                        Где файлы конфигурации взять в pfsense? Пересоздал сервер. Клиент коннектится. Пингов теперь нет на клиента вообще. Сервер пингуется(( rdp не пашет.

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

                          Server mode. Выбран был автоматически Remote Access (User Auth). Я так понял, что в связке с радиусом другого не дано. Может ли проблема быть в этом? То есть возможно тип сервера другой должен быть? Для моей задачи что больше подходит? Спасибо.
                          Server mode выбран правильно.
                          С радиусом не связывал, не подскажу, но зависимость от радиуса возможна, попробуйте без него.

                          Где файлы конфигурации взять в pfsense?
                          /var/etc/openvpn
                          /var/etc/openvpn-csc
                          Но редактировать их смысла нет, GUI их перезапишет.

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

                            Попробую без радиуса. Отпишусь потом. Скорее всего уже завтра.

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

                              Удалил сервер OpenVPN и создал заново. С использованием локальной базы пользователей pfsense. Сервер создавал визардом. Ситуация аналогичная. Коннект есть. Пинг на клиента не идет. На сервер идет. RDP не работает. Сейчас попробую выложить конфиги.
                              Конфиг сервера прокомментировал:

                              
                              dev ovpns1
                              dev-type tun
                              tun-ipv6 //вот это меня смущает!!!!
                              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-128-CBC
                              auth SHA256
                              up /usr/local/sbin/ovpn-linkup
                              down /usr/local/sbin/ovpn-linkdown
                              client-connect /usr/local/sbin/openvpn.attributes.sh
                              client-disconnect /usr/local/sbin/openvpn.attributes.sh
                              local //ip убрал
                              tls-server
                              server 192.168.160.0 255.255.255.0 //этот адрес точно ни с чем не пересекается
                              client-config-dir /var/etc/openvpn-csc/server1
                              username-as-common-name
                              auth-user-pass-verify "/usr/local/sbin/ovpn_auth_verify user TG9jYWwgRGF0YWJhc2U= false server1 1194" via-env
                              tls-verify "/usr/local/sbin/ovpn_auth_verify tls 'OpenVpnCAcrt' 1"
                              lport 1194
                              management /var/etc/openvpn/server1.sock unix
                              push "dhcp-option DNS //убрал"
                              push "dhcp-option DNS 8.8.8.8"
                              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
                              persist-remote-ip
                              float
                              topology net30 //вот этот пункт еще интересен
                              
                              
                              1 Reply Last reply Reply Quote 0
                              • P Offline
                                pigbrother
                                last edited by

                                Ми конфиги (Тэг "Code" не поддерживает цвета, оставляю как есть):
                                Для клиента использовался дистрибутив, получаемый через пакет Client Export Utility, версии OVPN  клиента - как "старая" 2.3.14-Ix01, так  и новая 2.4.0-Ix01. Работают обе. И да, "старая" 2.3.14-Ix01 требует запуска с правами админа.

                                Сервер Remote Access (c комментариями)

                                dev ovpns5
                                verb 1
                                dev-type tun
                                tun-ipv6 // просто заглушка для ipv6 
                                dev-node /dev/tun5
                                writepid /var/run/openvpn_server5.pid
                                #user nobody
                                #group nobody
                                script-security 3
                                daemon
                                keepalive 10 60
                                ping-timer-rem
                                persist-tun
                                persist-key
                                proto udp
                                cipher AES-128-CBC
                                auth SHA1
                                up /usr/local/sbin/ovpn-linkup
                                down /usr/local/sbin/ovpn-linkdown
                                client-connect /usr/local/sbin/openvpn.attributes.sh
                                client-disconnect /usr/local/sbin/openvpn.attributes.sh
                                local xxx.xxx.xxx.111 // Внешний “белый” IP WAN 
                                tls-server
                                server 10.11.11.0 255.255.255.0 [color]//адрес сервера в туннеле[/color]
                                client-config-dir /var/etc/openvpn-csc/server5
                                username-as-common-name
                                auth-user-pass-verify "/usr/local/sbin/ovpn_auth_verify user 'Local Database' true server5" via-env
                                tls-verify "/usr/local/sbin/ovpn_auth_verify tls 'ra-ovpns-cert' 1"
                                lport ххххх
                                management /var/etc/openvpn/server5.sock unix
                                push "route 10.0.2.0 255.255.255.0" [color]//push клиентам в LAN[/color]
                                push "route 192.168.0.0 255.255.255.0"[color] //push клиентам в сеть за другим OVPN[/color]
                                ca /var/etc/openvpn/server5.ca 
                                cert /var/etc/openvpn/server5.cert 
                                key /var/etc/openvpn/server5.key 
                                dh /etc/dh-parameters.1024
                                crl-verify /var/etc/openvpn/server5.crl-verify 
                                tls-auth /var/etc/openvpn/server5.tls-auth 0
                                persist-remote-ip
                                float
                                topology subnet [color]//В настройках сервера выбрано Topology-subnet[/color]
                                reneg-sec 0
                                ifconfig-pool-persist /var/games/ips.list 0[color] //путь к файлу для задания клиентам стат. IP[/color]
                                
                                Client Specific Override для отдельного клиента:
                                Лежит в /var/etc/openvpn-csc/server5
                                
                                [code]push "route 10.0.3.0 255.255.255.0" [color]//push клиенту в сеть филиала за другим OVPN[/color]
                                push "route 10.0.4.0 255.255.255.0" [color]//push клиенту в сеть филиала за другим OVPN[/color]
                                
                                push "route 10.0.5.0 255.255.255.0" [color]//push клиенту в сеть филиала за другим OVPN
                                [/color]
                                push "route 10.100.100.0 255.255.255.0" [color]//push клиенту в сеть филиала за другим OVPN
                                [/color]
                                push "route 10.168.1.0 255.255.255.0"[color] //push клиенту в сеть филиала за другим OVPN[/color]
                                [b]# ниже - необязательные директивы:[/b]
                                push "dhcp-option DOMAIN domain.local"[color] //push клиенту DNS Domain[/color]
                                push "dhcp-option DNS 10.0.2.2" [color]//push клиенту AD DNS Servers[/color] 
                                push "dhcp-option DNS 10.0.2.10"[color] //push клиенту AD DNS Servers[/color] [/code]
                                
                                [u]другой OVPN[/u] - иные экземпляры Open VPN серверов на том же pfSense
                                
                                1 Reply Last reply Reply Quote 0
                                • K Offline
                                  kerby_lime
                                  last edited by

                                  ОК, буду пробовать. Отпишусь.

                                  P.S. Ну заработало сразу как только на сервере добавил push route в локалку за pfsense. Интересно, если я не хочу чтобы клиенты могли лазать в локалке, но сам из локалки доступ к клиентам хочу иметь, это можно организовать?

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

                                    @kerby_lime:

                                    ОК, буду пробовать. Отпишусь.

                                    P.S. Ну заработало сразу как только на сервере добавил push route в локалку за pfsense. Интересно, если я не хочу чтобы клиенты могли лазать в локалке, но сам из локалки доступ к клиентам хочу иметь, это можно организовать?

                                    Для этого у вас есть вкладка    Firewall-Rules-OpenVPN
                                    Пишите там любые правила.

                                    P.S.
                                    Какой-то скромный у вас восторг от решения проблемы.  ;)

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

                                      Восторг есть. Просто это только начало пути так сказать. Огромное спасибо!!!
                                      Возник по ходу еще один вопрос. В конфиге сервера есть место где указываются пути для  скриптов при коннекте/дисконнекте клиента. Аналогично скриптам ip-up /ip-down в pptp. Чисто теоретически, если мне нужно строить индивидуальные маршруты для клиентов, то здесь можно прописать скрипты в которых будут выполнятся правила iptables. Это возможно? Если переиначить, то могу ли я добиться эффетка push route на сервере, но правилами iptables?
                                      P.S. iptables - command not found. Печаль-беда. Как тогда быть, если нужны динамические правила маршрутизации? При коннекте клиента чтоб правило отработало, при дисконнекте - удалилось.

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

                                        Доброе.

                                        Это возможно? Если переиначить, то могу ли я добиться эффетка push route на сервере, но правилами iptables?

                                        Если это не массово, то непосредственно на клиентах это делать проще. Т.е. , напр., сперва http://skeletor.org.ua/?p=4364, а после - route  непосредст. в конфиге клиента.

                                        Можно попробовать еще с Client specific overrides поиграться для конкр. клиента.

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

                                          На клиенте - вариант, который мне не подходит по ряду причин. Нужно маршрутизировать на сервере. Хотел заюзать для этого iptables, но чет не нахожу в pfsense такого. Ни в shell, ни в web.

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

                                            Нет их там. Это же BSD.

                                            Четкое ТЗ давайте.

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