Настройка OpenVPN в режиме «сеть - сеть»
VPN-соединения типа сеть-сеть
соединяют две локации со статическими публичными IP-адресами и позволяют маршрутизировать трафик между двумя сетями. Чаще всего это используется для соединения филиалов организации с её головным офисом, чтобы пользователи филиалов могли получить доступ к сетевым ресурсам головного офиса.
Предварительные условия
Для настройки SSL-туннеля OpenVPN, необходимо иметь установленный TING с уникальной адресом подсети LAN для каждой из сторон (локальная сеть должна отличаться от удалённой сети).
Примечание
В примере будет использоваться частный IP-адрес для WAN-соединения. Всвязи с чем, для разрешения приватного трафика, необходимо, чтобы был отключен (снят флажок) у параметра Блокировать частные сети на странице настроек
.Топология сети
Схема ниже показывает ситуацию, которую будем реализовывать: сети A и B, транзитная сеть 192.168.1.0/24
для соединения обоих брандмауэров, туннельная сеть 10.1.8.0/24
между локациями:
Подготовка
Доверенные сертификаты
В порядке настройки туннеля на обоих концах, нужно сконфигурировать сертификаты, гарантирующие доверие между обеими машинами. Для этого нужен корневой центр сертификации, который выпустит два сертификата - по одному для каждого сайта.
Для OpenVPN требуется наличие центра сертификации (в примере TING CA 139
), сертификата для сервера (в примере OVPN-cert
) и сертификат пользователя (в примере test1_auth
для пользователя test1
).
См.также
Нужно создать:
Корневой CA:
TING CA 139
.Сертификат для сервера - Сеть B: для поля Стандартное имя указать имя машины в FQDN-формате.
Сертификат для клиента - Сеть A: создать пользователя с таким же именем, как указано в поле Стандартное имя.
Корневой центр сертификации выдаёт сертификаты напрямую - промежуточный центр сертификации не нужен.
Примечание
Лучше всего предлагать каждому пользователю собственный сертификат, использующий то же самое имя, что и у пользователя (хоть клиенты и могут использовать сертификат совместно). При добавлении сертификата из менеджера пользователей, поле Стандартное имя автоматически примет значение имени пользователя. В этом примере мы будем аутентифицироваться только по сертификату, никаких дополнительных пользователей или паролей не потребуется.
Статические ключи
Статический ключ создаётся в разделе
, вкладка . Для данного примера надо выбрать режим auth, затем нажать кнопку с изображением шестерёнки генерации ключа и указать к нему описание.Подготовка сети A
Скопируйте открытую часть сертификата центра сертификации на TING сети A (нажать кнопку загрузки и скопировать содержимое в новый CA на этом хосте.
Скопируйте открытую и закрытые части клиентского сертификата в новый сертификат в сети А.
Скопируйте содержимое статического ключа в новую запись и выберите тот же тип.
Создание серверного соединения (Сеть B)
После завершения общей настройки, можно настроить соединение типа сервер с помощью
:Параметр |
Значение |
---|---|
Роль |
Сервер |
Описание |
OVPN-serv |
Протокол |
UDP (IPv4) |
Port number |
1194 |
Адрес привязки |
192.168.1.139 [1] |
Server (IPv4) |
10.1.8.0/24 (используемая туннельная сеть) |
Сертификат |
Использовать подготовленный сертификат сервера |
Статический ключ TLS |
Использовать подготовленный статический ключ |
Аутентификация |
Локальная база данных [2] |
Локальная сеть |
10.10.1.0/24 |
Удалённая сеть |
10.10.2.0/24 [3] |
Примечание
Локальная сеть - это физическая или логическая подсеть, к которой напрямую подключён OpenVPN-сервер и которую он может предоставлять клиентам через зашифрованный клиент.
Удалённая сеть - это подсеть, доступная через VPN-сервер, но физически находящаяся за его пределами.
Нажмите кнопку Применить и добавьте переопределение в
:Параметр |
Значение |
---|---|
Серверы |
Оставить пустым или выбрать ваш сервер |
Стандартное имя |
test1 |
Удалённая сеть |
10.10.1.0/24 [4] |
Удалённая сеть, связанная с данным общим именем (Common Name). Без этой записи трафик между хостами не будет маршрутизироваться.
Затем надо перейти в 1194/UDP
с других хостов, на базе следующих параметров:
Параметр |
Значение |
---|---|
Действие |
Разрешение |
Интерфейс |
WAN |
Протокол |
UDP |
Получатель |
WAN-адрес |
Диапазон портов назначения |
1194 ( |
Описание |
Разрешить клиентский трафик OpenVPN |
Теперь требуется разрешить трафик в самом туннеле, добавив правило в
. Для примера, будет добавлено правило, разрешающее всё (это позволит оставить все остальные настройки по умолчанию:Параметр |
Значение |
---|---|
Действие |
Разрешение |
Интерфейс |
OpenVPN |
Протокол |
any |
Создание клиентского соединения (Сеть A)
Теперь надо настроить клиент на TING. Для этого перейдём в
и добавим новое соединение, используя следующие настройки:Параметр |
Значение |
---|---|
Роль |
Клиент |
Описание |
OVPN-client |
Протокол |
UDP (IPv4) |
Удалённо |
192.168.1.140 [5] |
Сертификат |
Использовать подготовленный сертификат сервера |
Статический ключ TLS |
Использовать подготовленный статический ключ |
Удалённая сеть |
10.10.2.0/24 |
Также можно задать в виде имени хоста, например site-remote.local
, если надо указать порт: site-remote.local:1494
или 192.168.1.140:1494
.
Проверка соединения
После подключения клиента, используйте страницу
: здесь можно просматривать солстояние сервера и клиента. При прохождении трафика по каналу, на обоих концах счётчики должны увеличиваться.Теперь можно проверить работу со стороны клиента (Сеть А) 10.10.1.11
при помощи ping
:
ping -c 3 10.10.2.11