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

      Тоже попробовал с 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
                                    • K Offline
                                      kerby_lime
                                      last edited by

                                      @werter:

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

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

                                      Да, я уже понял, что нету.
                                      ТЗ:
                                      Мне нужно одним пользователям ЛС делать проброс на openvpn клиента, другим не делать. Или одним пользователям ЛС разрешать доступ конкретным vpn-клиентам, а другим - к другим. Надеюсь тут понятно. Т.е. ходить пакеты должны строго туда куда я скажу. Правила должны быть динамическими. Срабатывать и удаляться при коннекте и дисконнекте клиента.
                                      Да, с freebsd дел не имел. Но на debian c pptp такое делал.
                                      Есть шанс реализации подобного в pfsense? 
                                      P.S. нагуглил ipfw. Наверно подойдет. Но тем не менее. Поделитесь мыслями. Послушать опытных специалистов всегда полезно.

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

                                        Правилами fw на ЛАН воспользуйтесь.

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

                                          @werter:

                                          Правилами fw на ЛАН воспользуйтесь.

                                          Это в web pfsense настроить? Динамики не будет тогда?

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

                                            В конфиге сервера есть место где указываются пути для  скриптов при коннекте/дисконнекте клиента

                                            Нет. Если имеется в виду поле "Advanced Configuration"в настройках OVPN , то туда вносятся те директивы (команды, опции) которые не вынесены в GUI. При желании в Advanced Configuration можно вбить вообще все настройки, не используя GUI совсем, так сказать Linux way.

                                            Мне нужно одним пользователям ЛС делать проброс на openvpn клиента, другим не делать. Или одним пользователям ЛС разрешать доступ конкретным vpn-клиентам, а другим - к другим.

                                            Для этого существуют Client Specific Overrides.
                                            Именно там в привязке к сертификату (common name) можно очень гибко передавать конкретному клиенту конкретные маршруты и т.д.

                                            Например, push route "192.168.0.0 255.255.255.0" в Advanced Configuration сервера передаст маршрут 192.168.0.0 255.255.255.0 всем клиентам данного сервера,
                                            А push route "192.168.0.0 255.255.255.0"  в Client Specific Override для конкретного клиента - только ему.

                                            Срабатывать и удаляться при коннекте и дисконнекте клиента.
                                            Именно так и будет.

                                            iptables во FreeBSD нет. Есть pfctl:
                                            http://freebsd.ml/%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D1%8B-%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F-pf/
                                            Настраиваемый из GUI.

                                            Для совсем тонкого управления кому куда можно\нельзя есть  Firewall-Rules-OpenVPN, единая для всех инстансов OpenVPN на конкретном pfSense.

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