![image](https://habrastorage.org/getpro/habr/post_images/a2c/68c/d7c/a2c68cd7c6cbac21b84a65f55eb7dd33.png)
Данная статья представляет собой продолжение предыдущего материала, посвященного особенностям настройки оборудования Palo Alto Networks . Здесь мы хотим рассказать о настройке IPSec Site-to-Site VPN на оборудовании Palo Alto Networks и о возможном варианте конфигурации подключения нескольких интернет-провайдеров.
Для демонстрации будет использована стандартная схема подключения головного офиса к филиалу. Для того, чтобы обеспечить отказоустойчивое интернет-соединение, в головном офисе используется одновременное подключение двух провайдеров: ISP-1 и ISP-2. Филиал имеет подключение только к одному провайдеру, ISP-3. Между межсетевыми экранами PA-1 и PA-2 простраивается два туннеля. Туннели работают в режиме Active-Standby, Tunnel-1 активен, Tunnel-2 начнет передавать трафик при отказе Tunnel-1. Tunnel-1 использует подключение к интернет-провайдеру ISP-1, Tunnel-2 использует подключение к интернет-провайдеру ISP-2. Все IP-адреса сгенерированы случайно в целях демонстрации, и не имеют отношения к реальности.
![image](https://habrastorage.org/getpro/habr/post_images/312/8a1/67b/3128a167bfa98d8aed104e6e1e85ef22.png)
Для построения Site-to-Site VPN будет использован IPSec — набор протоколов для обеспечения защиты данных, передаваемых по протоколу IP. IPSec будет работать с использованием протокола безопасности ESP (Encapsulating Security Payload), что обеспечит шифрование передаваемых данных.
В IPSec входит IKE (Internet Key Exchange) — протокол, отвечающий за согласование SA (security associations), параметров безопасности, которые используются для защиты передаваемых данных. Межсетевые экраны PAN поддерживают IKEv1 и IKEv2.
В IKEv1 VPN соединение строится в два этапа: IKEv1 Phase 1 (IKE туннель) и IKEv1 Phase 2 (IPSec туннель), таким образом, создаются два туннеля, один из которых служит для обмена служебной информацией между межсетевыми экранами, второй — для передачи трафика. В IKEv1 Phase 1 существует два режима работы — main mode и aggressive mode. Aggressive mode использует меньше сообщений и работает быстрее, но не поддерживает Peer Identity Protection.
IKEv2 пришел на смену IKEv1, и по сравнению с IKEv1 его главное преимущество — это меньшие требования к полосе пропускания и более быстрое согласование SA. В IKEv2 используется меньше служебных сообщений (всего 4), поддерживается протокол EAP, MOBIKE и добавлен механизм проверки доступности пира, с которым создается туннель — Liveness Check, заменяющий Dead Peer Detection в IKEv1. Если проверка не пройдет, то IKEv2 может сбросить туннель и потом автоматически восстановить при первой возможности. Более подробно о различиях можно почитать здесь.
Если туннель простраивается между межсетевыми экранами разных производителей, то возможно наличие багов в реализации IKEv2, и для совместимости с таким оборудованием есть возможность использовать IKEv1. В остальных случаях лучше применять IKEv2.
Этапы настройки:
• Настройка двух интернет-провайдеров в режиме Active\Standby
Есть несколько способов реализовать данную функцию. Один из них заключается в использовании механизма Path Monitoring, ставшего доступным начиная с версии PAN-OS 8.0.0. В данном примере используется версия 8.0.16. Это функция похожа на IP SLA в маршрутизаторах Cisco. В параметре статического дефолтного маршрута настраивается отправка ping пакетов на определенный IP-адрес с определенного адреса источника. В данном случае интерфейс ethernet1/1 пингует шлюз по умолчанию раз в секунду. Если на три пинга подряд нет ответа, то маршрут считается нерабочим и удаляется из таблицы маршрутизации. Такой же маршрут настраивается в сторону второго интернет-провайдера, но с большей метрикой (он резервный). Как только первый маршрут будет удален из таблицы, межсетевой экран начнет отправлять трафик по второму маршруту — Fail-Over. Когда первый провайдер начнет отвечать на пинги, его маршрут вернется в таблицу и заменит второй из-за лучшей метрики — Fail-Back. Процесс Fail-Over занимает несколько секунд в зависимости от настроенных интервалов, но, в любом случае, процесс не моментальный, и в это время трафик теряется. Fail-Back проходит без потери трафика. Есть возможность сделать Fail-Over быстрее, при помощи BFD, если интернет-провайдер предоставит такую возможность. BFD поддерживается начиная с модели PA-3000 Series и VM-100. В качестве адреса для пинга лучше указать не шлюз провайдера, а публичный, всегда доступный интернет-адрес.
![image](https://habrastorage.org/getpro/habr/post_images/459/47f/546/45947f5469df67a6ecd315180779465b.png)
• Создание туннельного интерфейса
Трафик внутри туннеля передается через специальные виртуальные интерфейсы. На каждом из них должен быть настроен IP-адрес из транзитной сети. В данном примере для Tunnel-1 будет использоваться подсесть 172.16.1.0/30, а для Tunnel-2 — подсесть 172.16.2.0/30.
Туннельный интерфейс создается в разделе Network -> Interfaces -> Tunnel. Необходимо указать виртуальный маршрутизатор и зону безопасности, а также IP-адрес из соответствующей транспортной сети. Номер интерфейса может быть любым.
![image](https://habrastorage.org/getpro/habr/post_images/b06/a3d/08e/b06a3d08e1ee5088b23f5196aae51d3f.png)
![image](https://habrastorage.org/getpro/habr/post_images/13f/9e5/5b6/13f9e55b6855207fc6bc8c2be69657c7.png)
В разделе Advanced можно указать Management Profile, который разрешит ping на данный интерфейс, это может быть полезно для тестирования.
![image](https://habrastorage.org/getpro/habr/post_images/b67/f4d/47a/b67f4d47a922bdf70f010be46f3e3fe2.png)
• Настройка IKE Profile
IKE Profile отвечает за первый этап создания VPN-соединения, здесь указываются параметры туннеля IKE Phase 1. Профиль создается в разделе Network -> Network Profiles -> IKE Crypto. Необходимо указать алгоритм шифрования, хеширования, группу Диффи-Хеллмана и срок жизни ключей. В общем случае, чем сложнее алгоритмы, тем хуже производительность, их нужно выбирать исходя из конкретных требований к безопасности. Однако, категорически не рекомендуется применять группу Диффи-Хеллмана ниже 14 для защиты важной информации. Это связано с уязвимостью протокола, нивелировать которую можно только использовав размер модулей 2048 бит и выше, либо алгоритмы эллиптической криптографии, которые применяются в группах 19, 20, 21, 24. Эти алгоритмы обладают большей производительностью по сравнению с традиционной криптографией. Подробнее здесь. И здесь.
![image](https://habrastorage.org/getpro/habr/post_images/3ff/18a/d04/3ff18ad0457e792f86045d8b42534e39.png)
• Настройка IPSec Profile
Второй этап создания VPN соединения — IPSec туннель. Параметры SA для него настраиваются в Network -> Network Profiles -> IPSec Crypto Profile. Здесь нужно указать протокол IPSec — AH либо ESP, а также параметры SA — алгоритмы хеширования, шифрования, группы Диффи-Хеллмана и срок жизни ключей. Параметры SA в IKE Crypto Profile и IPSec Crypto Profile могут не совпадать.
![image](https://habrastorage.org/getpro/habr/post_images/b38/5e2/30c/b385e230c1548d0c65f6b8d7ead35b29.png)
• Настройка IKE Gateway
IKE Gateway — это объект, обозначающий маршрутизатор или межсетевой экран, с которым простраивается VPN туннель. Для каждого туннеля нужно создать свой IKE Gateway. В данном случае, создается два туннеля, по одному через каждого интернет-провайдера. Указывается соответствующий исходящий интерфейс и его ip-адрес, ip-адрес пира, и общий ключ. В качестве альтернативы общему ключу можно использовать сертификаты.
![image](https://habrastorage.org/getpro/habr/post_images/a56/251/b36/a56251b36a69840ec730e50568e690e8.png)
Здесь указывается ранее созданный IKE Crypto Profile. Параметры второго объекта IKE Gateway аналогичны, за исключением IP-адресов. Если межсетевой экран Palo Alto Networks расположен за NAT маршрутизатором, то нужно включить механизм NAT Traversal.
![image](https://habrastorage.org/getpro/habr/post_images/23b/3cc/da8/23b3ccda8c845371f4bd4e7efd41a7ea.png)
• Настройка IPSec Tunnel
IPSec Tunnel — это объект, в котором указываются параметры IPSec туннеля, как следует из названия. Здесь нужно указать туннельный интерфейс и ранее созданные объекты IKE Gateway, IPSec Crypto Profile. Для обеспечения автоматического переключения маршрутизации на резервный туннель нужно включить Tunnel Monitor. Это механизм, который проверяет, жив ли пир, при помощи ICMP трафика. В качестве адреса назначения нужно указать IP-адрес туннельного интерфейса пира, с которым строится туннель. В профиле указываются таймеры и действие при потере связи. Wait Recover – ждать, пока связь восстановится, Fail Over — отправить трафик по другому маршруту, если такой имеется. Настройка второго туннеля полностью аналогична, указывается второй туннельный интерфейс и IKE Gateway.
![image](https://habrastorage.org/getpro/habr/post_images/fdb/29c/f75/fdb29cf75864f4fcf0ca5ec1d7459dc4.png)
![image](https://habrastorage.org/getpro/habr/post_images/96c/330/1cb/96c3301cb47e3dcbb449f5174227532a.png)
• Настройка маршрутизации
В данном примере используется статическая маршрутизация. На межсетевом экране PA-1 нужно, помимо двух дефолтных маршрутов, указать два маршрута до подсети 10.10.10.0/24 в филиале. Один маршрут использует Tunnel-1, другой Tunnel-2. Маршрут через Tunnel-1 является основным, поскольку имеет меньшую метрику. Механизм Path Monitoring для этих маршрутов не используется. За переключение отвечает Tunnel Monitor.
![image](https://habrastorage.org/getpro/habr/post_images/f94/b4f/3ed/f94b4f3ed8ce6c2d44af95ebfaf3c1b1.png)
Такие же маршруты для подсети 192.168.30.0/24 нужно настроить на PA-2.
![image](https://habrastorage.org/getpro/habr/post_images/bdd/a93/ffb/bdda93ffb9dc17d0765d7e6cf78515ad.png)
• Настройка сетевых правил
Для работы туннеля нужно три правила:
- Для работы Path Monitor разрешить ICMP на внешних интерфейсах.
- Для IPSec разрешить приложения ike и ipsec на внешних интерфейсах.
- Разрешить трафик между внутренними подсетями и туннельными интерфейсами.
![image](https://habrastorage.org/getpro/habr/post_images/157/271/34a/15727134adc31c0260c32ef6c2768248.png)
Заключение
В данной статье рассмотрен вариант настройки отказоустойчивого интернет-соединения и Site-to-Site VPN. Надеемся, информация была полезной, и читатель получил представление о технологиях, используемых в Palo Alto Networks. Если у вас есть вопросы по настройке и пожелания по темам будущих статей — пишите их в комментариях, будем рады ответить.