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

    OpenVPN server. Пример настройки.

    Scheduled Pinned Locked Moved Russian
    27 Posts 3 Posters 8.0k 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.
    • S
      StanislawK
      last edited by

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

      0003.jpg
      0003.jpg_thumb
      0004.jpg
      0004.jpg_thumb

      1 Reply Last reply Reply Quote 0
      • S
        StanislawK
        last edited by

        для pfsense в удаленном офисе

        0005.jpg
        0005.jpg_thumb

        1 Reply Last reply Reply Quote 0
        • S
          StanislawK
          last edited by

          для мобильного пользователя.

          _в нашем примере это будет комп windows xp sp3 x86 32b с установленным актуальным на сегодня openvpn клиентом. однако для айфона, андроида  линукса или др. процедура не отличается.

          главное правило: один сертификат = один клиент.
          каждому устройству один персональный сертификат.
          один человек два устройства - два разных сертификата._

          0006.jpg
          0006.jpg_thumb

          1 Reply Last reply Reply Quote 0
          • S
            StanislawK
            last edited by

            получилось так:

            0007.jpg
            0007.jpg_thumb

            1 Reply Last reply Reply Quote 0
            • S
              StanislawK
              last edited by

              Настал момент, когда пора уже настроить OpenVPN server.

              0008.jpg
              0008.jpg_thumb
              0009.jpg
              0009.jpg_thumb
              0010.jpg
              0010.jpg_thumb
              0011.jpg
              0011.jpg_thumb
              0012.jpg
              0012.jpg_thumb

              1 Reply Last reply Reply Quote 0
              • S
                StanislawK
                last edited by

                Настроим клиентов.

                из уважения, первым удаленный офис.

                Указывая параметр Tunnel Network: 10.0.0.4/30  мы закрепляем за этим клиентом IP адрес, для нашего удобства.

                В разделе Advanced дополнительно прописываем маршрутизацию.
                Эти параметры применятся когда "поднимется" связь с удаленным офисом, тогда оба маршрутизатора узнают что с этой стороны находится локальная сеть с адресами 192.168.10.0/24, а с той стороны локальная сеть с адресами 192.168.20.0/24.  маршрутизаторы построят правильные маршруты и начнут правильно отправлять пакеты.

                0013.jpg
                0013.jpg_thumb
                0014.jpg
                0014.jpg_thumb

                1 Reply Last reply Reply Quote 0
                • S
                  StanislawK
                  last edited by

                  мобильный клиент.

                  как видно, добавляется точно так же.

                  В разделе Advanced дополнительно прописываем маршрутизацию.

                  в данном случае мобильный клиент соединившись с головным офисом получит доступ к сети головного офиса.
                  и, если между головным и удаленным офисом есть связь, то мобильный клиент получит и доступ к удаленному офису.
                  например к принтеру, или сетевому диску.

                  0015.jpg
                  0015.jpg_thumb
                  0016.jpg
                  0016.jpg_thumb

                  1 Reply Last reply Reply Quote 0
                  • S
                    StanislawK
                    last edited by

                    Если еще нету, устанавливаем пакет "OpenVPN Client Export Utility"

                    0100.jpg
                    0100.jpg_thumb

                    1 Reply Last reply Reply Quote 0
                    • S
                      StanislawK
                      last edited by

                      Экспортируем настройки

                      Если у клиента уже установлен OpenVPN, можно скачать только конфиг.

                      Я предпочитаю Inline Configurations: Others

                      Вся конфигурация VPN клиента и необходимые сертификаты в одном файле.

                      Для использования этой конфигурации с windows openvpn клиентом его достаточно перенести в папку "C:\Program Files\OpenVPN\config"

                      Экспортируем - это значит что, мы взяли одну usb флешку, и сохранили на неё конфиг впн одного клиента.
                      взяли вторую флешку. сохранили на нее конфиг впн другого клиента.
                      одна флешка - один клиент.
                      и еще в архиве под паролем
                      чтобы случайно не потерять в бесконтрольное путешествие весьма и весьма секретную информацию.

                      0017.jpg
                      0017.jpg_thumb
                      0018.jpg
                      0018.jpg_thumb

                      1 Reply Last reply Reply Quote 0
                      • S
                        StanislawK
                        last edited by

                        Не забываем разрешить трфик. Firewall.

                        1. на wan интерфейсе  разрешить входящие соединения к службе OpenVPN server.

                        2. собственно трафик внутри впн тунеля.
                        2.1 трафик  TCP/UDP - для полезных данных.
                        2.2 трафик ICMP - для пингов.

                        0019.jpg
                        0019.jpg_thumb
                        0020.jpg
                        0020.jpg_thumb

                        1 Reply Last reply Reply Quote 0
                        • S
                          StanislawK
                          last edited by

                          все выше написанное было проделано "сидя" за компом в головном офисе.
                          на плане он обозначен как 192.168.10.33.

                          пользуясь случаем заглянем на сервер 192.168.10.2.

                          0021.jpg
                          0021.jpg_thumb

                          1 Reply Last reply Reply Quote 0
                          • S
                            StanislawK
                            last edited by

                            Настраиваем удаленный доступ на ноутбуке.
                            на ноутбуке у нас windows xp. sp3  32 bit.
                            скачиваем соответствующий openvpn
                            устанавливаем.

                            Теперь мы берем соответствующую usb флешку, подключаем к мобильному клиенту.
                            достаем из запароленного архива и переносим конфиг клиента, инлайн, (файл с настройками) в
                            "C:\Program Files\OpenVPN\config"

                            на слайде 203 видно что после установки впн соединения добавилось два маршрута.
                            на слайде 204 видно что появилась связь с сервером 192.168.10.2

                            0201.jpg
                            0201.jpg_thumb
                            0202.jpg
                            0202.jpg_thumb
                            0203.jpg
                            0203.jpg_thumb
                            0204.jpg
                            0204.jpg_thumb

                            1 Reply Last reply Reply Quote 0
                            • S
                              StanislawK
                              last edited by

                              Немного о безопасности.

                              предположим у нас был сотрудник с ноутбуком, в поездке ноутбук украли. Сотрудник ответственно отнесся и не забыл нас известить.  У нас конечно всем сертификатам даются разумные имена, по которым мы легко опознаем кому какой выдан. Или ведется тетрадочка-табличка реестр соответствия.
                              Мы заглянули в такую тетрадочку и видим что утерянный сертификат выпущен нашим СА и называется epic-fail.

                              Мы "идем" в pfsense System: Certificate Manager

                              Внимание! НЕ УДАЛЯЕМ этот скомпрометированный сертификат. он должен остаться у нас.

                              Открываем раздел "отзыв плохих сертификатов", System: Certificate Revocation List Manager

                              Создаем список отзыва. (у каждого корневого СА сертификата свой список отзыва.)
                              Создаем, открываем. добавляем в него сертификат, и указываем причину отзыва.

                              Далее идем в настройки впн сервера, и проверяем что он, впн сервер. сверяется с этим списком отозванных сертификатов.
                              при необходимости сохраняем настройко впн сервера и перезапускаем службу

                              0900.jpg
                              0900.jpg_thumb
                              0901.jpg
                              0901.jpg_thumb
                              0902.jpg
                              0902.jpg_thumb
                              0903.jpg
                              0903.jpg_thumb
                              0904.jpg
                              0904.jpg_thumb
                              0905.jpg
                              0905.jpg_thumb
                              0906.jpg
                              0906.jpg_thumb

                              1 Reply Last reply Reply Quote 0
                              • S
                                StanislawK
                                last edited by

                                Еще о безопасности.

                                Предположим сотрудник с ноутбуком пошел в отпуск. И нам нужно временно заблокировать доступ.

                                Можно отозвать сертификат, добавить его в сertificate Revocation List,  а потом убрать. но идеологически более правильно временные запреты реализовать всего одной галкой в настройках впн - Client Specific Override.
                                Block this client connection based on its common name. .

                                0907.jpg
                                0907.jpg_thumb

                                1 Reply Last reply Reply Quote 0
                                • S
                                  StanislawK
                                  last edited by

                                  Настройка соединения pfsense-pfsense такая же простая как и pfsense-openvpn хотя и несколько отличается от.

                                  Эти действия делаются на pfsense  в удаленном офисе.

                                  Мы воспользовались "OpenVPN Client Export Utility" и выгрузили себе  Inline Configurations
                                  из него нам нужно извлечь.

                                  1. открытый ключ СА
                                  2. открытый ключ именного сертификата
                                  3. закрытый, приватный, ключ именного сертификата.

                                  для этого любым текстовым редактором открываем его на просмотр.
                                  находим текст между тэгами <ca><cert>и <key>Открываем на 192.168.20.1 (pfsense удаленного офиса)  Certificate Authority Manager  и добавляем новый СА сертификат.
                                  во избежание путаницы, названием задаем такое же как у CA сертификата в головном офисе - "My-root-CA".
                                  метод - импорт.  из текстового редактора переносим и вставляем только открытую часть.  (между <ca></ca>)

                                  Открываем Certificate Manager и импортируем сертификат.
                                  во избежание путаницы, названием задаем такое же как у сертификата в головном офисе - "remote-network".
                                  метод - импорт.  из текстового редактора по одной переносим и вставляем, обе части.  <cert>и <key>соответственно.

                                  0300.jpg
                                  0300.jpg_thumb
                                  0301.jpg
                                  0301.jpg_thumb
                                  0302.jpg
                                  0302.jpg_thumb
                                  0303.jpg
                                  0303.jpg_thumb
                                  0304.jpg
                                  0304.jpg_thumb</key></cert></key></cert></ca>

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    StanislawK
                                    last edited by

                                    Настраиваем OpenVPN клиента.

                                    В головном офисе сервер, подключаемся из удаленного в режиме клиента. Его и настраиваем.
                                    прописываем IP и порт сервера.
                                    TLS Authentication  копируем с VPN сервера.

                                    Выбираем Peer Certificate Authority, Client Certificate,
                                    Выбираем такой же как на сервере Encryption algorithm
                                    Так же как и на сервере ставим галочку Compression.
                                    Остальные настройки по умолчанию, не заполняем.
                                    При установлении соединения клиент получит их с сервера.

                                    0305.jpg
                                    0305.jpg_thumb
                                    0306.jpg
                                    0306.jpg_thumb
                                    0307.jpg
                                    0307.jpg_thumb

                                    1 Reply Last reply Reply Quote 0
                                    • S
                                      StanislawK
                                      last edited by

                                      После нажатия кнопки save параметры применяются и сразу же устанавливается соединение.
                                      OpenVPN клиент получает настройки от сервера. ip адрес тунеля и маршрут в сеть головного офиса.

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

                                      0308.jpg
                                      0308.jpg_thumb
                                      0309.jpg
                                      0309.jpg_thumb
                                      0310.jpg
                                      0310.jpg_thumb
                                      0311.jpg
                                      0311.jpg_thumb
                                      0312.jpg
                                      0312.jpg_thumb

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

                                        Повторюсь еще раз.

                                        Для доступа из сети за сервером в сеть за клиентом на сервере в fw на LAN необходимо создать явное разрешающее правило вида :

                                        * LAN net * remote_net * * *

                                        Поставить его самым первым (в зав-ти от условий, конечно). Можно и во Floating rules впихнуть вместо lan.

                                        Это особенность 2.1.х и новее.

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          StanislawK
                                          last edited by

                                          @werter:

                                          Повторюсь еще раз.

                                          Для доступа из сети за сервером в сеть за клиентом на сервере в fw

                                          Я же делал скрины с firewall.  Маленькие?

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

                                            Скрины правил fw на WAN, OpenVPN присутствуют.
                                            Скрина правил fw на LAN - нет.

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