Инструменты пользователя

Инструменты сайта


ics70:tunnels

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Предыдущая версия
ics70:tunnels [2020/01/29 12:35]
ics70:tunnels [2020/07/23 12:47] (текущий)
annet
Строка 1: Строка 1:
 +====== Туннели ======
 +
 +**Туннель** - это механизм позволяющий объединить две удалённые и не связанные физически сети в единую логическую структуру.
 +
 +Статические туннели используются для объединения нескольких локальных сетей в одну: например при объединении нескольких удалённых офисов в одну локальную сеть таким образом,​ чтобы пользователи одной сети могли обращаться к ресурсам других.
 +
 +Туннели настраиваются на пограничных маршрутизаторах этих сетей и весь промежуточный трафик передаётся через интернет инкапсулированным в IP или GRE-пакеты.
 +
 +В ИКС вы можете настроить подключение между серверами статическим туннелем по IPIP или GRE протоколу.
 +
 +{{  .:​tunnels_create.png?​direct& ​ }}
 +
 +Обычно выбор типа туннеля зависит от промежуточных провайдеров,​ которые по каким-либо причинам могут блокировать траффик GRE или IPIP, что приводит к невозможности использования какого-то одного типа туннеля. Принципиальной разницы между этими типами туннелей нет.
 +
 +|{{  .:​tunnels_ipip.png?​direct& ​ }}|{{  .:​tunnels_gre.png?​direct& ​ }}|
 +
 +Настройки туннелей также не отличаются. Вам необходимо указать,​ на каком интерфейсе будет настроен данный туннель и прописать параметры маршрутизации:​
 +
 +  - внешний адрес удаленного сервера
 +  - адрес локальной сети
 +  - адрес удаленной сети
 +
 +Аналогичные настройки необходимо произвести на другом конце тоннеля.
 +
 +**Важно:​** ​ для того, чтобы туннель работал корректно,​ необходимо,​ чтобы в межсетевом экране ИКС был разрешен GRE-трафик,​ а также разрешены входящие соединения с ip-адреса удаленного сервера.
 +
 +===== IP Security =====
 +
 +**IPsec **  (сокращение от IP Security) — набор протоколов для обеспечения защиты данных,​ передаваемых по межсетевому протоколу IP, позволяет осуществлять подтверждение подлинности и/или шифрование IP-пакетов.
 +
 +{{  .:​tunnels_ipsec.png?​direct& ​ }}
 +
 +Защита передачи данным по туннелям позволяет избежать многих проблем,​ связанных с утечкой информации и получения ложных данных. Вы можете защитить туннельный трафик,​ перейдя на вкладку «Шифрование» и установив флажок «Использовать шифрование». После этого вы можете произвести необходимые настройки параметров.
 +
 +**Внимание!** ​ Данную процедуру необходимо произвести на обоих концах туннеля,​ в противном случае передача данных работать не будет.
 +
 +**Внимание!** ​ При использовании IPsec шифрования в туннелях IPIP и GRE трафик будет проходить через интерфейс **enc0**. Статистика на данном интерфейсе не собирается!
 +
 +===== OpenVPN =====
 +
 +**OpenVPN** ​ - свободная реализация технологии VPN с открытым исходным кодом для создания зашифрованных каналов типа точка-точка или сервер-клиенты между компьютерами. Она позволяет устанавливать соединения между компьютерами,​ находящимися за NAT-firewall,​ без необходимости изменения их настроек.
 +
 +{{  .:​tunnels_openvpn.png?​direct& ​ }}
 +
 +Система туннелей OpenVPN построена таким образом:​ что одна из машин выбирается сервером,​ в рамках "​ИКС"​ настраивается OpenVPN-сеть;​ а все остальные - клиентами,​ в рамках "​ИКС"​ OpenVPN туннели.
 +
 +На сервере прописывается адресация пространства внутри OpenVPN-сети (рекомендуется оставить значение по умолчанию) и размещаются SSL-сертификаты,​ а на клиентах указывается внешний IP-адрес сервера. Также, указывается порт обмена данными,​ что позволяет подключаться к серверу,​ который находится за межсетевым экраном или NAT, при помощи перенаправления портов.
 +
 +Чтобы прописать необходимые сертификаты от сервера клиентам,​ сделайте следующее:​
 +
 +1. На сервере необходимо создать [[.:​openvpn_setup|OpenVPN-сеть]]
 +
 +{{  .:​tunnel_ovpn_server.png?​direct& ​ }}
 +
 +2. Создать пользователя для подключения и открыть ему доступ в модуле OpenVPN
 +
 +{{  .:​tunnel_user_allow.png?​direct& ​ }}
 +
 +3. Выгрузить сертификат в индивидуальном модуле пользователя,​ с расширением *.ovpn
 +
 +{{  .:​userdata_openvpn_1.png?​direct& ​ }}
 +
 +4. Информацию из скаченного файла (*.ovpn) необходимо разбить на 3 файла (ca.crt, client.crt, client.key). В файл ca.crt поместить информацию содержащуюся между тегами <​ca></​ca>​. Аналогично и для файлов client.crt и client.key помещаем информацию между тегами <​cert></​cert>​ и <​key></​key>​ соответственно. Далее импортируем корневой сертификат,​ а затем клиентский с указанием ключа на клиентском сервере.
 +
 +{{  .:​tunnels_client_certs.png?​direct& ​ }}
 +
 +5. После этого импортированные сертификаты можно будет выбрать на вкладке "​Шифрование"​ при создании туннеля OpenVPN (поле "​Ключ TLS авторизации"​ необходимо заполнить,​ содержимым файла *.ovpn, а именно информацией между тегами <​tls-auth></​tls-auth>​)
 +
 +{{  .:​tunnel_client_certs_select.png?​direct& ​ }}
 +
 +===== Туннель IPsec =====
 +
 +В ИКС можно настроить подключение между серверами IPsec-туннелем,​ в котором IPsec работает в туннельном режиме. Особенностью данного туннеля является то, что он считается активным только до тех пор, пока между локальными и удаленными сетями туннеля происходит обмен трафиком. При отсутствии такого трафика в течение 8 часов туннель объявляется неактивным,​ с соответствующим статусом туннеля (время можно задать в настройках шифрования).
 +
 +Чтобы добавить туннель IPsec, выполните следующие действия:​
 +
 +1. Нажмите кнопку **«Добавить»** ​ и выберите **«Сети > Туннели > Туннель IPsec»**.
 +
 +{{  .:​add_tunnel.png?​nolink&​1000x456 ​ }}
 +
 +2. На вкладке **«Общие настройки»** ​ введите **название** ​ туннеля.
 +
 +3. Выберите **внешний интерфейс**.
 +
 +4. Введите в соответствующих полях следующие **адреса**:​ внешний IP-адрес удаленного сервера,​ локальные сети, удаленные сети.
 +
 +{{  .:​tunnel_ipsec1.png?​nolink&​717x448 ​ }}
 +
 +5. На вкладке **«Настройки шифрования»** ​ можно установить параметры шифрования IPsec.
 +
 +**Внимание! Данную процедуру необходимо произвести на обоих концах туннеля,​ в противном случае передача данных работать не будет.**
 +
 +{{  .:​tunnel_ipsec2.png?​nolink&​675x645 ​ }}
 +
 +6. На вкладке **«Настройки мониторинга»** ​ можно установить **флаги**:​
 +
 +  * «Проверять наличие пинга внешнего IP-адреса удаленного сервера» — проверка,​ отвечает ли на ICMP-запросы внешний адрес удаленного сервера,​ который указан в общих настройках туннеля. Если пинг не будет проходить,​ в статусе туннеля отобразится соответствующее уведомление;​
 +  * «Проверять наличие пинга удаленной сети» — позволяет задать пинг до IP-адреса в удаленной сети с указанием в качестве источника IP-адрес ИКС из локальной сети. Таким образом,​ если пинг будет проходить успешно,​ статус туннеля всегда будет «Подключен». При установке флага выберите локальную сеть и введите IP-адрес удаленной локальной сети;
 +  * «Проверять доступность серверов» — при установке флага укажите серверы,​ доступность которых будет проверяться.
 +
 +По умолчанию все флаги сняты.
 +
 +{{  .:​tunnel_ipsec3-1.png?​nolink&​717x407 ​ }}
 +
 +7. Нажмите **«Добавить»** ​ — новый туннель появится в списке.
 +
 +8. Аналогичные настройки необходимо произвести на другом конце туннеля.
 +
 +**Внимание! Для корректной работы туннеля необходимо,​ чтобы в межсетевом экране ИКС был разрешен трафик от внешнего удаленного адреса,​ а также разрешен трафик от локальных удаленных сетей, если это необходимо.**
 +
 +**Важно! Удаленный сервер,​ с которым ИКС устанавливает соединение,​ не должен находиться за NAT, иначе соединение не будет работать. Данное ограничение будет устранено в ИКС версии 7.2.**
 +
 +\\
 +