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

    OpenVPN PKI: Site-to-Site инструкция для обсуждения

    Scheduled Pinned Locked Moved Russian
    376 Posts 39 Posters 203.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
      mikhe
      last edited by

      Я запускал и p2p и RA (перезагружал на всякий случай). Конфигурационные файлы различались лишь парой строк - в конфиге p2p добавлялась строка ifconfig 172.19.19.1 172.19.19.2, а в RA строка client-to-client. Разницы я не заметил - т.е. те подглюкивания, с которыми я пытаюсь бороться есть и там и там.
      После внимательного чтения мана опенвпн получается что в результирующем конфиге p2p присутствуют две противоречивые строки ifconfig 172.19.19.1 172.19.19.2, которую вставлят пфсенс и ifconfig 172.19.19.1 255.255.255.0. которая генерится из server 172.19.19.0 255.255.255.0 и topology subnet

      1 Reply Last reply Reply Quote 0
      • G
        Groof
        last edited by

        Доброе. Подскажите кто в курсе, есть ли принципиальная разница в организации маршрутизации между подключениями по схеме OpenVPN p2p (share key) и OpenVPN p2p (SSL/TSL)?

        Суть проблему в том, что при настройки по схеме OpenVPN p2p (share key), трафик между двумя роутерами на базе pfsense ходит без проблем, в том числе между рабочими станциями, которые находиться в локальных сетях за этими роутерами. Если я перенастраиваю только OpenVPN для работы по схеме и OpenVPN p2p (SSL/TSL), то трафик почему получается односторонним, причем только от  клиента к серверу, от сервера к клиенту трафик уже не ходит не говоря о том что и нету трафика между рабочими станциями. При этом с маршрутизации все в порядке, на клиенте есть маршрут в сеть сервера, а на сервере есть маршрут в сеть клиента. Даже если открыть полностью файрвол, то проблема останется. В чем может быть дело?

        Схема следующая:
        WS1(192.168.1.100)–-(192.168.1.1)pfsense1(WAN)--(WAN)pfsense2(192.168.10.1)--(192.168.10.100)WS2
        Туннель в openvpn:
        10.0.8.1 <-p2p-> 10.0.8.2 <=p2p=> 10.0.8.5 <-p2p-> 10.0.8.6

        Таблица маршрутизации на pfsense1 192.168.1.1 (OpenVPN Server)
        default 89.89.89.93 UGS 0 50332 1500 em0
        10.0.8.0/24 10.0.8.2 UGS 0 3811 1500 ovpns2
        10.0.8.1 link#9 UHS 0 3 16384 lo0
        10.0.8.2 link#9 UH 0 0 1500 ovpns2
        89.89.89.64/27 link#1 U 0 1958172 1500 em0
        89.89.89.73 link#1 UHS 0 0 16384 lo0
        127.0.0.1 link#6 UH 0 666 16384 lo0
        192.168.1.0/24 link#2 U 0 2046000 1500 em1
        192.168.1.1 link#2 UHS 0 3 16384 lo0
        192.168.10.0/24 10.0.8.2 UGS 0 8093 1500 ovpns2

        Таблица маршрутизации на pfsense2 192.168.10.1 (OpenVPN Client)
        default 89.89.89.73 UGS 0 38973 1500 em0
        10.0.8.1/32 10.0.8.5 UGS 0 1382 1500 ovpnc2
        10.0.8.5 link#9 UH 0 0 1500 ovpnc2
        10.0.8.6 link#9 UHS 0 4 16384 lo0
        89.89.89.64/27 link#1 U 0 2051472 1500 em0
        89.89.89.93 link#1 UHS 0 0 16384 lo0
        127.0.0.1 link#6 UH 0 648 16384 lo0
        192.168.1.0/24 10.0.8.5 UGS 0 6257 1500 ovpnc2
        192.168.10.0/24 link#2 U 0 1950883 1500 em1
        192.168.10.1 link#2 UHS 0 0 16384 lo0

        Firewall: Rules  (pfsense1 и pfsense2)
        OpenVPN:
        IPv4 * * * * * * none
        Lan:
        IPv4 * LAN net * * * * none

        Ping с pfsense1:
        ответ на 10.0.8.1-есть
        ответ на 10.0.8.6-есть
        ответ на 192.168.10.1 (pfsense2)-нет
        ответ на 192.168.10.100 (WS2)-нет

        Ping с WS1:
        ответ на 10.0.8.1-есть
        ответ на 10.0.8.6-есть
        ответ на 192.168.10.1 (pfsense2)-нет
        ответ на 192.168.10.100 (WS2)-нет

        Ping с pfsense2:
        ответ на 10.0.8.1-есть
        ответ на 10.0.8.6-есть
        ответ на 192.168.1.1 (pfsense1)- есть
        ответ на 192.168.1.100 (WS1)-есть

        Ping с WS2:
        ответ на 10.0.8.1-нет
        ответ на 10.0.8.6-есть
        ответ на 192.168.10.1 (pfsense2)-нет
        ответ на 192.168.10.100 (WS2)-нет

        P.S.
        Проверяю на pfsense 2.1.5, на виртуальных машинах, шлюзы это ip противоположенных роутеров.

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

          2 Groof
          Есть ли директива iroute на сервере OpenVPN. Она необходима, чтобы сеть за сервером могла видеть сеть за клиентом.

          1 Reply Last reply Reply Quote 0
          • T
            Tr0tter
            last edited by

            @werter:

            2 Groof
            Есть ли директива iroute на сервере OpenVPN. Она необходима, чтобы сеть за сервером могла видеть сеть за клиентом.

            а у меня без iroute всё видится)Как туда так и обратно, какспер только иногда всё прикрывает )

            1 Reply Last reply Reply Quote 0
            • G
              Groof
              last edited by

              @Tr0tter:

              @werter:

              2 Groof
              Есть ли директива iroute на сервере OpenVPN. Она необходима, чтобы сеть за сервером могла видеть сеть за клиентом.

              а у меня без iroute всё видится)Как туда так и обратно, какспер только иногда всё прикрывает )

              Так у вас
              @Tr0tter:

              @werter:

              У вас на сертификатах OpenVPN или на shared key построен?
              Покажите скрин Certificates на сервере OpenVPN (pfsense).

              shared key на клиентах вставлен shared key

              У меня тоже с ним нету проблем, а тема о подключении  OpenVPN p2p (SSL/TSL)

              1 Reply Last reply Reply Quote 0
              • G
                Groof
                last edited by

                @werter:

                2 Groof
                Есть ли директива iroute на сервере OpenVPN. Она необходима, чтобы сеть за сервером могла видеть сеть за клиентом.

                Для начала хочу обратить внимание на странность, что с ws2 трафик так и не проходит в сеть pfsense1, хотя на pfsense2 есть маршрут в локальную сеть pfsense1 и к тому же трафик с самого pfsense2 проходит в сеть pfsense1.

                Насчет указания директивы iroute на сервер openvpn в Client Specific Override, пробивал указывать
                Disabled Common Name  Description
                NO           ovpnc2              (iroute 192.168.10.0 255.255.255.0)
                Указывал:
                iroute 192.168.10.0 255.255.255.0

                Но результат прежний, трафик не идет.  И да правильно я понимаю что в Common Name нужно указывать интерфейс vpn подключения и в мое случаи ovpnc2 ?

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

                  И да правильно я понимаю что в Common Name нужно указывать интерфейс vpn подключения и в мое случаи ovpnc2

                  Нет,не правильно.

                  http://fastinetserver.wordpress.com/2013/03/09/pfsense-openvpn-static-ip-for-clients/

                  NOTE: Common Name should be the same as specified in the clients certificate:

                  If you have forgotten this name go to System\Cert Manager\Certificates and check the value of the CN for your VPN use

                  1 Reply Last reply Reply Quote 0
                  • G
                    Groof
                    last edited by

                    @Groof:

                    Доброе. Подскажите кто в курсе, есть ли принципиальная разница в организации маршрутизации между подключениями по схеме OpenVPN p2p (share key) и OpenVPN p2p (SSL/TSL)?

                    Суть проблему в том, что при настройки по схеме OpenVPN p2p (share key), трафик между двумя роутерами на базе pfsense ходит без проблем, в том числе между рабочими станциями, которые находиться в локальных сетях за этими роутерами. Если я перенастраиваю только OpenVPN для работы по схеме и OpenVPN p2p (SSL/TSL), то трафик почему получается односторонним, причем только от  клиента к серверу, от сервера к клиенту трафик уже не ходит не говоря о том что и нету трафика между рабочими станциями. При этом с маршрутизации все в порядке, на клиенте есть маршрут в сеть сервера, а на сервере есть маршрут в сеть клиента. Даже если открыть полностью файрвол, то проблема останется. В чем может быть дело?

                    @werter:

                    Есть ли директива iroute на сервере OpenVPN. Она необходима, чтобы сеть за сервером могла видеть сеть за клиентом.

                    Спасибо за разъяснение.  Был невнимателен. Действительно нужно было указать подсеть клиента с помощью директивы iroute на сервер в  Client Specific Override, где в Common name, нужно было указать Common name из сертификата клиента.

                    1 Reply Last reply Reply Quote 0
                    • T
                      Tr0tter
                      last edited by

                      А как завернуть сеть в сеть которые за VPN находятся ? что бы сети друг друга "знали" ?

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

                        @Tr0tter:

                        А как завернуть сеть в сеть которые за VPN находятся ? что бы сети друг друга "знали" ?

                        Если имеются в виду подсети за OVPN-клиентами, подключенными к "центральному"OVPN-серверу, то указать каждой подсети маршрут в другую подсеть:

                        На клиентах в Advanced configuration
                        route 192.168.Х.0/24 255.255.255.0

                        или, если на сервере используется конфигурация PKI -  в Client Specific Overrides
                        push route "192.168.Х.0 255.255.255.0"

                        где 192.168.Х.0 - сеть удаленного филиала

                        В редких случаях push route может оказаться нужным дополнить явным указанием шлюза:
                        push route "192.168.Х.0 255.255.255.0 10.х.х.1"

                        где 10.х.х.1 адрес OVPN-сервера в туннеле

                        Не лишним может оказаться добавление на LAN на сервере и клиентах правил вида

                        IPv4 * LAN net * 192.168.Х.0/24 * * none

                        Обратите внимание на **IPv4 *** - по умолчанию правило создается только для TCP

                        1 Reply Last reply Reply Quote 0
                        • T
                          Tr0tter
                          last edited by

                          @pigbrother:

                          @Tr0tter:

                          А как завернуть сеть в сеть которые за VPN находятся ? что бы сети друг друга "знали" ?

                          Если имеются в виду подсети за OVPN-клиентами, подключенными к "центральному"OVPN-серверу, то указать каждой подсети маршрут в другую подсеть:

                          На клиентах в Advanced configuration
                          route 192.168.Х.0/24 255.255.255.0

                          или, если на сервере используется конфигурация PKI -  в Client Specific Overrides
                          push route "192.168.Х.0 255.255.255.0"

                          где 192.168.Х.0 - сеть удаленного филиала

                          В редких случаях push route может оказаться нужным дополнить явным указанием шлюза:
                          push route "192.168.Х.0 255.255.255.0 10.х.х.1"

                          где 10.х.х.1 адрес OVPN-сервера в туннеле

                          Не лишним может оказаться добавление на LAN на сервере и клиентах правил вида

                          IPv4 * LAN net * 192.168.Х.0/24 * * none

                          Обратите внимание на **IPv4 *** - по умолчанию правило создается только для TCP

                          Тобишь, если имеется сервер с IPv4 Tunnel Network 172.16.1.0/24  нужно в Advanced добавить помимо вот этого push "route 192.168.0.0 255.255.255.0";
                          route 192.168.100.0 255.255.255.0; ещё и push route "192.168.5.0 255.255.255.0 172.16.1.0 ? Сеть от 5 заворачиваем через 172.16.1.0 в 100 ? это на одном сервере, тоже самое на другом, только тунель будет другим ?

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

                            Забудьте про адресацию туннелей. Для туннеля ваша единственная задача - обеспечить уникальную (неиспользуемую ни в какой реальной подсети адресацию, которая работает\будет работать в OpenVPN.
                            После того, как туннель поднялся все настройки производятся с реальными адресами подсетей, шлюзов и т.д.

                            это на одном сервере, тоже самое на другом, только тунель будет другим ?
                            Давайте уточним терминологию.
                            Сервер - это то, что ожидает подключения.
                            Клиент - это то, что инициирует подключение.

                            В случае PKI ("сервер с сертификатами") настройки сервера в client specific overrides в принципе равнозначны  настройкам на клиенте.
                            Например  push route "…. в  client specific overrides делает то же самое, что route в настройках клиента.
                            Исключение - директива iroute, ее нужно указывать именно в client specific overrides на сервере.

                            1 Reply Last reply Reply Quote 0
                            • T
                              Tr0tter
                              last edited by

                              @pigbrother:

                              Забудьте про адресацию туннелей. Для туннеля ваша единственная задача - обеспечить уникальную (неиспользуемую ни в какой реальной подсети адресацию, которая работает\будет работать в OpenVPN.
                              После того, как туннель поднялся все настройки производятся с реальными адресами подсетей, шлюзов и т.д.

                              Ну и где это делается ? из сети 192.168.0.0 я могу пинговать всё что можно, а вот из 192.168.5.0 не могу пинговать 192.168.100.0 но из этих сетей я могу пинговать 192.168.0.0

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

                                Добрый день!
                                Все сделал как написано в топике, все хорошо работает. Но почему то компьютеры не видят друг друга в сетевом окружении и более того непонятен такой момент. Компьютеры которые находятся в одной подсети с сервером не пингуют компы из подсети клиента, а наоборот пинги есть и доступ по IP.
                                Какой то парабокс - доступ из клиентской подсети в серверною есть, а наоборот нет  :(

                                Сеть с сервером 10.2.0.0/24
                                Сеть клиента 10.2.1.0/24
                                Туннель 172.16.0.1/24

                                Маршруты на сервере
                                default xxx.xxx.xxx.xxx UGS 0 8327006 1500 em1
                                10.2.0.0 link#1 U 0 8450553 1500 em0
                                gw01 link#1 UHS 0 0 16384 lo0
                                10.2.1.0 172.16.0.2 UGS 0 3790876 1500 ovpns1
                                xxx.xxx.xxx.0/27 link#2 U 0 205476 1500 em1
                                xxx.xxx.xxx.xxx link#2 UHS 0 0 16384 lo0
                                localhost link#5 UH 0 217 16384 lo0
                                172.16.0.0 172.16.0.2 UGS 0 0 1500 ovpns1
                                172.16.0.1 link#7 UHS 0 0 16384 lo0
                                172.16.0.2 link#7 UH 0 0 1500 ovpns1

                                Маршруты на клиенте

                                default xxx.xxx.xxx.xxx UGS 0 29325548 1500 em0
                                10.2.0.0/24 172.16.0.5 UGS 0 2891014 1500 ovpnc1
                                10.2.1.0/24 link#2 U 0 28010720 1500 em1
                                10.2.1.1 link#2 UHS 0 0 16384 lo0
                                xxx.xxx.xxx.xxx/27 link#1 U 0 715465 1500 em0
                                xxx.xxx.xxx.xxx link#1 UHS 0 0 16384 lo0
                                127.0.0.1 link#5 UH 0 176 16384 lo0
                                172.16.0.1/32 172.16.0.5 UGS 0 0 1500 ovpnc1
                                172.16.0.5 link#7 UH 0 0 1500 ovpnc1
                                172.16.0.6 link#7 UHS 0 0 16384 lo0

                                Чего не хватает?

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

                                  NetBIOS, iroute.

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

                                    iroute 10.2.1.0 255.255.255.0 добавлено в specific.
                                    А как быть с NetBios

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

                                      Внимательнее смотрите страницу настроек. Там должна быть галка по поводу NetBIOS.
                                      Или поднимайте tap-туннель.

                                      1 Reply Last reply Reply Quote 0
                                      • K
                                        kilkanj
                                        last edited by

                                        Добрый день!
                                        Посоветуйте, как лучше реализовать следующую схему:

                                        Есть 2 сети за pfsense и внешние виндовые клиенты с виндовым openvpn.
                                        Нужно объединить сети за pfsence и дать возможность внешним клиентам, при подключении видеть общие ресурсы обеих сетей, а не только той к openvpn серверу которой они коннектятся.
                                        При этом не хотелось бы устраивать на pfsense множество серверов openvnc.  Желательно вообще 1.

                                        Навскидку кажется, что можно это сделать при помощи “Peer to Peer (SSL/TLS)” (PKI), но неясно можно ли подключить туда виндовых клиентов, и если да, то как.

                                        1 Reply Last reply Reply Quote 0
                                        • R
                                          rubic
                                          last edited by

                                          Для одиночных клиентов есть Remote access… Peer to Peer - это когда нужно сделать связь сети за сервером с сетью за клиентом.

                                          1 Reply Last reply Reply Quote 0
                                          • K
                                            kilkanj
                                            last edited by

                                            У меня 2 pfsense за каждым из них сеть и эти сети надо объединить. Кроме этого существуют виндовые клиенты, которые подключаются к одному из серверов, но хотят видеть ресурсы из второй сети тоже.
                                            Вы предлагаете, поднять для виндовых клиентов отдельный север с RA, а 2 сети объединять Site 2 Site ?  Сейчас так и сделано, но при этом виндовые клиенты видят только сеть за сервером к которому подключаются.

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