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 215.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.
    • L
      lsd25
      last edited by

      Jetberry, все правильно.. сети на разных концах должны быть разные.
      У меня тоже есть ЦО и филиалы. Опенвпн в режиме tap-bridge в локальную сеть. У всех филиалов сети разные делаю изначально.
      Только одно "но" - опенвпн не выделяется виртуальная сеть, т.е. интерфейс опенвпн забриджен с лан и не имеет адреса. На всех клиентах прописан статический ип.
      В обе стороны все работает. Костыли, конечно, но 3 года в продакшине без нареканий)) Однако раздумываю, как лучше организовать сеть для филиалов в других городах.
      Кстати, я же когда-то тут (на трекере, если точнее) и запостил небольшой патч, который позволял в web выбрать режим интерфейса tap или tun из-за необходимости работы филиалов непосредственно в нашей локальной сети ;)

      Хотелось бы услышать какой-нибудь ответ, все таки, по поводу этого:

      OpenVPN ROUTE: failed to parse/resolve route for host/network: 192.168.0.0
      

      когда выставляешь topology subnet.
      Как заставить openvpn прописать маршрут в нужную сеть только после того, как подключится клиент, за которым она находится? А то получается, сервер стартует, не может найти сеть и ругается, а после подключается уже клиент, за которым она есть, но маршрут "удачно" не прописался.

      1 Reply Last reply Reply Quote 0
      • I
        Ilyuha
        last edited by

        Парни, а помоги мне тоже пожалуйста.
        У меня схема из первого поста:
        pf1
        lan1 192.168.132.0/24
        ovpn_srv: p2p(ssl/tls), udp, tun, tun_net (10.0.18.0/24), adv opt (route 192.168.118.0 255.255.255.0)

        pf2
        lan2 192.168.118.0/24
        ovpn_clnt: -//-, remote_net (192.168.132.0/24)

        Так как с автоматическим НАТом маршрут не работал, при том что в таблице маршрутов порядок


        пришлось назначить ВПН соединению виртуальный интерфейс

        и включить ручной НАТ

        Теперь из сети lan2 (192.168.118.0/24) в сеть lan1 (192.168.132.0/24) траффик шурует на все 100% чего не скажешь про обратное направление (от офиса к филиалу) не идут пинги даже на ЛАН интерфейс pf2 с роутера pf1. Пингуется только туннельный интерфейс филиала (10.0.18.6)

        это часть таблицы pf1


        Собсна хотелось бы разобраться с направлением vpn_server(pf1)>pvn_client(pf2) (как и у товарища Jetberry)

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

          Добавьте iroute 192.168.118.0 255.255.255.0;  в настройках сервера (вкладка OpenVPN: Client Specific Override). И правила fw само собой.

          P.s.

          pf1
          lan1 192.168.132.0/24
          ovpn_srv: p2p(ssl/tls), udp, tun, tun_net (10.0.18.0/24), adv opt (route 192.168.118.0 255.255.255.0)

          pf2
          lan2 192.168.118.0/24
          ovpn_clnt: -//-, remote_net (192.168.132.0/24)

          Хмм..В настройках pf1 Tunnel Settings есть Local Network (указывайте 192.168.132.0/24) и Remote Network(указывайте 192.168.118.0/24).
          На pf2 в Remote Network - 192.168.132.0/24

          adv opt (route 192.168.118.0 255.255.255.0) - не нужно

          пришлось назначить ВПН соединению виртуальный интерфейс - пробуйте и без этого

          1 Reply Last reply Reply Quote 0
          • I
            Ilyuha
            last edited by

            @werter:

            Хмм..В настройках pf1 Tunnel Settings есть Local Network (указывайте 192.168.132.0/24) и Remote Network(указывайте 192.168.118.0/24).
            На pf2 в Remote Network - 192.168.132.0/24

            Сделал в адвансед чтоб другие филиалы потом добавить. Маршруты в таблице на мой взгляд правильные прописались. Стал экспериментировать потому что "искаропки" не заработало. Направление от офиса к филиалу нигде в логах не светится кроме пинга ВПН интерфейса клиента с роутера офиса

            Пинг локального интерфейса pf2 от pf1

            Лог pf1

            Лог pf2

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

              Есть еще команда tracert (в Win). Гляньте ею куда идут пакеты при обращение к 192.168.118.0/24

              1 Reply Last reply Reply Quote 0
              • I
                Ilyuha
                last edited by

                C:\Users\user>tracert -d 192.168.118.2
                
                Трассировка маршрута к 192.168.118.2 с максимальным числом прыжков 30
                
                  1    <1 мс    <1 мс    <1 мс  192.168.132.2
                  2     *        *        *     Превышен интервал ожидания для запроса.
                  3     *        *        *     Превышен интервал ожидания для запроса.
                  4     *        *        *     Превышен интервал ожидания для запроса.
                  ...
                 30     *        *        *     Превышен интервал ожидания для запроса.
                
                Трассировка завершена.
                

                Результат ожидаемый, ибо в логах видно что теряется/блокируется между pf1>pf2

                1 Reply Last reply Reply Quote 0
                • J
                  Jetberry
                  last edited by

                  @lsd25:

                  Jetberry, все правильно.. сети на разных концах должны быть разные.
                  У меня тоже есть ЦО и филиалы. Опенвпн в режиме tap-bridge в локальную сеть. У всех филиалов сети разные делаю изначально.
                  Только одно "но" - опенвпн не выделяется виртуальная сеть, т.е. интерфейс опенвпн забриджен с лан и не имеет адреса. На всех клиентах прописан статический ип.
                  В обе стороны все работает. Костыли, конечно, но 3 года в продакшине без нареканий)) Однако раздумываю, как лучше организовать сеть для филиалов в других городах.
                  Кстати, я же когда-то тут (на трекере, если точнее) и запостил небольшой патч, который позволял в web выбрать режим интерфейса tap или tun из-за необходимости работы филиалов непосредственно в нашей локальной сети ;)

                  Хотелось бы услышать какой-нибудь ответ, все таки, по поводу этого:

                  OpenVPN ROUTE: failed to parse/resolve route for host/network: 192.168.0.0
                  

                  когда выставляешь topology subnet.
                  Как заставить openvpn прописать маршрут в нужную сеть только после того, как подключится клиент, за которым она находится? А то получается, сервер стартует, не может найти сеть и ругается, а после подключается уже клиент, за которым она есть, но маршрут "удачно" не прописался.

                  Спасибо за ответ.
                  А как указать pfSensу, маршрут в сеть клиента?
                  И еще, в мануале по которому я настраивал OVPN-server (tap) был указан режим Remote Access (так и сделал), а в настройках OVPN-клиента есть только Peer to Peer . У меня сейчас клиенты подключаются с виндовс ovpn-клиента каждый сам по себе. Как вы сделали чтобы вся сеть сразу подключалась? Или можно tap в режиме Peer to Peer настраивать? Или у вас забриджен tun?

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

                    @Ilyuha:

                    C:\Users\user>tracert -d 192.168.118.2
                    
                    Трассировка маршрута к 192.168.118.2 с максимальным числом прыжков 30
                    
                      1    <1 мс    <1 мс    <1 мс  192.168.132.2
                      2     *        *        *     Превышен интервал ожидания для запроса.
                      3     *        *        *     Превышен интервал ожидания для запроса.
                      4     *        *        *     Превышен интервал ожидания для запроса.
                      ...
                     30     *        *        *     Превышен интервал ожидания для запроса.
                    
                    Трассировка завершена.
                    

                    Результат ожидаемый, ибо в логах видно что теряется/блокируется между pf1>pf2

                    У вас нет маршрута (или неправильный?) в сеть 192.168.118.xx. Если, конечно, нет записей о блокировке в fw.

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

                      2 Jetberry

                      А как указать pfSensу, маршрут в сеть клиента?

                      Директива route в доп. настройках на сервере

                      У меня сейчас клиенты подключаются с виндовс ovpn-клиента каждый сам по себе. Как вы сделали чтобы вся сеть сразу подключалась?

                      Если у вас Win-ОСь, то прийдется или объединять OpenVPN и локальный интерфейсы в бридж или включать маршрутизацию между этими интерфейсами (http://www.runpcrun.com/howtoopenvpn, https://forums.openvpn.net/topic7806-15.html)

                      1 Reply Last reply Reply Quote 0
                      • I
                        Ilyuha
                        last edited by

                        werter, маршруты сенсов есть в семидесятом посте.

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

                          @Ilyuha:

                          werter, маршруты сенсов есть в семидесятом посте.

                          Прочтите еще раз внимательно последний абзац первого поста темы. Маршрутов в системной таблице маршрутизации не достаточно для доступа в сеть клиента. Система знает, что сеть клиента находится за OpenVPN туннелем, но OpenVPN сервер не знает за каким именно.

                          1 Reply Last reply Reply Quote 0
                          • I
                            Ilyuha
                            last edited by

                            rubic, Добавил iroute, на pf1 без изменений, пингуется с роутера только 10.0.18.6. На pf2 вернул автоматический роутинг (outbound), теперь не пингуется сеть за pf1 ни из локальной сети филиала ни с роутера pf2. Маршруты на обоих сенсах прежние, перезагружал не однократно.

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

                              А в каком режиме работает сам Опенвпн-туннель - peer 2 peer  или remote access ? У меня все в порядке с  remote access. Попробуйте грохнуть все ваши теперешние туннели (и на сервере и на клиентах) и настроить в режиме  remote access.  И верните NAT в авторежим, удалив там ваши правила, пока что.

                              P.s. Есть ли на клиентах фаерволы? Отключите их. И дефолтный виндовый отключите пока что.

                              P.p.s. Не получиться с ОпенВПН - настраивайте IPSec\PPTP.

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

                                Здравствуйте, подскажите пожалуйста, я экспортировал сертификат OVPNC1-cert.crt как мне скопировать его содержимое? Я его открываю - это обычный сертификат, и ключ я в нем найти не могу. Пожалуйста, подскажите - очень хочется попробывать этот метод соединения

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

                                  @kudrik_tt:

                                  Здравствуйте, подскажите пожалуйста, я экспортировал сертификат OVPNC1-cert.crt как мне скопировать его содержимое? Я его открываю - это обычный сертификат, и ключ я в нем найти не могу. Пожалуйста, подскажите - очень хочется попробывать этот метод соединения

                                  ??? Не путайте теплое с  мягким. А настройка есть и на этом форуме и на ютубе. Надо лишь не лениться искать.

                                  1 Reply Last reply Reply Quote 0
                                  • I
                                    Ilyuha
                                    last edited by

                                    kudrik_tt, блокнотом открой .crt

                                    1 Reply Last reply Reply Quote 0
                                    • I
                                      Ilyuha
                                      last edited by

                                      rubic, запустил две тестовых виртуалки, настроил 100% по инструкции - результат тот же (pf2>pf1 хорошо, pf1>pf2 плохо).
                                      Common name в Client Specific Override именно "ovpnc1" должен быть? pf2 подключается на "ovpnc1" но на pf1 этого нэйма нигде не нашел.

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

                                        @Ilyuha:

                                        rubic, запустил две тестовых виртуалки, настроил 100% по инструкции - результат тот же (pf2>pf1 хорошо, pf1>pf2 плохо).
                                        Common name в Client Specific Override именно "ovpnc1" должен быть? pf2 подключается на "ovpnc1" но на pf1 этого нэйма нигде не нашел.

                                        А вот и проблема нашлась.
                                        Там должно быть client's X.509 common name here - имя пользовательского сертификата\ключа, а у Вас там с какого-то перепугу имя интерфейса. Покажите вкладку System: Certificate Manager: Certificates

                                        И вы не отвели на вопрос :

                                        А в каком режиме работает сам Опенвпн-туннель - peer 2 peer  или remote access ?

                                        P.s. Вот еще неплохая статья по настройке OpenVPN на Pfsense - http://www.iceflatline.com/2010/10/secure-remote-access-to-your-home-network-using-pfsense-and-openvpn/

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

                                          @Ilyuha:

                                          kudrik_tt, блокнотом открой .crt

                                          Сам дурак, каюсь, никогда кстати не предполагал что его так просто вытащить, спасибо большое. Да статья очень понятная, и очень простая, спасибо большое за труд.

                                          1 Reply Last reply Reply Quote 0
                                          • I
                                            Ilyuha
                                            last edited by

                                            werter, спасибо, с именем из "Common Name" заработало направление pf1>pf2!!! Настроено Peer2Peer. Остался последний вопрос: чего перенастроить чтоб клиенты за pf2 видели маршруты к сети pf1 в режиме NAT Out Auto. Сейчас на pf2 сделал отдельный интерфейс для ВПН клиента и в NAT Out manual указал его для подсети pf1. В сети pf1 отлично все роутится в автоматическом режиме.

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