Построение отказоустойчивого решения на базе протокола VRRP

Скачать в формате PDF

Введение

Данный сценарий содержит пример настойки отказоустойчивого кластера из криптомаршрутизаторов ESR-ST (далее ESR-ST).

Так же сценарий описывает настройку безопасного взаимодействия между защищаемыми подсетями центрального офиса и филиала. Обеспечение безопасного взаимодействия достигается путем шифрования и туннелирования трафика с применением отечественных отраслевых стандартов ГОСТ и протокола IPsec.

Предварительные требования

Требования к квалификации оператора

Оператор (или администратор) должен обладать обширными знаниями в области сетевой информационной безопасности, иметь опыт работы с аналогичным оборудованием, знать и понимать следующие технологии и протоколы: PKI, IPsec, NAT, Firewall, routing.

Оператор должен быть ознакомлен с документами:

·         Консоли управления в ESR-ST;

·         Процедура инициализации ESR-ST;

·         Сетевые интерфейсы в ESR-ST;

·         Порядок обработки пакетов в сетевых подсистемах ESR-ST;

·         Обеспечение безопасного взаимодействия между защищаемыми подсетями центрального офиса и филиала путем шифрования трафика. Site-to-site IPsec (ГОСТ) VPN.

Требования к инфраструктуре

К представленной схеме взаимодействия (см. рисунок 1) предъявляются следующие предварительные требования:

1.    Криптомаршрутизаторы Hub-n1, Hub-n2 и Spoke должны быть инициализированы (см. документ «Процедура инициализации ESR-ST»).

2.    Обеспеченность связностью на уровне IP между маршрутизаторами Spoke_ISP, Hub_ISP и HTTP-сервером CRL_distribution_point.

3.    Подготовленный к выпуску цифровых сертификатов корневой удостоверяющий центр (далее УЦ) Certification_authority.

Для выпуска цифровых сертификатов допускается использование встроенного в OC Windows Server 2008R2 (или новее) удостоверяющего центра совместно с СКЗИ «КриптоПро» CSP 4.0 (или новее).

В данном сценарии будет использоваться тестовый УЦ от «КриптоПро» (веб-интерфейс: https://www.cryptopro.ru/certsrv/certrqxt.asp).

Категорически запрещено использование тестового УЦ от «КриптоПро» в производственной (боевой) эксплуатации, так как в данном случае отсутствует возможность контролировать процесс выпуска сертификатов и, соответственно, процедуру аутентификации.

4.    Функционирующий HTTP-сервер, устройство CRL_distribution_point, для распространения списка отозванных сертификатов (СОС) (если по объективным причинам использование СОС не представляется возможным, то проверку СОС можно отключить в CGW CLI).

Доставка нового списка отозванных сертификатов с удостоверяющего центра на HTTP-сервер должна происходить заблаговременно, до истечения срока действия предыдущего списка.

Схема взаимодействия

Рисунок 1. Схема взаимодействия

Общая логика работы

1.    Размещение устройств.

1.1.     В центральном офисе размещаются УЦ (Certification_authority), два криптомаршрутизатора ESR-1000-ST (Hub-n1 и Hub-n2), два коммутатора (switch-int и switch-ext) и персональный компьютер (host_behind_hub).

Два коммутатора (switch-int и switch-ext) необходимы для разделения трафика доверенного и недоверенного сегментов по разным физическим устройствам. Запрещается смешивать трафик доверенного и недоверенного сегментов на одном физическом устройстве, если оно не имеет соответствующего класса защиты.

1.2.     В филиале размещаются криптомаршрутизатор ESR-200-ST (Spoke) и персональный компьютер (host_behind_spoke).

1.3.     В неконтролируемом сегменте (синее облако на схеме) размещаются HTTP-сервер для распространения списка отозванных сертификатов (CRL_distribution_point), маршрутизаторы Spoke_ISP и Hub_ISP.

2.    Подключение к сети Интернет.

В данном сценарии для эмуляции сети Интернет используются маршрутизаторы Spoke_ISP, Hub_ISP, а также промежуточное оборудование, которое на схеме не отражено.

Подключение к сети Интернет будет считаться успешным, если из защищаемых подсетей по протоколу ICMP (или «ping») будет доступен HTTP-сервер для распространения списка отозванных сертификатов (CRL_distribution_point).

2.1.     Кластер из криптомаршрутизаторов Hub-n1 и Hub-n2 подключается к сети Интернет с помощью статической маршрутизации (маршрут по умолчанию через маршрутизатор Hub_ISP). На кластер достаточно иметь один публичный IP-адрес в недоверенном сегменте (внешняя подсеть).

2.2.     Криптомаршрутизатор Spoke подключается к сети Интернет с помощью статической маршрутизации (маршрут по умолчанию через маршрутизатор Spoke_ISP).

2.3.     На криптомаршрутизаторах Hub-n1, Hub-n2 и Spoke происходит трансляция сетевых адресов (source NAT). На Spoke трансляция выполняется в IP-адрес внешнего сетевого интерфейса (gi1/0/1), а на Hub-n1 и Hub-n2 во внешний VIP адрес.

3.    Отказоустойчивый кластер.

Криптомаршрутизаторы Hub-n1 и Hub-n2 объединяются в отказоустойчивый кластер, работающий на базе протокола VRRP в режиме Master/Backup с поддержкой virtual mac (VMAC). Криптомаршрутизаторы Hub-n1 и Hub-n2 являются нодами кластера.

Нода, находящаяся в состоянии Master, владеет VIP адресом в доверенном и недоверенном сегментах и, соответственно, обрабатывает трафик. Нода, находящаяся в состоянии Backup или Fault, не владеет VIP адресом; при переходе ноды в данные состояния добавляется маршрут по умолчанию через VIP адрес доверенного сегмента ноды, находящейся в состоянии Mаster (для цели удаленного доступа к резервной ноде через активную).

В недоверенном сегменте используется техническая подсеть 192.168.110.0/24 для обмена служебными пакетами между нодами кластера в рамках протокола VRRP. Техническая подсеть назначается на внешнем сетевом интерфейсе gi1/0/1, а внешняя подсеть для подключения к провайдеру задается в параметрах VRRP. Техническая подсеть используется для экономии публичных IP-адресов (один публичный IP-адрес на кластер вместо трех), а также для корректного функционирования кластера в целом.

Разделение на техническую и внешнюю подсети в недоверенном сегменте строго обязательно.

Кластер обрабатывает следующие типы отказов:

·         отключение питания;

·         выход из строя аппаратной платформы;

·         отказ сетевого порта на аппаратной платформе;

·         отказ сетевого порта на коммутационном оборудовании.

Среднее время переключения составляет 15 секунд.

4.    Параметры безопасного взаимодействия.

Весь IP-трафик между подсетями кластера и Spoke (192.168.1.0/24 и 192.168.20.0/24) защищается с использованием алгоритмов ГОСТ и протокола IPsec в туннельном режиме.

Инициировать защищенное соединение может как трафик из подсети 192.168.1.0/24 в 192.168.20.0/24 (из филиала в центр), так и наоборот, из центра в филиал.

4.1.     Параметры протокола IKE:

·         Аутентификация при помощи цифровых сертификатов, алгоритм подписи – ГОСТ R 34.10-2001;

·         Алгоритм шифрования – ГОСТ 28147-89 (ключ 256 бит);

·         Алгоритм вычисления хеш-функции – ГОСТ R 34.11-2012 TC26 (ключ 256 бит);

·         Алгоритм выработки общего ключа (аналог алгоритма Диффи-Хеллмана) – VKO2 ГОСТ R 34.10-2012 (ключ 256 бит).

4.2.     Параметры протокола ESP:

·         Комбинированный алгоритм шифрования и контроля целостности – ESP_GOST-4M-IMIT (ключ 256 бит).


 

Настройка стенда

Настройка host_behind_hub

1.    Настройте IP-адрес – 192.168.20.100 и маску – 255.255.255.0 на сетевом интерфейсе.

2.    Задайте маршрут по умолчанию через 192.168.20.1.

3.    Разрешите прием входящих ICMP пакетов.

Настройка криптомаршрутизатора Hub-n1

В данном сценарии настройка будет происходить локально при помощи консольного подключения.

Настройка может осуществляться и удаленно (по SSH), но исключительно по доверенному каналу связи. Доверенным каналом связи может считаться канал в пределах контролируемой зоны в случае отсутствия в нем нарушителя (в нашем примере это подсеть 192.168.20.0/24 для центрального офиса и подсеть 192.168.1.0/24 для филиала). Доверенным каналом связи также считается канал, защищенный при помощи протокола IPsec (например, после настройки шифрования между подсетями 192.168.1.0/24 и 192.168.20.0/24 разрешается выполнять настройку критомаршрутизатора Spoke из подсети 192.168.20.0/24 центрального офиса).

Настройка сетевого взаимодействия и прочих параметров в ESR CLI

1.    Войдите в CLI разграничения доступа. Для этого, после появления сообщения:

S-Terra administrative console

введите логин и пароль для CLI разграничения доступа:

Пользователь и пароль по умолчанию: administrator, s-terra. Обязательно смените пароль для пользователя administrator при помощи команды change user password.

login as: administrator

administrator's password:

administrator@esr-1000]

2.    Отключите автоматическое закрытие сессии CLI разграничения доступа по неактивности:

administrator@esr-1000] session idle timeout disable

В производственной эксплуатации выполнять данную команду запрещено.

Изменение паролей для пользователей admin и cscons

Пользователь admin является главным администратором (уровень привилегий 15) для консоли ESR CLI. Пользователь cscons является администратором (уровень привилегий 15) для консоли CGW CLI.

Для пользователей консоли CGW CLI существует по факту только два уровня привилегий – 1 и 15, поэтому разделения на главных и не главных администраторов нет (пользователь с уровнем 1 не может выполнять никаких административных действий без ввода enable пароля).

1.    Перейдите в ESR CLI, введя логин и пароль для ESR CLI:

Пользователь и пароль по умолчанию: admin, password.Обязательно смените пароль для пользователей admin и  cscons. Под данными пользователями также осуществляется удаленное управление (по SSH) криптомаршрутизатором ESR-ST.

administrator@esr-1000] configure

esr-1000 login: admin

Password:

 

********************************************

*            Welcome to ESR-1000           *

********************************************

 

Welcome to ESR-1000 on Wed Feb 15 06:13:41 GMT 2017

esr:esr-1000#

1.1.     Смените пароль для пользователя admin:

esr:esr-1000# configure

esr:esr-1000(config)# username admin

esr:esr-1000(config-user)# password <пароль>

esr:esr-1000(config-user)# exit

1.2.     Смените пароль для пользователя cscons:

esr:esr-1000(config)# username cscons

esr:esr-1000(config-user)# password <пароль>

esr:esr-1000(config-user)# end

1.3.     Примените настройки:

esr:esr-1000# commit

2017-02-15T06:36:41+00:00 %CLI-I-CRIT: user admin from console  input: commit

Configuration has been successfully committed

esr:esr-1000# confirm

2017-02-15T06:36:50+00:00 %CLI-I-CRIT: user admin from console  input: confirm

Configuration has been successfully confirmed

Настройка даты в времени

Дата и время на всех криптомаршрутизаторах и УЦ должны быть одинаковы, так как для аутентификации используются цифровые сертификаты, в которых зафиксированы дата и время начала их действия и окончания. Также одинаковые дата и время на всей инфраструктуре облегчают поиск неисправностей по лог-файлам.

Выполните следующую команду для настройки даты и времени:

esr:esr-1000# set date 10:09:00 15 February 2017

Wednesday 10:09:00 GMT February 15 2017

Установка даты и времени применяется автоматически, команды commit и confirm выполнять не нужно.

Для просмотра текущих значений даты и времени воспользуйтесь командой show date.

ESR CLI также позволяет настроить синхронизацию времени по NTP и выставить смещения (GMT).

Настройка имени устройства, сетевых параметров и кластера

1.    Задайте имя устройства:

esr:esr-1000# configure

esr:esr-1000(config)# hostname hub-n1

2.    Задайте IP-адрес из технической подсети на внешнем интерфейсе gi1/0/1 (см. схему взаимодействия):

esr:esr-1000(config)# interface gigabitethernet 1/0/1

esr:esr-1000(config-if-gi)# no shutdown

esr:esr-1000(config-if-gi)# ip address 192.168.110.10/24

esr:esr-1000(config-if-gi)# exit

3.    Задайте IP-адрес из защищаемой подсети на внутреннем интерфейсе gi1/0/3:

esr:esr-1000(config)# interface gigabitethernet 1/0/3

esr:esr-1000(config-if-gi)# no shutdown

esr:esr-1000(config-if-gi)# ip address 192.168.20.10/24

esr:esr-1000(config-if-gi)# exit

4.    Настройка параметров кластера.

4.1.     Задайте настройки VRRP для внешнего интерфейса gi1/0/1:

esr:esr-1000(config)# interface gigabitethernet 1/0/1

esr:esr-1000(config-if-gi)# vrrp id 1

esr:esr-1000(config-if-gi)# vrrp ip 172.16.15.2/24

esr:esr-1000(config-if-gi)# vrrp group 1

esr:esr-1000(config-if-gi)# vrrp

esr:esr-1000(config-if-gi)# exit

4.2.     Задайте настройки VRRP для внутреннего интерфейса gi1/0/3:

esr:esr-1000(config)# interface gigabitethernet 1/0/3

esr:esr-1000(config-if-gi)# vrrp id 2

esr:esr-1000(config-if-gi)# vrrp ip 192.168.20.1/24

esr:esr-1000(config-if-gi)# vrrp group 1

esr:esr-1000(config-if-gi)# vrrp

esr:esr-1000(config-if-gi)# exit

Значение параметра vrrp id должно быть: 

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

- одинаковым на тех интерфейса кластера, которые имеют один и тот же VIP адрес (например, для интерфейса gi1/0/1 ноды Hub-n2 значение vrrp id также должно быть равно 1, а для gi1/0/3 - 2).

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

4.3.     Задайте tracking объект, отслеживающий состояние кластера:

esr:esr-1000(config)# tracking 1

esr:esr-1000(config-tracking)# vrrp 1 no state master

esr:esr-1000(config-tracking)# vrrp 2 no state master

esr:esr-1000(config-tracking)# enable

esr:esr-1000(config-tracking)# exit

Tracking объект 1 примет значение true, если кластер перейдет в состояния Fault или Backup. На основе значения данного tracking объекта будет добавляться маршрут по умолчанию через ноду, находящуюся в состоянии Master.

5.    Добавьте основной маршрут по умолчанию через маршрутизатор Hub_ISP (данный маршрут будет активен, если нода находится в состоянии Master) и дополнительный маршрут по умолчанию через VIP адрес внутренней подсети (этот маршрут добавляется в том случае, если нода имеет состояние Fault или Backup), после чего примените настройки:

esr:esr-1000(config)# ip route 0.0.0.0/0 172.16.15.1

esr:esr-1000(config)# ip route 0.0.0.0/0 192.168.20.1 1 track 1

esr:esr-1000(config)# end

esr:esr-1000# commit

2017-12-01T10:42:10+00:00 %CLI-I-CRIT: user admin from console  input: commit

Setting hostname to 'hub-n1'...done.

2017-12-01T10:42:14+00:00 %LINK-ENABLE: port gigabitethernet 1/0/1 disabled

2017-12-01T10:42:14+00:00 %PORT-CFG: port gigabitethernet 1/0/1: setting speed=auto, flowctl=off

2017-12-01T10:42:14+00:00 %LINK-ENABLE: port gigabitethernet 1/0/1 enabled

2017-12-01T10:42:14+00:00 %LINK-ENABLE: port gigabitethernet 1/0/3 disabled

2017-12-01T10:42:14+00:00 %PORT-CFG: port gigabitethernet 1/0/3: setting speed=auto, flowctl=off

2017-12-01T10:42:14+00:00 %LINK-ENABLE: port gigabitethernet 1/0/3 enabled

2017-12-01T10:42:17+00:00 %LINK-I-UP: gigabitethernet 1/0/3 changed state to up, speed 1000M, full-duplex

2017-12-01T10:42:17+00:00 %LINK-I-UP: gigabitethernet 1/0/1 changed state to up, speed 1000M, full-duplex

2017-12-01T10:42:21+00:00 %VRRP-I-INSTANCE: VRRP1 Entering BACKUP state

Configuration has been successfully committed

esr:hub-n1# confirm

2017-12-01T10:42:22+00:00 %CLI-I-CRIT: user admin from console  input: confirm

Configuration has been successfully confirmed

esr:hub-n1# 2017-12-01T10:42:24+00:00 %VRRP-I-INSTANCE: VRRP2 Transition to MASTER state

2017-12-01T10:42:24+00:00 %VRRP-I-GROUP: GROUP1 Syncing instances to MASTER state

2017-12-01T10:42:25+00:00 %VRRP-I-INSTANCE: VRRP1 Entering MASTER state

2017-12-01T10:42:25+00:00 %VRRP-I-INSTANCE: VRRP2 Entering MASTER state

6.    Убедитесь, что настройки сети и кластера выполнены верно. Для этого:

6.1.     Подключите внешний интерфейс gi1/0/1 криптомаршрутизатора Hub-n1 к коммутатору Switch-ext, а интерфейс коммутатора к маршрутизатору Hub_ISP.

Интерфейсы коммутатора Switch-ext, к которым подключаются ноды кластера и маршрутизатор Hub_ISP, должны быть в одном VLAN.

6.2.     Подключите персональный компьютер host_behind_hub к коммутатору Switch-int, а интерфейс коммутатора к внутреннему интерфейсу gi1/0/3 криптомаршрутизатора Hub-n1.

Интерфейсы коммутатора Switch-int, к которым подключаются ноды кластера и персональный компьютер host_behind_hub, должны быть в одном VLAN.

После коммутации выполните последовательно следующие команды ping c устройства Hub-n1 (если выполнить команду ping с Hub_ISP или host_behind_hub с адресом назначения Hub-n1, то Hub-n1 будет недоступен из-за предустановленных настроек в Eltex FW):

В производственной эксплуатации подключать криптомаршрутизтор к недоверенным сетям до настройки политики безопасности (СКЗИ и МЭ) запрещено.

6.3.     Выполните команду ping с Hub-n1 на host_behind_hub:

esr:hub-n1# ping 192.168.20.100 packets 4

PING 192.168.20.100 (192.168.20.100) 56(84) bytes of data.

!!!!

--- 192.168.20.100 ping statistics ---

4 packets transmitted, 4 received, 0% packet loss, time 2998ms

rtt min/avg/max/mdev = 0.271/0.278/0.287/0.017 ms

6.4.     Выполните команду ping с Hub-n1 на Hub_ISP:

esr:hub-n1# ping 172.16.15.1 packets 4

PING 172.16.15.1 (172.16.15.1) 56(84) bytes of data.

!!!!

--- 172.16.15.1 ping statistics ---

4 packets transmitted, 4 received, 0% packet loss, time 2998ms

rtt min/avg/max/mdev = 0.287/0.364/0.452/0.060 ms

6.5.     Выполните команду ping с Hub-n1 на CRL_distribution_point:

esr:hub-n1# ping 172.17.10.100 packets 4

PING 172.17.10.100 (172.17.10.100) 56(84) bytes of data.

!!!!

--- 172.17.10.100 ping statistics ---

4 packets transmitted, 4 received, 0% packet loss, time 3002ms

rtt min/avg/max/mdev = 0.841/0.949/1.006/0.067 ms

Видно, что устройства в защищаемой и недоверенной сетях доступны по ICMP. Если устройства недоступны – проверьте настройки и сетевые кабели, также в CLI разграничения доступа выполните команду run csconf_mgr activate, в том случае, если она не была выполнена ранее.

Настройка межсетевого экрана Eltex FW

Eltex FW – это межсетевой экран с контролем состояния сессии (stateful) и поддержкой зон безопасности (zone-based). Политика по умолчанию разрешает все исходящие локальные соединения, а входящие только в рамках исходящих.

1.    Создайте две зоны безопасности, одну для защищаемой подсети (trusted), другую для недоверенной (untusted):

esr:hub-n1# configure

esr:hub-n1(config)# security zone trusted

esr:hub-n1(config-zone)# exit

esr:hub-n1(config)# security zone untrusted

esr:hub-n1(config-zone)# exit

2.    Добавьте сетевые интерфейсы в созданные зоны безопасности:

2.1.     Внешний интерфейс gigabitethernet 1/0/1 добавьте в зону untrusted:

esr:hub-n1(config)# interface gigabitethernet 1/0/1

esr:hub-n1(config-if-gi)# security-zone untrusted

esr:hub-n1(config-if-gi)# exit

2.2.     Внутренний интерфейс gigabitethernet 1/0/3 добавьте в зону trusted:

esr:hub-n1(config)# interface gigabitethernet 1/0/3

esr:hub-n1(config-if-gi)# security-zone trusted

esr:hub-n1(config-if-gi)# exit

3.    Создайте объекты, описывающие порты протоколов, для дальнейшего их использования в правилах фильтрации, разрешающих входящий на Hub-n1 трафик.

3.1.     Для протокола SSH:

esr:hub-n1(config)# object-group service SSH

esr:hub-n1(config-object-group-service)# port-range 22

esr:hub-n1(config-object-group-service)# exit

3.2.     Для протоколов IKE и NAT-T (IPsec over UDP):

esr:hub-n1(config)# object-group service IKE500

esr:hub-n1(config-object-group-service)# port-range 500

esr:hub-n1(config-object-group-service)# exit

esr:hub-n1(config)# object-group service IKE4500

esr:hub-n1(config-object-group-service)# port-range 4500

esr:hub-n1(config-object-group-service)# exit

esr:hub-n1(config)#

4.    Настройте правила фильтрации между зонами безопасности.

4.1.     Разрешите любой транзитный трафик из доверенной зоны/сети в недоверенную, то есть с внутреннего интерфейса gi1/0/3 на внешний gi1/0/1 (trusted untrusted):

esr:hub-n1(config)# security zone-pair trusted untrusted

esr:hub-n1(config-zone-pair)# rule 10

esr:hub-n1(config-zone-pair-rule)# action permit

esr:hub-n1(config-zone-pair-rule)# match protocol any

esr:hub-n1(config-zone-pair-rule)# match source-address any

esr:hub-n1(config-zone-pair-rule)# match destination-address any

esr:hub-n1(config-zone-pair-rule)# enable

esr:hub-n1(config-zone-pair-rule)# exit

esr:hub-n1(config-zone-pair)# exit

Трафик, который необходимо шифровать из доверенной сети, будет определяться списками доступа СКЗИ в CGW CLI.

4.2.     Разрешите любой транзитный трафик между сетевыми интерфейсами доверенной зоны/сети (trusted trusted):

esr:hub-n1(config)# security zone-pair trusted trusted

esr:hub-n1(config-zone-pair)# rule 10

esr:hub-n1(config-zone-pair-rule)# action permit

esr:hub-n1(config-zone-pair-rule)# match protocol any

esr:hub-n1(config-zone-pair-rule)# match source-address any

esr:hub-n1(config-zone-pair-rule)# match destination-address any

esr:hub-n1(config-zone-pair-rule)# enable

esr:hub-n1(config-zone-pair-rule)# exit

esr:hub-n1(config-zone-pair)# exit

esr:hub-n1(config)#

4.3.     Разрешите прохождение транзитного расшифрованного трафика из недоверенной зоны/сети в доверенную, то есть с внешнего сетевого интерфейса gi1/0/1 на gi1/0/3 (untrusted trusted):

esr:hub-n1(config)# security zone-pair untrusted trusted

esr:hub-n1(config-zone-pair)# rule 10

esr:hub-n1(config-zone-pair-rule)# action permit

esr:hub-n1(config-zone-pair-rule)# match protocol any

esr:hub-n1(config-zone-pair-rule)# match source-address any

esr:hub-n1(config-zone-pair-rule)# match destination-address any

esr:hub-n1(config-zone-pair-rule)# match ipsec-decrypted

esr:hub-n1(config-zone-pair-rule)# enable

esr:hub-n1(config-zone-pair-rule)# exit

esr:hub-n1(config-zone-pair)# exit

4.4.     Разрешите подключение по протоколу SSH из доверенной зоны/сети к Hub-n1 (trusted self):

esr:hub-n1(config)# security zone-pair trusted self

esr:hub-n1(config-zone-pair)# rule 10

esr:hub-n1(config-zone-pair-rule)# action permit

esr:hub-n1(config-zone-pair-rule)# match protocol tcp

esr:hub-n1(config-zone-pair-rule)# match source-address any

esr:hub-n1(config-zone-pair-rule)# match destination-address any

esr:hub-n1(config-zone-pair-rule)# match source-port any

esr:hub-n1(config-zone-pair-rule)# match destination-port SSH

esr:hub-n1(config-zone-pair-rule)# enable

esr:hub-n1(config-zone-pair-rule)# exit

esr:hub-n1(config-zone-pair)#

4.5.     Разрешите пакеты протокола ICMP из доверенной зоны/сети к Hub-n1 (trusted self):

esr:hub-n1(config-zone-pair)# rule 20

esr:hub-n1(config-zone-pair-rule)# action permit

esr:hub-n1(config-zone-pair-rule)# match protocol icmp

esr:hub-n1(config-zone-pair-rule)# match source-address any

esr:hub-n1(config-zone-pair-rule)# match destination-address any

esr:hub-n1(config-zone-pair-rule)# enable

esr:hub-n1(config-zone-pair-rule)# exit

esr:hub-n1(config-zone-pair)#

4.6.     Разрешите пакеты протокола VRRP из доверенной зоны/сети к Hub-n1 (trusted self):

esr:hub-n1(config-zone-pair)# rule 30

esr:hub-n1(config-zone-pair-rule)# action permit

esr:hub-n1(config-zone-pair-rule)# match protocol vrrp

esr:hub-n1(config-zone-pair-rule)# match source-address any

esr:hub-n1(config-zone-pair-rule)# match destination-address any

esr:hub-n1(config-zone-pair-rule)# enable

esr:hub-n1(config-zone-pair-rule)# exit

esr:hub-n1(config-zone-pair)# exit

4.7.     Разрешите пакеты протокола ICMP из недоверенной зоны/сети к Hub-n1 (untrusted self):

esr:hub-n1(config)# security zone-pair untrusted self

esr:hub-n1(config-zone-pair)# rule 10

esr:hub-n1(config-zone-pair-rule)# action permit

esr:hub-n1(config-zone-pair-rule)# match protocol icmp

esr:hub-n1(config-zone-pair-rule)# match source-address any

esr:hub-n1(config-zone-pair-rule)# match destination-address any

esr:hub-n1(config-zone-pair-rule)# enable

esr:hub-n1(config-zone-pair-rule)# exit

esr:hub-n1(config-zone-pair)#

4.8.     Разрешите прохождение расшифрованного трафика из недоверенной зоны/сети на Hub-n1 (untrusted self):

esr:hub-n1(config-zone-pair)# rule 20

esr:hub-n1(config-zone-pair-rule)# action permit

esr:hub-n1(config-zone-pair-rule)# match protocol any

esr:hub-n1(config-zone-pair-rule)# match source-address any

esr:hub-n1(config-zone-pair-rule)# match destination-address any

esr:hub-n1(config-zone-pair-rule)# match ipsec-decrypted

esr:hub-n1(config-zone-pair-rule)# enable

esr:hub-n1(config-zone-pair-rule)# exit

4.9.     Разрешите пакеты протокола IKE, NAT-T (IPsec over UDP) и VRRP из недоверенной зоны/сети на Hub-n1 (untrusted self):

esr:hub-n1(config-zone-pair)# rule 30

esr:hub-n1(config-zone-pair-rule)# action permit

esr:hub-n1(config-zone-pair-rule)# match protocol udp

esr:hub-n1(config-zone-pair-rule)# match source-address any

esr:hub-n1(config-zone-pair-rule)# match destination-address any

esr:hub-n1(config-zone-pair-rule)# match source-port any

esr:hub-n1(config-zone-pair-rule)# match destination-port IKE500

esr:hub-n1(config-zone-pair-rule)# enable

esr:hub-n1(config-zone-pair-rule)# exit

esr:hub-n1(config-zone-pair)# rule 40

esr:hub-n1(config-zone-pair-rule)# action permit

esr:hub-n1(config-zone-pair-rule)# match protocol udp

esr:hub-n1(config-zone-pair-rule)# match source-address any

esr:hub-n1(config-zone-pair-rule)# match destination-address any

esr:hub-n1(config-zone-pair-rule)# match source-port any

esr:hub-n1(config-zone-pair-rule)# match destination-port IKE4500

esr:hub-n1(config-zone-pair-rule)# enable

esr:hub-n1(config-zone-pair-rule)# exit

esr:hub-n1(config-zone-pair)# rule 50

esr:hub-n1(config-zone-pair-rule)# action permit

esr:hub-n1(config-zone-pair-rule)# match protocol vrrp

esr:hub-n1(config-zone-pair-rule)# match source-address any

esr:hub-n1(config-zone-pair-rule)# match destination-address any

esr:hub-n1(config-zone-pair-rule)# enable

esr:hub-n1(config-zone-pair-rule)# exit

esr:hub-n1(config-zone-pair)# exit

esr:hub-n1(config)#

Настройка Source NAT

1.    Создайте объекты, описывающие подсети, для дальнейшего их использования в правилах NAT.

1.1.     Для защищаемой подсети кластера:

esr:hub-n1(config)# object-group network LAN_HUB

esr:hub-n1(config-object-group-network)# ip prefix 192.168.20.0/24

esr:hub-n1(config-object-group-network)# exit

1.2.     Для защищаемой подсети Spoke:

esr:hub-n1(config)# object-group network LAN_SPOKE

esr:hub-n1(config-object-group-network)# ip prefix 192.168.1.0/24

esr:hub-n1(config-object-group-network)# exit

2.    Создайте набор правил для внешнего интерфейса gigabitethernet 1/0/1:

esr:hub-n1(config)# nat source

esr:hub-n1(config-snat)# ruleset SNAT_ON_GI101

esr:hub-n1(config-snat-ruleset)# to interface gigabitethernet 1/0/1

2.1.     Отключите Source NAT для локальных пакетов IKE от CGW:

esr:hub-n1(config-snat-ruleset)# rule 10

esr:hub-n1(config-snat-rule)# description "disable SNAT for local IKE pack

ets"

esr:hub-n1(config-snat-rule)# match source-address any

esr:hub-n1(config-snat-rule)# match destination-address any

esr:hub-n1(config-snat-rule)# match ike-local

esr:hub-n1(config-snat-rule)# action source-nat off

esr:hub-n1(config-snat-rule)# enable

esr:hub-n1(config-snat-rule)# exit

esr:hub-n1(config-snat-ruleset)#

Если оставить функцию Source NAT включенной для локальных пакетов IKE, то может произойти замена стандартного порта 500/4500 на произвольный в диапазоне от 1024 до 65535.

Выполнение функций Source NAT на других транзитных устройствах разрешается и поддерживается (NAT-T).

2.2.     Отключите Source NAT для защищаемого трафика из подсети 192.168.20.0/24 в подсеть 192.168.1.0/24:

esr:hub-n1(config-snat-ruleset)# rule 20

esr:hub-n1(config-snat-rule)# description "disable SNAT for traffic which must

 be protected by IPSEC"

esr:hub-n1(config-snat-rule)# match protocol any

esr:hub-n1(config-snat-rule)# match source-address LAN_HUB

esr:hub-n1(config-snat-rule)# match destination-address LAN_SPOKE

esr:hub-n1(config-snat-rule)# action source-nat off

esr:hub-n1(config-snat-rule)# enable

esr:hub-n1(config-snat-rule)# exit

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

2.3.     Отключите Source NAT для локальных VRRP пакетов:

esr:hub-n1(config-snat-ruleset)# rule 30

esr:hub-n1(config-snat-rule)# description "disable SNAT for local VRRP packets

"

esr:hub-n1(config-snat-rule)# match protocol vrrp

esr:hub-n1(config-snat-rule)# match source-address any

esr:hub-n1(config-snat-rule)# match destination-address any

esr:hub-n1(config-snat-rule)# action source-nat off

esr:hub-n1(config-snat-rule)# enable

esr:hub-n1(config-snat-rule)# exit

2.4.     Включите Source NAT для всего оставшегося трафика, указав VIP адрес внешней подсети в качестве подменяемого IP-адреса:

esr:hub-n1(config-snat-ruleset)# rule 40

esr:hub-n1(config-snat-rule)# description "enable dynamic SNAT for traffic

 to Internet"

esr:hub-n1(config-snat-rule)# match protocol any

esr:hub-n1(config-snat-rule)# match source-address any

esr:hub-n1(config-snat-rule)# match destination-address any

esr:hub-n1(config-snat-rule)# action source-nat netmap 172.16.15.2/32

esr:hub-n1(config-snat-rule)# enable

esr:hub-n1(config-snat-rule)# exit

esr:hub-n1(config-snat-ruleset)# exit

esr:hub-n1(config-snat)# exit

Включение SSH-сервера и сохранение настроек

1.    Включите SSH-сервер:

esr:hub-n1(config)# ip ssh server

2.    Сохраните настройки и выйдите в CLI разграничения доступа:

esr:hub-n1(config)# do commit

2017-12-01T13:24:05+00:00 %CLI-I-CRIT: user admin from console  input: do commit

2017-12-01T13:24:16+00:00 %VRRP-I-INSTANCE: VRRP1 Entering BACKUP state

Configuration has been successfully committed

esr:hub-n1(config)# do confirm

2017-12-01T13:24:17+00:00 %CLI-I-CRIT: user admin from console  input: do confirm

Configuration has been successfully confirmed

2017-12-01T13:24:20+00:00 %VRRP-I-INSTANCE: VRRP2 Transition to MASTER state

2017-12-01T13:24:20+00:00 %VRRP-I-GROUP: GROUP1 Syncing instances to MASTER state

2017-12-01T13:24:21+00:00 %VRRP-I-INSTANCE: VRRP1 Entering MASTER state

2017-12-01T13:24:21+00:00 %VRRP-I-INSTANCE: VRRP2 Entering MASTER state

esr:hub-n1(config)# end

esr:hub-n1# logout

administrator@hub-n1]

После того как был включен SSH-сервер к устройству можно подключаться по SSH. Чтобы попасть в консоль ESR CLI при подключении к Hub-n1 нужно указывать имя пользователя admin, а для консоли CGW CLI – cscons. Удаленно напрямую в CLI разграничения доступа войти нельзя.

Настройки в консоли ESR CLI завершены. Конфигурация устройства Hub-n1 приведена в Приложении.

Настройки PKI в CLI разграничения доступа

Для аутентификации партнеров по IPsec можно использовать только цифровые сертификаты, выпущенные при помощи сертифицированного СКЗИ.

Аутентификация по предопределенным ключам запрещена и возможна только в тестовых целях.

Закрытый ключ для сертификата устройства Hub-n1 будет сгенерирован при помощи утилиты cert_mgr с использованием биологического датчика случайных чисел (БИО ДСЧ). Закрытый ключ может храниться либо на файловой системе устройства, либо на защищенном ключевом носителе (токен). В данном сценарии закрытый ключ будет располагаться в специальном контейнере на файловой системе устройства Hub-n1.

В момент генерации ключевой пары будет также сгенерирован запрос на сертификат устройства Hub-n1. Данный запрос для его последующей доставки на УЦ будет сохранен на USB-flash накопитель.

USB-flash накопитель должен содержать файловую систему FAT32. NTFS может использоваться только на чтение, запись на USB-flash накопитель с файловой системой NTFS невозможна.

Генерация ключевой пары и запроса на сертификат устройства Hub-n1

1.    Вставьте USB-flash накопитель в свободный USB порт устройства Hub-n1 (см. рисунок 2).

Рисунок 2. USB-flash накопитель, установленный в USB порт ESR-ST

На экране появятся следующие сообщения, которые свидетельствуют о нормальной работе USB-flash накопителя:

2017-03-30T09:17:21+00:00 %SYSTEM-E-KERNEL: [66075.864000] sd 0:0:0:0: [sda] No Caching mode page found

2017-03-30T09:17:21+00:00 %SYSTEM-E-KERNEL: [66075.864000] sd 0:0:0:0: [sda] Assuming drive cache: write through

2017-03-30T09:17:21+00:00 %SYSTEM-E-KERNEL: [66075.872000] sd 0:0:0:0: [sda] No Caching mode page found

2017-03-30T09:17:21+00:00 %SYSTEM-E-KERNEL: [66075.872000] sd 0:0:0:0: [sda] Assuming drive cache: write through

2017-03-30T09:17:21+00:00 %SYSTEM-E-KERNEL: [66075.880000] sd 0:0:0:0: [sda] No Caching mode page found

2017-03-30T09:17:21+00:00 %SYSTEM-E-KERNEL: [66075.880000] sd 0:0:0:0: [sda] Assuming drive cache: write through

2017-03-30T09:17:21+00:00 %USBFLASH-I-CHANGE: 'S-TERRA' has been inserted!

2017-03-30T09:17:21+00:00 %SYSTEM-W-KERNEL: [66076.060000] FAT-fs (sda1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.

2.    Определите имя USB-flash накопителя:

administrator@hub-n1] dir media:

    1  drwx         2048  Thu Jan  1 00:00:00 1970  S-TERRA

В данном сценарии USB-flash накопитель имеет имя S-TERRA.

3.    Запустите процесс генерации ключевой пары и запроса на сертификат устройства с сохранением файла запроса на USB-flash накопителе:

administrator@hub-n1] run cert_mgr create -subj "C=RU,O=S-Terra CSP,OU=Research,CN=Hub-n1" -GOST_R341012_256 -fb64 media:S-TERRA/hub-n1.request

·         ключ –subj задает отличительное имя (Distinguished Name, DN) сертификата.

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

·         ключ -GOST_R341012_256 задает использование алгоритма открытого ключа, в данном сценарии используется алгоритм ГОСТ R 34.10-2012-256.

На УЦ для поддержки алгоритма ГОСТ R 34.10-2012-256 должно быть установлено СКЗИ «КриптоПро CSP» версии 4.0 или новее.

·         ключ -fb64 задает месторасположение и формат представления запроса на сертификат, в данном сценарии будет использован формат представления BASE64 с сохранением файла запроса в корень USB-flash накопителя под именем hub-n1.request.

3.1.     Нажимайте предлагаемые клавиши на клавиатуре:

Progress: [********* ]

Press key: U

После завершения работы БИО ДСЧ файл запроса будет сохранен в корне USB-flash накопителя:

administrator@hub-n1] dir media:S-TERRA/

    1  drwx         2048  Thu Jun 16 11:10:44 2016  System Volume Information

    2  -rwx          473  Thu Mar 30 09:37:43 2017  hub-n1.request

4.    Извлеките USB-flash накопитель.

5.    Доставьте файл запроса на УЦ и выпустите по нему сертификат (см. рисунок 3).

Рисунок 3. Пример выпуска сертификата при помощи тестового УЦ от «КриптоПро». Отправка запроса

6.    Скопируйте выпущенный сертификат для Hub-n1 под именем hub-n1.cer и сертификат УЦ под именем ca.cer (для тестового УЦ от «КриптоПро» данный сертификат можно загрузить по ссылке https://www.cryptopro.ru/certsrv/certcarc.asp, см. рисунок 4) в корень USB-flash накопителя (см. рисунок 5).

Рисунок 4. Страница загрузки сертификата УЦ (ЦС) для тестового УЦ от «КриптоПро»

 

Рисунок 5. Сертификаты УЦ и устройства Hub-n1 в корне USB-flash накопителя

7.    Вновь вставьте USB-flash накопитель, содержащий файлы сертификатов, в соответствующий порт USB на устройстве Hub-n1.

8.    Убедитесь в наличии сертификатов на USB-flash накопителе:

administrator@hub] dir media:S-TERRA/

    1  drwx         2048  Thu Jun 16 11:10:44 2016  System Volume Information

    2  -rwx          592  Tue Jan 24 17:21:42 2017  ca.cer

    3  -rwx          804  Thu Mar 30 10:12:08 2017  hub-n1.cer

    4  -rwx          473  Thu Mar 30 09:37:42 2017  hub.request

9.    Импортируйте сертификат УЦ в базу продукта:

administrator@hub-n1] run cert_mgr import -f media:S-TERRA/ca.cer -t

1 OK 1.2.840.113549.1.9.1=support@cryptopro.ru,C=RU,L=Moscow,O=CRYPTO-PRO LLC,CN=CRYPTO-PRO Test Center 2

·         ключ –f задает месторасположение файла сертификата.

·         ключ –t используется для импортирования доверенного (trusted) сертификата УЦ.

10.  Импортируйте сертификат устройства Hub-n1 в базу продукта:

administrator@hub-n1] run cert_mgr import -f media:S-TERRA/hub-n1.cer

1 OK C=RU,O=S-Terra CSP,OU=Research,CN=Hub-n1

11.  Выполните проверку статуса сертификатов в базе продукта:

administrator@hub-n1] run cert_mgr check

1 State: Inactive 1.2.840.113549.1.9.1=support@cryptopro.ru,C=RU,L=Moscow,O=CRYPTO-PRO LLC,CN=CRYPTO-PRO Test Center 2

                  Certificate can not be verified.

2 State: Inactive C=RU,O=S-Terra CSP,OU=Research,CN=Hub-n1

                  Certificate can not be verified.

Видно, что все сертификаты имеют статус Inactive (неактивный) с пометкой: «Certificate can not be verified» (сертификат не может быть проверен). Причиной этому является включенный по умолчанию в CGW CLI механизм проверки списка отозванных сертификатов (далее СОС или CRL). Так как в базе продукта данный СОС отсутствует, поэтому проверка не может быть осуществлена.

Далее, в CGW CLI, загрузка СОС и импортирование его в базу продукта будут настроены автоматически по протоколу HTTP с сервера CRL_distribution_point.

Настройки в CLI разграничения доступа завершены.

Настройка шифрования (IPsec) в CGW CLI

1.    Перейдите в CGW CLI, введя логин и пароль для CGW CLI.

Пользователь и пароль по умолчанию: cscons, password; пароль по умолчанию должен был быть изменен в соответствии с п. 1.2 раздела «Изменение паролей для пользователей admin и cscons»).

administrator@hub-n1] configure

hub-n1 login: cscons

Password:

S-Terra Gate security console

cgw:hub-n1#

2.    Выполните команду по синхронизации сетевых интерфейсов между консолями CGW CLI и ESR CLI:

cgw:hub-n1#synchronize network-interfaces

При выполнении данной команды из CGW CLI удаляются сетевые интерфейсы, на которых СКЗИ не может контролировать трафик, а для интерфейсов, на которых настроен VRRP, происходит объединение физического и виртуального VRRP интерфейсов в один для правильной обработки трафика в CGW (виртуальный VRRP интерфейс как в ESR CLI, так и в CGW CLI отдельно не виден).

При конфигурировании параметров VRRP кластера выполнение данной команды строго обязательно. Также рекомендуется всегда выполнять данную команду перед конфигурированием СКЗИ.

После синхронизации на интерфейсах gi1/1 и gi1/3 будут видны VIP адреса как secondary:

cgw:hub-n1#show running-config

...

interface GigabitEthernet1/1

 ip address 192.168.110.10 255.255.255.0

 ip address 172.16.15.2 255.255.255.0 secondary

!

interface GigabitEthernet1/3

 ip address 192.168.20.10 255.255.255.0

 ip address 192.168.20.1 255.255.255.0 secondary

...

3.    Перейдите в режим конфигурирования:

cgw:hub-n1#configure terminal

Enter configuration commands, one per line.  End with CNTL/Z.

cgw:hub-n1(config)#

4.    Задайте пароль на enable (в данном примере в качестве пароля используется слово password):

cgw:hub-n1(config)#enable secret 0 password

5.    Укажите в качестве типа идентификатора, используемого в рамках протокола IKE, отличительное имя (Distinguished Name, DN):

cgw:hub-n1(config)#crypto isakmp identity dn

По умолчанию отличительное имя будет взято из сертификата устройства, например, для Hub-n1 это «C=RU,O=S-Terra CSP,OU=Research,CN=Hub-n1».

6.    Настройте параметры DPD (deep peer detection):

cgw:hub-n1(config)#crypto isakmp keepalive 1 3

cgw:hub-n1(config)#crypto isakmp keepalive retry-count 3

Механизм DPD в случае детектирования того, что партнер по IKE не отвечает на пакеты keepalive за заданный интервал времени, удаляет неактивный IKE туннель и связанные с ним IPsec туннели.

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

cgw:hub-n1(config)#crypto isakmp session-time-max 10

8.    Создайте политику, описывающую параметры IKE туннеля:

cgw:hub-n1(config)#crypto isakmp policy 1

cgw:hub-n1(config-isakmp)#encryption gost

cgw:hub-n1(config-isakmp)# hash gost341112-256-tc26

cgw:hub-n1(config-isakmp)# authentication gost-sig

cgw:hub-n1(config-isakmp)# group vko2

Рекомендуется использовать одну политику для IKE туннелей. Несколько политик может потребоваться в том случае, если необходимо обеспечить совместимость со старыми версиями С-Терра Шлюз, в которых нет поддержки новых алгоритмов.

9.    Задайте алгоритм шифрования и контроля целостности (набор преобразований) для трафика:

cgw:hub-n1(config)#crypto ipsec transform-set GOST esp-gost28147-4m-imit

cgw:hub-n1(cfg-crypto-trans)#exit

10.  Создайте список доступа (ACL) для трафика, который нужно защищать между кластером Hub и Spoke:

cgw:hub-n1(config)#ip access-list extended hub_spoke

cgw:hub-n1(config-ext-nacl)#permit ip 192.168.20.0 0.0.0.255 192.168.1.0 0.0.0.255

cgw:hub-n1(config-ext-nacl)#exit

cgw:hub-n1(config)#

В списках доступа используется обратная маска.

11.  Создайте крипто-карту (имя VPN, раздел 1):

cgw:hub-n1(config)#crypto map VPN 1 ipsec-isakmp

11.1.   Укажите какой трафик нужно защищать:

cgw:hub-n1(config-crypto-map)#match address hub_spoke

11.2.   Укажите при помощи какого алгоритма нужно защищать трафик:

cgw:hub-n1(config-crypto-map)#set transform-set GOST

11.3.   Укажите IP-адрес партнера по IPsec, в данном сценарии это внешний IP-адрес устройства Spoke:

cgw:hub-n1(config-crypto-map)#set peer 172.16.10.2

cgw:hub-n1(config-crypto-map)#exit

cgw:hub-n1(config)#

Если партнеров по IPsec несколько, то необходимо в другом разделе данной крипто-карты (например, crypto map VPN 2 ipsec-isakmp) задать соответствующие параметры.

12.  Прикрепите крипто-карту к внешнему интерфейсу GigabitEthernet1/1:

cgw:hub-n1(config)#interface GigabitEthernet 1/1

cgw:hub-n1(config-if)#crypto map VPN

cgw:hub-n1(config-if)#exit

Интерфейс GigabitEthernet1/1 в консоли CGW CLI соответствует интерфейсу gigabitethernet 1/0/1 в консоли ESR CLI.

13.  Настройте автоматическую загрузку и импортирование в базу продукта списка отозванных сертификатов с сервера CRL_distribution_point:

cgw:hub-n1(config)#crypto pki trustpoint s-terra_technological_trustpoint

cgw:hub-n1(ca-trustpoint)#crl download group CA http://172.17.10.100/crl.crl

cgw:hub-n1(ca-trustpoint)#crl download time 60

cgw:hub-n1(ca-trustpoint)#exit

Загрузка СОС будет происходить раз в 60 минут.

Разностные списки отозванных сертификатов (delta CRL) не поддерживаются.

Если использование СОС не предполагается, то отключите их проверку:

cgw:hub-n1(config)#crypto pki trustpoint s-terra_technological_trustpoint

cgw:hub-n1(ca-trustpoint)#revocation-check none

14.  Примените настроек консоли CGW CLI:

cgw:hub-n1(config)#end

cgw:hub-n1#

Настройки CGW CLI применяются при выходе из режима конфигурирования.

Настройки в CGW CLI завершены. Конфигурация устройства Hub-n1 приведена в Приложении.

Настройка криптомаршрутизатора Hub-n2

У нод кластера должны быть разные сертификаты. Также не забудьте перед началом настроек в CGW CLI выполнить команду synchronize network-interfaces.

Нода Hub-n2 кластера настраивается аналогично ноде Hub-n1, за исключением:

1.    ESR CLI.

1.1.     Используются соответствующие IP-адреса (см. схему взаимодействия).

1.2.     Нода Hub-n2 настраивается как резервная, поэтому приоритет VRRP должен быть установлен ниже чем у ноды Hub-n1 (по умолчанию 100):

interface gigabitethernet 1/0/1

  security-zone untrusted

  ip address 192.168.110.20/24

  vrrp id 1

  vrrp ip 172.16.15.2/24

  vrrp priority 50

  vrrp group 1

  vrrp

exit

interface gigabitethernet 1/0/3

  security-zone trusted

  ip address 192.168.20.20/24

  vrrp id 2

  vrrp ip 192.168.20.1/32

  vrrp priority 50

  vrrp group 1

  vrrp

exit

Конфигурация консоли ESR CLI приведена в Приложении.

Конфигурация консоли CGW CLI приведена в Приложении.

Настройка host_behind_spoke

1.    Настройте IP-адрес – 192.168.1.100 и маску – 255.255.255.0 на сетевом интерфейсе.

2.    Задайте маршрут по умолчанию через 192.168.1.1.

3.    Разрешите прием входящих ICMP пакетов.

Настройка криптомаршрутизатора Spoke

Устройство Spoke настраивается аналогично устройствам Hub-n1/Hub-n2, за исключением настроек VRRP.

Конфигурация консоли ESR CLI приведена в Приложении.

Конфигурация консоли CGW CLI приведена в Приложении.

Проверка работоспособности стенда

Проверка доступа в Интернет из внутренней подсети кластера

Активной нодой является Hub-n1, поэтому она будет обрабатывать трафик.

1.    Выполните команду с устройства host_behind_hub:

root@host_behind_hub:~# ping 172.17.10.100 -c 4

PING 172.17.10.100 (172.17.10.100) 56(84) bytes of data.

64 bytes from 172.17.10.100: icmp_req=1 ttl=61 time=1.15 ms

64 bytes from 172.17.10.100: icmp_req=2 ttl=61 time=1.27 ms

64 bytes from 172.17.10.100: icmp_req=3 ttl=61 time=1.21 ms

64 bytes from 172.17.10.100: icmp_req=4 ttl=61 time=1.03 ms

 

--- 172.17.10.100 ping statistics ---

4 packets transmitted, 4 received, 0% packet loss, time 3004ms

rtt min/avg/max/mdev = 1.033/1.169/1.270/0.094 ms

1.1.     Убедитесь, что данные ICMP пакеты попадают под правила Source NAT.

1.1.1      Войдите в ESR CLI устройства Hub-n1.

1.1.2      Выполните команду:

esr:hub-n1# show ip nat translations

Рисунок 6. Таблица трансляций NAT на Hub-n1

Видно, что доступ в Интернет успешно осуществляется из подсети 192.168.20.0/24. Правила Source NAT отрабатывают верно (см. рисунок 6).

Проверка доступа в Интернет из подсети Spoke

1.    Выполните команду с устройства host_behind_spoke:

root@host_behind_spoke:~# ping 172.17.10.100 -c 4

PING 172.17.10.100 (172.17.10.100) 56(84) bytes of data.

64 bytes from 172.17.10.100: icmp_req=1 ttl=61 time=2.25 ms

64 bytes from 172.17.10.100: icmp_req=2 ttl=61 time=1.42 ms

64 bytes from 172.17.10.100: icmp_req=3 ttl=61 time=1.28 ms

64 bytes from 172.17.10.100: icmp_req=4 ttl=61 time=1.15 ms

 

--- 172.17.10.100 ping statistics ---

4 packets transmitted, 4 received, 0% packet loss, time 3004ms

rtt min/avg/max/mdev = 1.154/1.528/2.253/0.430 ms

1.1.     Убедитесь, что данные ICMP пакеты попадают под правила Source NAT.

1.1.1      Войдите в ESR CLI устройства Spoke.

1.1.2      Выполните команду:

esr:spoke# show ip nat translations

Рисунок 7. Таблица трансляций NAT на Spoke

Видно, что доступ в Интернет успешно осуществляется из подсети 192.168.1.0/24 устройства Spoke. Правила Source NAT отрабатывают верно (см. рисунок 7).

Проверка IP связности между Hub-n1 и Spoke

С устройства Hub-n1 из консоли ESR CLI выполните команду ping на внешний IP-адрес устройства Spoke:

esr:hub-n1# ping 172.16.10.2 packets 4

PING 172.16.10.2 (172.16.10.2) 56(84) bytes of data.

!!!!

--- 172.16.10.2 ping statistics ---

4 packets transmitted, 4 received, 0% packet loss, time 3004ms

rtt min/avg/max/mdev = 1.039/1.248/1.467/0.160 ms

Видно, что ICMP пакеты между Hub-n1 и Spoke успешно проходят.

Проверка построения защищенного соединения между внутренними подсетями кластера и Spoke

Активной нодой является Hub-n1, поэтому она будет шифровать трафик.

1.    Проверьте, что СОС на устройствах Hub-n1 и Spoke импортирован в базу продукта.

1.1.     Проверьте, что СОС на устройстве Hub-n1 импортирован в базу продукта:

administrator@hub-n1] run cert_mgr show

Found 2 certificates. Found 1 CRL.

1 Status: trusted 1.2.840.113549.1.9.1=support@cryptopro.ru,C=RU,L=Moscow,O=CRYPTO-PRO LLC,CN=CRYPTO-PRO Test Center 2

2 Status: local   C=RU,O=S-Terra CSP,OU=Research,CN=Hub-n1

3 CRL: 1.2.840.113549.1.9.1=support@cryptopro.ru,C=RU,L=Moscow,O=CRYPTO-PRO LLC,CN=CRYPTO-PRO Test Center 2

1.2.     Проверьте, что СОС на устройстве Spoke импортирован в базу продукта:

administrator@spoke] run cert_mgr show

Found 2 certificates. Found 1 CRL.

1 Status: trusted 1.2.840.113549.1.9.1=support@cryptopro.ru,C=RU,L=Moscow,O=CRYPTO-PRO LLC,CN=CRYPTO-PRO Test Center 2

2 Status: local   C=RU,O=S-Terra CSP,OU=Research,CN=Spoke

3 CRL: 1.2.840.113549.1.9.1=support@cryptopro.ru,C=RU,L=Moscow,O=CRYPTO-PRO LLC,CN=CRYPTO-PRO Test Center 2

2.    Проверьте статусы сертификатов на устройствах Hub-n1 и Spoke.

2.1.     Проверьте, что на устройстве Hub-n1 все сертификаты имеют статус Active:

administrator@hub-n1] run cert_mgr check

1 State: Active   1.2.840.113549.1.9.1=support@cryptopro.ru,C=RU,L=Moscow,O=CRYPTO-PRO LLC,CN=CRYPTO-PRO Test Center 2

2 State: Active   C=RU,O=S-Terra CSP,OU=Research,CN=Hub-n1

2.2.     Проверьте, что на устройстве Spoke все сертификаты имеют статус Active:

administrator@spoke] run cert_mgr check

1 State: Active   1.2.840.113549.1.9.1=support@cryptopro.ru,C=RU,L=Moscow,O=CRYPTO-PRO LLC,CN=CRYPTO-PRO Test Center 2

2 State: Active   C=RU,O=S-Terra CSP,OU=Research,CN=Spoke

Видно, что на всех устройствах СОС импортирован в базу продукта и все сертификаты находятся в активном состоянии.

3.    Инициируйте построение защищенного соединения с устройства host_behind_hub, выполнив команду ping с IP адресом назначения устройства host_behind_spoke:

root@host_behind_hub:~# ping 192.168.1.100 -c 4

PING 192.168.1.100 (192.168.1.100) 56(84) bytes of data.

64 bytes from 192.168.1.100: icmp_req=1 ttl=62 time=3389 ms

64 bytes from 192.168.1.100: icmp_req=2 ttl=62 time=2381 ms

64 bytes from 192.168.1.100: icmp_req=3 ttl=62 time=1373 ms

64 bytes from 192.168.1.100: icmp_req=4 ttl=62 time=365 ms

 

--- 192.168.1.100 ping statistics ---

4 packets transmitted, 4 received, 0% packet loss, time 3023ms

rtt min/avg/max/mdev = 365.861/1877.807/3389.635/1126.901 ms, pipe 4

Большие задержки (RTT) только у первых пакетов, так как в этот момент происходит построение защищенного соединения.

3.1.     Убедитесь в наличии защищенного соединения на устройстве Hub-n1:

administrator@hub-n1] run sa_mgr show

ISAKMP sessions: 0 initiated, 0 responded

 

ISAKMP connections:

Num Conn-id (Local Addr,Port)-(Remote Addr,Port) State Sent Rcvd

1 1 (172.16.15.2,500)-(172.16.10.2,500) active 1968 1876

 

IPsec connections:

Num Conn-id (Local Addr,Port)-(Remote Addr,Port) Protocol Action Type Sent Rcvd

1 1 (192.168.20.0-192.168.20.255,*)-(192.168.1.0-192.168.1.255,*) * ESP tunn 352 352

3.2.     Убедитесь в наличии защищенного соединения на устройстве Spoke:

administrator@spoke] run sa_mgr show

ISAKMP sessions: 0 initiated, 0 responded

 

ISAKMP connections:

Num Conn-id (Local Addr,Port)-(Remote Addr,Port) State Sent Rcvd

1 1 (172.16.10.2,500)-(172.16.15.2,500) active 1876 1968

 

IPsec connections:

Num Conn-id (Local Addr,Port)-(Remote Addr,Port) Protocol Action Type Sent Rcvd

1 1 (192.168.1.0-192.168.1.255,*)-(192.168.20.0-192.168.20.255,*) * ESP tunn 352 352

Видно, что защищенное соединение между устройствами Hub-n1 и Spoke успешно установлено.

Проверка отказоустойчивого решения

Переключение с основной на резервную ноду

1.    Запустите бесконечный пинг с устройства host_behind_spoke на host_behind_hub:

root@host_behind_spoke:~# ping 192.168.20.100

2.    Войдите в ESR CLI устройства Hub-n2.

3.    Выключите устройство Hub-n1 или отключите любой из его интерфейсов gi1/0/1, gi1/0/3 от коммутатора. На консоли Hub-n2 будут следующие сообщения, свидетельствующие о корректном переключении:

2017-12-05T15:09:09+00:00 %VRRP-I-INSTANCE: 1 messages suppressed

2017-12-05T15:09:09+00:00 %VRRP-I-INSTANCE: VRRP2 Transition to MASTER state

2017-12-05T15:09:09+00:00 %VRRP-I-GROUP: GROUP1 Syncing instances to MASTER state

2017-12-05T15:09:09+00:00 %VRRP-I-INSTANCE: VRRP1 Entering MASTER state

2017-12-05T15:09:10+00:00 %VRRP-I-INSTANCE: VRRP2 Entering MASTER state

4.    Проверьте состояние кластера на ноде Hub-n2 (нода должна быть в состоянии Master):

esr:hub-n2# show vrrp

Virtual router   Virtual IP         Priority   Preemption   State

--------------   ----------------   --------   ----------   ------

1                172.16.15.2/24     50         Enabled      Master

2                192.168.20.1/32    50         Enabled      Master

5.    В выводе программы ping на устройстве host_behind_spoke видны потери пакетов, после чего связь успешно восстанавливается:

64 bytes from 192.168.20.100: icmp_req=276 ttl=62 time=1.74 ms

64 bytes from 192.168.20.100: icmp_req=277 ttl=62 time=1.73 ms

64 bytes from 192.168.20.100: icmp_req=278 ttl=62 time=1.86 ms

64 bytes from 192.168.20.100: icmp_req=296 ttl=62 time=3295 ms

64 bytes from 192.168.20.100: icmp_req=297 ttl=62 time=2287 ms

64 bytes from 192.168.20.100: icmp_req=298 ttl=62 time=1279 ms

64 bytes from 192.168.20.100: icmp_req=299 ttl=62 time=271 ms

64 bytes from 192.168.20.100: icmp_req=300 ttl=62 time=2.03 ms

64 bytes from 192.168.20.100: icmp_req=301 ttl=62 time=1.51 ms

64 bytes from 192.168.20.100: icmp_req=302 ttl=62 time=1.90 ms

64 bytes from 192.168.20.100: icmp_req=303 ttl=62 time=1.79 ms

6.    Проверьте на ноде Hub-n2 наличие защищенного соединения:

administrator@hub-n2] run sa_mgr show

ISAKMP sessions: 0 initiated, 0 responded

 

ISAKMP connections:

Num Conn-id (Local Addr,Port)-(Remote Addr,Port) State Sent Rcvd

1 5 (172.16.15.2,500)-(172.16.10.2,500) active 1884 1968

 

IPsec connections:

Num Conn-id (Local Addr,Port)-(Remote Addr,Port) Protocol Action Type Sent Rcvd

1 1 (192.168.20.0-192.168.20.255,*)-(192.168.1.0-192.168.1.255,*) * ESP tunn 29656 29832

Видно, что переключение с основной на резервную ноду, в случае отказа основной, выполнено успешно. Защищенное соединение построено, трафик шифруется.

7.    Если при проведении теста нода Hub-n1 не выключалась, а производилось отсоединение ее внешнего сетевого интерфейса gi1/0/1 от коммутатора, то войдите в ESR CLI и проверьте наличие маршрута по умолчанию через 192.168.20.1:

esr:hub-n1# sh ip route

 Codes: C - connected, S - static, R - RIP derived,

        O - OSPF derived, IA - OSPF inter area route,

        E1 - OSPF external type 1 route, E2 - OSPF external type 2 route

        B - BGP derived, D - DHCP derived, K - kernel route,

        * - FIB route

 

S     * 0.0.0.0/0          [1/1]   via 192.168.20.1 on gi1/0/3       [static 15:23:44]

C     * 192.168.20.0/24    [0/0]   dev gi1/0/3                       [direct 15:23:44]

7.1.     Убедитесь, что нода Hub-n1 имеет доступ в Интернет:

esr:hub-n1# ping 172.17.10.100 packets 4

PING 172.17.10.100 (172.17.10.100) 56(84) bytes of data.

!!!!

--- 172.17.10.100 ping statistics ---

4 packets transmitted, 4 received, 0% packet loss, time 3005ms

rtt min/avg/max/mdev = 0.697/0.798/0.886/0.071 ms

Переключение с резервной на основную ноду

1.    Запустите бесконечный пинг с устройства host_behind_spoke на host_behind_hub:

root@host_behind_spoke:~# ping 192.168.20.100

2.    Войдите в ESR CLI устройства Hub-n1.

3.    Восстановите основную ноду Hub-n1. На консоли Hub-n1 будут следующие сообщения, свидетельствующие о корректном переключении ее из состояния Fault в Master:

2017-12-05T16:14:26+00:00 %VRRP-I-GROUP: GROUP1 changed state to up

2017-12-05T16:14:26+00:00 %VRRP-I-GROUP: GROUP1 leaving FAULT state

2017-12-05T16:14:26+00:00 %VRRP-I-INSTANCE: VRRP2 prio is higher than received advert

2017-12-05T16:14:26+00:00 %VRRP-I-GROUP: GROUP1 changed state to up

2017-12-05T16:14:26+00:00 %VRRP-I-GROUP: GROUP1 leaving FAULT state

2017-12-05T16:14:26+00:00 %VRRP-I-INSTANCE: VRRP1 prio is higher than received advert

2017-12-05T16:14:26+00:00 %VRRP-I-INSTANCE: 1 messages suppressed

2017-12-05T16:14:26+00:00 %VRRP-I-INSTANCE: VRRP1 Transition to MASTER state

2017-12-05T16:14:26+00:00 %VRRP-I-GROUP: GROUP1 Syncing instances to MASTER state

2017-12-05T16:14:26+00:00 %VRRP-I-INSTANCE: VRRP1 Received lower prio advert 50, forcing new election

2017-12-05T16:14:27+00:00 %VRRP-I-INSTANCE: VRRP1 Entering MASTER state

2017-12-05T16:14:30+00:00 %VRRP-I-INSTANCE: VRRP2 Entering MASTER state

4.    В выводе программы ping на устройстве host_behind_spoke видны потери пакетов, после чего связь успешно восстанавливается:

64 bytes from 192.168.20.100: icmp_req=3494 ttl=62 time=1.93 ms

64 bytes from 192.168.20.100: icmp_req=3495 ttl=62 time=1.44 ms

64 bytes from 192.168.20.100: icmp_req=3511 ttl=62 time=2660 ms

64 bytes from 192.168.20.100: icmp_req=3512 ttl=62 time=1652 ms

64 bytes from 192.168.20.100: icmp_req=3513 ttl=62 time=644 ms

64 bytes from 192.168.20.100: icmp_req=3514 ttl=62 time=2.12 ms

64 bytes from 192.168.20.100: icmp_req=3515 ttl=62 time=1.93 ms

5.    Проверьте на ноде Hub-n1 наличие защищенного соединения:

administrator@hub-n1] run sa_mgr show

ISAKMP sessions: 0 initiated, 0 responded

 

ISAKMP connections:

Num Conn-id (Local Addr,Port)-(Remote Addr,Port) State Sent Rcvd

1 6 (172.16.15.2,500)-(172.16.10.2,500) active 1884 1968

 

IPsec connections:

Num Conn-id (Local Addr,Port)-(Remote Addr,Port) Protocol Action Type Sent Rcvd

1 2 (192.168.20.0-192.168.20.255,*)-(192.168.1.0-192.168.1.255,*) * ESP tunn 19008 19096

Видно, что переключение с резервной на основную ноду, в случае восстановления основной, выполнено успешно. Защищенное соединение построено, трафик шифруется.

Приложение

Конфигурация ESR CLI для устройства Hub-n1

hostname hub-n1

 

username admin

  password encrypted $6$.mO8VMfp8zdjzatM$2LMp0vRNDMk.fa/dWE4NtuYdB7NHwWpdIIWGejQfxQMtkvo0O8QSUmgQ3cVkbI1W9/0jvfvupgXi9X/fDfhqb.

exit

username cscons

  password encrypted $6$6veWlKTRlDjtlC6W$goUG/CseAtfj5vepQvyn7YOf2draHdlZkel5P8tNQvfcg4X1nu3Cj6FF7Qiqo0PIblNP3d5aJtD3caXUbb4eQ/

exit

 

security zone trusted

exit

security zone untrusted

exit

 

object-group service SSH

  port-range 22

exit

object-group service IKE500

  port-range 500

exit

object-group service IKE4500

  port-range 4500

exit

 

object-group network LAN_HUB

  ip prefix 192.168.20.0/24

exit

object-group network LAN_SPOKE

  ip prefix 192.168.1.0/24

exit

 

tracking 1

  vrrp 1 not state master

  vrrp 2 not state master

  enable

exit

 

interface gigabitethernet 1/0/1

  security-zone untrusted

  ip address 192.168.110.10/24

  vrrp id 1

  vrrp ip 172.16.15.2/24

  vrrp group 1

  vrrp

exit

interface gigabitethernet 1/0/2

  shutdown

exit

interface gigabitethernet 1/0/3

  security-zone trusted

  ip address 192.168.20.10/24

  vrrp id 2

  vrrp ip 192.168.20.1/24

  vrrp group 1

  vrrp

exit

interface gigabitethernet 1/0/4

  shutdown

exit

interface gigabitethernet 1/0/5

  shutdown

exit

interface gigabitethernet 1/0/6

  shutdown

exit

interface gigabitethernet 1/0/7

  shutdown

exit

interface gigabitethernet 1/0/8

  shutdown

exit

interface gigabitethernet 1/0/9

  shutdown

exit

interface gigabitethernet 1/0/10

  shutdown

exit

interface gigabitethernet 1/0/11

  shutdown

exit

interface gigabitethernet 1/0/12

  shutdown

exit

interface gigabitethernet 1/0/13

  shutdown

exit

interface gigabitethernet 1/0/14

  shutdown

exit

interface gigabitethernet 1/0/15

  shutdown

exit

interface gigabitethernet 1/0/16

  shutdown

exit

interface gigabitethernet 1/0/17

  shutdown

exit

interface gigabitethernet 1/0/18

  shutdown

exit

interface gigabitethernet 1/0/19

  shutdown

exit

interface gigabitethernet 1/0/20

  shutdown

exit

interface gigabitethernet 1/0/21

  shutdown

exit

interface gigabitethernet 1/0/22

  shutdown

exit

interface gigabitethernet 1/0/23

  shutdown

exit

interface gigabitethernet 1/0/24

  shutdown

exit

interface tengigabitethernet 1/0/1

  shutdown

exit

interface tengigabitethernet 1/0/2

  shutdown

exit

security zone-pair trusted untrusted

  rule 10

    action permit

    match protocol any

    match source-address any

    match destination-address any

    enable

  exit

exit

security zone-pair trusted trusted

  rule 10

    action permit

    match protocol any

    match source-address any

    match destination-address any

    enable

  exit

exit

security zone-pair untrusted trusted

  rule 10

    action permit

    match protocol any

    match source-address any

    match destination-address any

    match ipsec-decrypted

    enable

  exit

exit

security zone-pair trusted self

  rule 10

    action permit

    match protocol tcp

    match source-address any

    match destination-address any

    match source-port any

    match destination-port SSH

    enable

  exit

  rule 20

    action permit

    match protocol icmp

    match source-address any

    match destination-address any

    enable

  exit

  rule 30

    action permit

    match protocol vrrp

    match source-address any

    match destination-address any

    enable

  exit

exit

security zone-pair untrusted self

  rule 10

    action permit

    match protocol icmp

    match source-address any

    match destination-address any

    enable

  exit

  rule 20

    action permit

    match protocol any

    match source-address any

    match destination-address any

    match ipsec-decrypted

    enable

  exit

  rule 30

    action permit

    match protocol udp

    match source-address any

    match destination-address any

    match source-port any

    match destination-port IKE500

    enable

  exit

  rule 40

    action permit

    match protocol udp

    match source-address any

    match destination-address any

    match source-port any

    match destination-port IKE4500

    enable

  exit

  rule 50

    action permit

    match protocol vrrp

    match source-address any

    match destination-address any

    enable

  exit

exit

 

nat source

  ruleset SNAT_ON_GI101

    to interface gigabitethernet 1/0/1

    rule 10

      description "disable SNAT for local IKE packets"

      match source-address any

      match destination-address any

      match ike-local

      action source-nat off

      enable

    exit

    rule 20

      description "disable SNAT for traffic which must be protected by IPSEC"

      match protocol any

      match source-address LAN_HUB

      match destination-address LAN_SPOKE

      action source-nat off

      enable

    exit

    rule 30

      description "disable SNAT for local VRRP packets"

      match protocol vrrp

      match source-address any

      match destination-address any

      action source-nat off

      enable

    exit

    rule 40

      description "enable dynamic SNAT for traffic to Internet"

      match protocol any

      match source-address any

      match destination-address any

      action source-nat netmap 172.16.15.2/32

      enable

    exit

  exit

exit

 

ip route 0.0.0.0/0 172.16.15.1

ip route 0.0.0.0/0 192.168.20.1 1 track 1

 

ip ssh server

Конфигурация CGW CLI для устройства Hub-n1

!

version 12.4

no service password-encryption

!

crypto ipsec df-bit copy

crypto isakmp identity dn

crypto isakmp session-time-max 10

crypto isakmp keepalive 1 3

crypto isakmp keepalive retry-count 3

aaa new-model

!

!

hostname hub-n1

enable secret 5 X03MO1qnZdYdgyfeuILPmQ==

!

!

!

!

!

crypto isakmp policy 1

 encr gost

 hash gost341112-256-tc26

 authentication gost-sig

 group vko2

!

crypto ipsec transform-set GOST esp-gost28147-4m-imit

!

ip access-list extended hub_spoke

 permit ip 192.168.20.0 0.0.0.255 192.168.1.0 0.0.0.255

!

!

crypto map VPN 1 ipsec-isakmp

 match address hub_spoke

 set transform-set GOST

 set peer 172.16.10.2

!

interface GigabitEthernet1/2

 no ip address

 shutdown

!

interface GigabitEthernet1/4

 no ip address

 shutdown

!

interface GigabitEthernet1/5

 no ip address

 shutdown

!

interface GigabitEthernet1/6

 no ip address

 shutdown

!

interface GigabitEthernet1/7

 no ip address

 shutdown

!

interface GigabitEthernet1/8

 no ip address

 shutdown

!

interface GigabitEthernet1/9

 no ip address

 shutdown

!

interface GigabitEthernet1/10

 no ip address

 shutdown

!

interface GigabitEthernet1/11

 no ip address

 shutdown

!

interface GigabitEthernet1/12

 no ip address

 shutdown

!

interface GigabitEthernet1/13

 no ip address

 shutdown

!

interface GigabitEthernet1/14

 no ip address

 shutdown

!

interface GigabitEthernet1/15

 no ip address

 shutdown

!

interface GigabitEthernet1/16

 no ip address

 shutdown

!

interface GigabitEthernet1/17

 no ip address

 shutdown

!

interface GigabitEthernet1/18

 no ip address

 shutdown

!

interface GigabitEthernet1/19

 no ip address

 shutdown

!

interface GigabitEthernet1/20

 no ip address

 shutdown

!

interface GigabitEthernet1/21

 no ip address

 shutdown

!

interface GigabitEthernet1/22

 no ip address

 shutdown

!

interface GigabitEthernet1/23

 no ip address

 shutdown

!

interface GigabitEthernet1/24

 no ip address

 shutdown

!

interface TenGigabitEthernet1/1

 no ip address

 shutdown

!

interface TenGigabitEthernet1/2

 no ip address

 shutdown

!

interface GigabitEthernet1/1

 ip address 192.168.110.10 255.255.255.0

 ip address 172.16.15.2 255.255.255.0 secondary

 crypto map VPN

!

interface GigabitEthernet1/3

 ip address 192.168.20.10 255.255.255.0

 ip address 192.168.20.1 255.255.255.0 secondary

!

!

!

crypto pki trustpoint s-terra_technological_trustpoint

 revocation-check crl

 crl download group CA http://172.17.10.100/crl.crl

 crl download time 60

crypto pki certificate chain s-terra_technological_trustpoint

certificate 2B6E3351FD6EB2AD48200203CB5BA141

3082024C308201FBA00302010202102B6E3351FD6EB2AD48200203CB5BA14130

...

E34EE9640D905032C1F1E3B4491257D5

 

quit

!

end

Конфигурация ESR CLI для устройства Hub-n2

hostname hub-n2

 

username admin

  password encrypted $6$.mO8VMfp8zdjzatM$2LMp0vRNDMk.fa/dWE4NtuYdB7NHwWpdIIWGejQfxQMtkvo0O8QSUmgQ3cVkbI1W9/0jvfvupgXi9X/fDfhqb.

exit

username cscons

  password encrypted $6$6veWlKTRlDjtlC6W$goUG/CseAtfj5vepQvyn7YOf2draHdlZkel5P8tNQvfcg4X1nu3Cj6FF7Qiqo0PIblNP3d5aJtD3caXUbb4eQ/

exit

 

security zone trusted

exit

security zone untrusted

exit

 

object-group service SSH

  port-range 22

exit

object-group service IKE500

  port-range 500

exit

object-group service IKE4500

  port-range 4500

exit

 

object-group network LAN_HUB

  ip prefix 192.168.20.0/24

exit

object-group network LAN_SPOKE

  ip prefix 192.168.1.0/24

exit

 

tracking 1

  vrrp 1 not state master

  vrrp 2 not state master

  enable

exit

 

interface gigabitethernet 1/0/1

  security-zone untrusted

  ip address 192.168.110.20/24

  vrrp id 1

  vrrp ip 172.16.15.2/24

  vrrp priority 50

  vrrp group 1

  vrrp

exit

interface gigabitethernet 1/0/2

  shutdown

exit

interface gigabitethernet 1/0/3

  security-zone trusted

  ip address 192.168.20.20/24

  vrrp id 2

  vrrp ip 192.168.20.1/32

  vrrp priority 50

  vrrp group 1

  vrrp

exit

interface gigabitethernet 1/0/4

  shutdown

exit

interface gigabitethernet 1/0/5

  shutdown

exit

interface gigabitethernet 1/0/6

  shutdown

exit

interface gigabitethernet 1/0/7

  shutdown

exit

interface gigabitethernet 1/0/8

  shutdown

exit

interface gigabitethernet 1/0/9

  shutdown

exit

interface gigabitethernet 1/0/10

  shutdown

exit

interface gigabitethernet 1/0/11

  shutdown

exit

interface gigabitethernet 1/0/12

  shutdown

exit

interface gigabitethernet 1/0/13

  shutdown

exit

interface gigabitethernet 1/0/14

  shutdown

exit

interface gigabitethernet 1/0/15

  shutdown

exit

interface gigabitethernet 1/0/16

  shutdown

exit

interface gigabitethernet 1/0/17

  shutdown

exit

interface gigabitethernet 1/0/18

  shutdown

exit

interface gigabitethernet 1/0/19

  shutdown

exit

interface gigabitethernet 1/0/20

  shutdown

exit

interface gigabitethernet 1/0/21

  shutdown

exit

interface gigabitethernet 1/0/22

  shutdown

exit

interface gigabitethernet 1/0/23

  shutdown

exit

interface gigabitethernet 1/0/24

  shutdown

exit

interface tengigabitethernet 1/0/1

  shutdown

exit

interface tengigabitethernet 1/0/2

  shutdown

exit

security zone-pair trusted untrusted

  rule 10

    action permit

    match protocol any

    match source-address any

    match destination-address any

    enable

  exit

exit

security zone-pair trusted trusted

  rule 10

    action permit

    match protocol any

    match source-address any

    match destination-address any

    enable

  exit

exit

security zone-pair untrusted trusted

  rule 10

    action permit

    match protocol any

    match source-address any

    match destination-address any

    match ipsec-decrypted

    enable

  exit

exit

security zone-pair trusted self

  rule 10

    action permit

    match protocol tcp

    match source-address any

    match destination-address any

    match source-port any

    match destination-port SSH

    enable

  exit

  rule 20

    action permit

    match protocol icmp

    match source-address any

    match destination-address any

    enable

  exit

  rule 30

    action permit

    match protocol vrrp

    match source-address any

    match destination-address any

    enable

  exit

exit

security zone-pair untrusted self

  rule 10

    action permit

    match protocol icmp

    match source-address any

    match destination-address any

    enable

  exit

  rule 20

    action permit

    match protocol any

    match source-address any

    match destination-address any

    match ipsec-decrypted

    enable

  exit

  rule 30

    action permit

    match protocol udp

    match source-address any

    match destination-address any

    match source-port any

    match destination-port IKE500

    enable

  exit

  rule 40

    action permit

    match protocol udp

    match source-address any

    match destination-address any

    match source-port any

    match destination-port IKE4500

    enable

  exit

  rule 50

    action permit

    match protocol vrrp

    match source-address any

    match destination-address any

    enable

  exit

exit

 

nat source

  ruleset SNAT_ON_GI101

    to interface gigabitethernet 1/0/1

    rule 10

      description "disable SNAT for local IKE packets"

      match source-address any

      match destination-address any

      match ike-local

      action source-nat off

      enable

    exit

    rule 20

      description "disable SNAT for traffic which must be protected by IPSEC"

      match protocol any

      match source-address LAN_HUB

      match destination-address LAN_SPOKE

      action source-nat off

      enable

    exit

    rule 30

      description "disable SNAT for local VRRP packets"

      match protocol vrrp

      match source-address any

      match destination-address any

      action source-nat off

      enable

    exit

    rule 40

      description "enable dynamic SNAT for traffic to Internet"

      match protocol any

      match source-address any

      match destination-address any

      action source-nat netmap 172.16.15.2/32

      enable

    exit

  exit

exit

 

ip route 0.0.0.0/0 172.16.15.1

ip route 0.0.0.0/0 192.168.20.1 1 track 1

 

ip ssh server

Конфигурация CGW CLI для устройства Hub-n2

version 12.4

no service password-encryption

!

crypto ipsec df-bit copy

crypto isakmp identity dn

crypto isakmp session-time-max 10

crypto isakmp keepalive 1 3

crypto isakmp keepalive retry-count 3

aaa new-model

!

!

hostname hub-n2

enable secret 5 X03MO1qnZdYdgyfeuILPmQ==

!

!

!

!

!

crypto isakmp policy 1

 encr gost

 hash gost341112-256-tc26

 authentication gost-sig

 group vko2

!

crypto ipsec transform-set GOST esp-gost28147-4m-imit

!

ip access-list extended hub_spoke

 permit ip 192.168.20.0 0.0.0.255 192.168.1.0 0.0.0.255

!

!

crypto map VPN 1 ipsec-isakmp

 match address hub_spoke

 set transform-set GOST

 set peer 172.16.10.2

!

interface GigabitEthernet1/2

 no ip address

 shutdown

!

interface GigabitEthernet1/4

 no ip address

 shutdown

!

interface GigabitEthernet1/5

 no ip address

 shutdown

!

interface GigabitEthernet1/6

 no ip address

 shutdown

!

interface GigabitEthernet1/7

 no ip address

 shutdown

!

interface GigabitEthernet1/8

 no ip address

 shutdown

!

interface GigabitEthernet1/9

 no ip address

 shutdown

!

interface GigabitEthernet1/10

 no ip address

 shutdown

!

interface GigabitEthernet1/11

 no ip address

 shutdown

!

interface GigabitEthernet1/12

 no ip address

 shutdown

!

interface GigabitEthernet1/13

 no ip address

 shutdown

!

interface GigabitEthernet1/14

 no ip address

 shutdown

!

interface GigabitEthernet1/15

 no ip address

 shutdown

!

interface GigabitEthernet1/16

 no ip address

 shutdown

!

interface GigabitEthernet1/17

 no ip address

 shutdown

!

interface GigabitEthernet1/18

 no ip address

 shutdown

!

interface GigabitEthernet1/19

 no ip address

 shutdown

!

interface GigabitEthernet1/20

 no ip address

 shutdown

!

interface GigabitEthernet1/21

 no ip address

 shutdown

!

interface GigabitEthernet1/22

 no ip address

 shutdown

!

interface GigabitEthernet1/23

 no ip address

 shutdown

!

interface GigabitEthernet1/24

 no ip address

 shutdown

!

interface TenGigabitEthernet1/1

 no ip address

 shutdown

!

interface TenGigabitEthernet1/2

 no ip address

 shutdown

!

interface GigabitEthernet1/1

 ip address 192.168.110.20 255.255.255.0

 crypto map VPN

!

interface GigabitEthernet1/3

 ip address 192.168.20.20 255.255.255.0

!

!

!

crypto pki trustpoint s-terra_technological_trustpoint

 revocation-check crl

 crl download group CA http://172.17.10.100/crl.crl

 crl download time 60

crypto pki certificate chain s-terra_technological_trustpoint

certificate 2B6E3351FD6EB2AD48200203CB5BA141

3082024C308201FBA00302010202102B6E3351FD6EB2AD48200203CB5BA14130

...

E34EE9640D905032C1F1E3B4491257D5

 

quit

!

end

Конфигурация ESR CLI для устройства Spoke

hostname spoke

 

username admin

  password encrypted $6$2/q4OFeT5PVnj8Ma$88EfPcF1wjdzGgWXsLY5Pq7JTwIt7SQrgvvojeAkxAwgnsba8IwnqV7lJQJ8n2oykjA1jlH0rIGLYhgybW/8H/

exit

username cscons

  password encrypted $6$gL1pRiCEODthUFN6$vUmSnA4LBTLFc5Dm6iJougHHYWVJDbLowhOOVwinMwbomLLYpHrmy/12gm8bVhAWs2c6QAFWg6fMMYMQ8Ch2i0

exit

 

security zone trusted

exit

security zone untrusted

exit

 

object-group service SSH

  port-range 22

exit

object-group service IKE500

  port-range 500

exit

object-group service IKE4500

  port-range 4500

exit

 

object-group network LAN_HUB

  ip prefix 192.168.20.0/24

exit

object-group network LAN_SPOKE

  ip prefix 192.168.1.0/24

exit

 

 

bridge 1

  vlan 1

  security-zone trusted

  ip address 192.168.1.1/24

  enable

exit

 

interface gigabitethernet 1/0/1

  security-zone untrusted

  ip address 172.16.10.2/24

exit

interface gigabitethernet 1/0/2

  shutdown

exit

interface gigabitethernet 1/0/3

  switchport

exit

interface gigabitethernet 1/0/4

  switchport

exit

interface gigabitethernet 1/0/5

  switchport

exit

interface gigabitethernet 1/0/6

  switchport

exit

interface gigabitethernet 1/0/7

  switchport

exit

interface gigabitethernet 1/0/8

  switchport

exit

security zone-pair trusted untrusted

  rule 10

    action permit

    match protocol any

    match source-address any

    match destination-address any

    enable

  exit

exit

security zone-pair trusted trusted

  rule 10

    action permit

    match protocol any

    match source-address any

    match destination-address any

    enable

  exit

exit

security zone-pair untrusted trusted

  rule 10

    action permit

    match protocol any

    match source-address any

    match destination-address any

    match ipsec-decrypted

    enable

  exit

exit

security zone-pair trusted self

  rule 10

    action permit

    match protocol tcp

    match source-address any

    match destination-address any

    match source-port any

    match destination-port SSH

    enable

  exit

  rule 20

    action permit

    match protocol icmp

    match source-address any

    match destination-address any

    enable

  exit

exit

security zone-pair untrusted self

  rule 10

    action permit

    match protocol icmp

    match source-address any

    match destination-address any

    enable

  exit

  rule 20

    action permit

    match protocol any

    match source-address any

    match destination-address any

    match ipsec-decrypted

    enable

  exit

  rule 30

    action permit

    match protocol udp

    match source-address any

    match destination-address any

    match source-port any

    match destination-port IKE500

    enable

  exit

  rule 40

    action permit

    match protocol udp

    match source-address any

    match destination-address any

    match source-port any

    match destination-port IKE4500

    enable

  exit

exit

 

nat source

  ruleset SNAT_ON_GI101

    to interface gigabitethernet 1/0/1

    rule 10

      description "disable SNAT for local IKE packets"

      match source-address any

      match destination-address any

      match ike-local

      action source-nat off

      enable

    exit

    rule 20

      description "disable SNAT for traffic which must be protected by IPsec"

      match protocol any

      match source-address LAN_SPOKE

      match destination-address LAN_HUB

      action source-nat off

      enable

    exit

    rule 30

      description "enable dynamic SNAT for traffic to Internet"

      match protocol any

      match source-address any

      match destination-address any

      action source-nat netmap 172.16.10.2/32

      enable

    exit

  exit

exit

 

ip route 0.0.0.0/0 172.16.10.1

 

ip ssh server

Конфигурация CGW CLI для устройства Spoke

!

version 12.4

no service password-encryption

!

crypto ipsec df-bit copy

crypto isakmp identity dn

crypto isakmp session-time-max 10

crypto isakmp keepalive 1 3

crypto isakmp keepalive retry-count 3

aaa new-model

!

!

hostname spoke

enable secret 5 X03MO1qnZdYdgyfeuILPmQ==

!

!

!

!

!

crypto isakmp policy 1

 encr gost

 hash gost341112-256-tc26

 authentication gost-sig

 group vko2

!

crypto ipsec transform-set GOST esp-gost28147-4m-imit

!

ip access-list extended hub_spoke

 permit ip 192.168.1.0 0.0.0.255 192.168.20.0 0.0.0.255

!

!

crypto map VPN 1 ipsec-isakmp

 match address hub_spoke

 set transform-set GOST

 set peer 172.16.15.2

!

interface GigabitEthernet1/1

 ip address 172.16.10.2 255.255.255.0

 crypto map VPN

!

interface GigabitEthernet1/2

 no ip address

 shutdown

!

interface Bridge1

 ip address 192.168.1.1 255.255.255.0

!

!

!

crypto pki trustpoint s-terra_technological_trustpoint

 revocation-check crl

 crl download group CA http://172.17.10.100/crl.crl

 crl download time 60

crypto pki certificate chain s-terra_technological_trustpoint

certificate 2B6E3351FD6EB2AD48200203CB5BA141

3082024C308201FBA00302010202102B6E3351FD6EB2AD48200203CB5BA14130

...

E34EE9640D905032C1F1E3B4491257D5

 

quit

!

end