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

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

Введение

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

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

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

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

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

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

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

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

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

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

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

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

1.    Криптомаршрутизаторы Spoke и Hub должны быть инициализированы (см. документ «Процедура инициализации 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) и персональный компьютер (host_behind_hub).

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 подключается к сети Интернет с помощью статической маршрутизации (маршрут по умолчанию через маршрутизатор Hub_ISP).

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

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

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

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

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

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

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

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

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

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

3.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

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

Настройка может осуществляться и удаленно (по 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).

Настройка имени устройства, IP-адресов и маршрутизации

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

esr:esr-1000# configure

esr:esr-1000(config)# hostname hub

2.    Задайте адрес внешнего интерфейса 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 172.16.15.2/24

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

3.    Создайте мост (bridge), назначьте IP-адрес, VLAN и добавьте в него все интерфейсы с gi1/0/5 по gi1/0/24:

В данном сценарии в качестве устройства Hub выступает ESR-1000-ST, у которого большое количество сетевых интерфейсов, если у Вас используются модель ESR-100-ST или ESR-200-ST, то скорректируйте диапазон сетевых интерфейсов самостоятельно.

esr:esr-1000(config)# bridge 1

esr:esr-1000(config-bridge)# ip address 192.168.20.1/24

esr:esr-1000(config-bridge)# vlan 1

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

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

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

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

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

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

Все интерфейсы с gi1/0/5 по gi1/0/24 могут быть использованы для подключения защищаемых устройств, то есть на данных интерфейсах выполняются функции коммутатора.

4.    Добавьте маршрут по умолчанию через маршрутизатор Hub_ISP и примените настройки:

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

esr:esr-1000(config)# end

esr:esr-1000# commit

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

Setting hostname to 'Hub'...done.

...

2017-02-15T10:41:52+00:00 %LINK-I-UP: bridge 1 changed state to up

2017-02-15T10:41:52+00:00 %LINK-W-DOWN: bridge 1 changed state to down

2017-02-15T10:41:54+00:00 %LINK-I-UP: gigabitethernet 1/0/1 changed state to up, speed 1000M, full-duplex

Configuration has been successfully committed

esr:Hub# confirm

2017-02-15T10:41:55+00:00 %CLI-I-CRIT: user admin from console  input: confirm

Configuration has been successfully confirmed

esr:Hub#

5.    Убедитесь, что базовые сетевые настройки выполнены верно. Для этого подключите внешний интерфейс gi1/0/1 криптомаршрутизатора Hub к маршрутизатору Hub_ISP и персональный компьютер host_behind_hub к любому интерфейсу криптомаршрутизатора Hub из диапазона gi1/0/5 – 24.

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

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

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

esr:hub# 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

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

esr:hub# 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

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

esr:hub# 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# configure

esr:hub(config)# security zone trusted

esr:hub(config-zone)# exit

esr:hub(config)# security zone untrusted

esr:hub(config-zone)# exit

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

esr:hub(config)# bridge 1

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

esr:hub(config-bridge)# exit

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

esr:hub(config)#

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

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

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

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

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

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

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

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

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

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

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

esr:hub(config)#

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

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

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

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

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

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

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

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

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

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

esr:hub(config-zone-pair) exit

esr:hub(config)#

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

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

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

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

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

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

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

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

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

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

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

esr:hub(config)#

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

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

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

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

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

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

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

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

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

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

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

esr:hub(config-zone-pair)#

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

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

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

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

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

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

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

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

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

esr:hub(config)#

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

esr:hub(config-zone-pair)#

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

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

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

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

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

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

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

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

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

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

esr:hub(config)#

Настройка Source NAT

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

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

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

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

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

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

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

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

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

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

esr:hub(config)# nat source

esr:hub(config-snat)# ruleset SNAT_ON_GI101

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

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

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

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

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

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

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

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

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

esr:hub(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(config-snat-ruleset)# rule 20

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

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

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

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

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

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

esr:hub(config-snat-ruleset)#

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

2.3.     Включите Source NAT для всего оставшегося трафика:

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

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

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

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

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

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

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

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

esr:hub(config-snat)# exit

esr:hub(config)#

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

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

esr:hub(config)# ip ssh server

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

esr:hub(config)# do commit

2017-03-29T18:06:05+00:00 %CLI-I-CRIT: user admin from console  input: do commit

Configuration has been successfully committed

esr:hub(config)# do confirm

2017-03-29T18:06:09+00:00 %CLI-I-CRIT: user admin from console  input: do confirm

Configuration has been successfully confirmed

esr:hub(config)# end

esr:hub# logout

administrator@hub]

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

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

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

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

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

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

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

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

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

1.    Вставьте USB-flash накопитель в свободный USB порт устройства Hub (см. рисунок 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] dir media:

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

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

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

administrator@hub] run cert_mgr create -subj "C=RU,O=S-Terra CSP,OU=Research,CN=Hub" -GOST_R341012_256 -fb64 media:S-TERRA/hub.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.request.

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

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

Press key: U

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

administrator@hub] 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.request

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

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

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

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

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

 

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

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

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.cer

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

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

administrator@hub] 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 в базу продукта:

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

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

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

administrator@hub] 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

                  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] configure

hub login: cscons

Password:

S-Terra Gate security console

cgw:hub#

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

cgw:hub#synchronize network-interfaces

При выполнении данной команды из CGW CLI удалятся сетевые интерфейсы gi1/5 – 24, так как данные интерфейсы объединены в коммутатор (L2) и на них СКЗИ не может контролировать трафик.

Рекомендуется всегда выполнять данную команду перед конфигурированием СКЗИ.

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

cgw:hub#configure terminal

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

cgw:hub(config)#

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

cgw:hub(config)#enable secret 0 password

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

cgw:hub(config)#crypto isakmp identity dn

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

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

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

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

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

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

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

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

cgw:hub(config)#crypto isakmp policy 1

cgw:hub(config-isakmp)#encryption gost

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

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

cgw:hub(config-isakmp)# group vko2

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

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

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

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

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

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

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

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

cgw:hub(config)#

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

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

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

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

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

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

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

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

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

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

cgw:hub(config)#

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

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

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

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

cgw:hub(config-if)#exit

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

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

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

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

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

cgw:hub(ca-trustpoint)#exit

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

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

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

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

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

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

cgw:hub(config)#end

cgw:hub#

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

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

Настройка host_behind_spoke

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

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

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

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

Устройство Spoke настраивается аналогично устройству Hub.

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

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

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

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

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.

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

esr:hub# show ip nat translations

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

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

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

2.    Выполните команду с устройства 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

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

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

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

esr:spoke# show ip nat translations

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

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

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

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

esr:hub# 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 и Spoke успешно проходят.

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

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

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

administrator@hub] 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

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 и Spoke.

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

administrator@hub] 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

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:

administrator@hub] 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 и Spoke успешно установлено.

Приложение

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

hostname hub

 

username admin

  password encrypted $6$29lNG6OR6cbIHBkh$Aj9ioLGZA/USJtsyOS1IWtTdm1ZyR3vPieBVPOs7VkY61HY1bNosUtaBQ9YFni5dCL8gB.NV9ue770O2JhrsX/

exit

username cscons

  password encrypted $6$.HMP5DUHLtjZw6Ys$hSSg4wf1gsjUDtAxPq9ai0xdUldeXood/dkdNmT.fxxn7rNWG5gfSEfeHFD5zmCjYlLLz/JnFiwkoX7vmLOaN.

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.20.1/24

  enable

exit

 

interface gigabitethernet 1/0/1

  security-zone untrusted

  ip address 172.16.15.2/24

exit

interface gigabitethernet 1/0/2

  shutdown

exit

interface gigabitethernet 1/0/3

  shutdown

exit

interface gigabitethernet 1/0/4

  shutdown

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

interface gigabitethernet 1/0/9

  switchport

exit

interface gigabitethernet 1/0/10

  switchport

exit

interface gigabitethernet 1/0/11

  switchport

exit

interface gigabitethernet 1/0/12

  switchport

exit

interface gigabitethernet 1/0/13

  switchport

exit

interface gigabitethernet 1/0/14

  switchport

exit

interface gigabitethernet 1/0/15

  switchport

exit

interface gigabitethernet 1/0/16

  switchport

exit

interface gigabitethernet 1/0/17

  switchport

exit

interface gigabitethernet 1/0/18

  switchport

exit

interface gigabitethernet 1/0/19

  switchport

exit

interface gigabitethernet 1/0/20

  switchport

exit

interface gigabitethernet 1/0/21

  switchport

exit

interface gigabitethernet 1/0/22

  switchport

exit

interface gigabitethernet 1/0/23

  switchport

exit

interface gigabitethernet 1/0/24

  switchport

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

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

      match source-address any

      match destination-address any

      match ike-local

      action source-nat off

      enable

    exit

    rule 20

      match protocol any

      match source-address LAN_HUB

      match destination-address LAN_SPOKE

      action source-nat off

      enable

    exit

    rule 30

      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 ssh server

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

!

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

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/1

 ip address 172.16.15.2 255.255.255.0

 crypto map VPN

!

interface GigabitEthernet1/2

 no ip address

 shutdown

!

interface GigabitEthernet1/3

 no ip address

 shutdown

!

interface GigabitEthernet1/4

 no ip address

 shutdown

!

interface TenGigabitEthernet1/1

 no ip address

 shutdown

!

interface TenGigabitEthernet1/2

 no ip address

 shutdown

!

interface Bridge1

 ip address 192.168.20.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

0806062A8503020203307F3123302106092A864886F70D010901161473757070

6F72744063727970746F70726F2E7275310B3009060355040613025255310F30

0D060355040713064D6F73636F7731173015060355040A130E43525950544F2D

50524F204C4C433121301F0603550403131843525950544F2D50524F20546573

742043656E7465722032301E170D3134303830353133343432345A170D313930

3830353133353430335A307F3123302106092A864886F70D0109011614737570

706F72744063727970746F70726F2E7275310B3009060355040613025255310F

300D060355040713064D6F73636F7731173015060355040A130E43525950544F

2D50524F204C4C433121301F0603550403131843525950544F2D50524F205465

73742043656E74657220323063301C06062A8503020213301206072A85030202

230106072A850302021E010343000440E0520ADC47DC29BDD7205F0C487CEFD4

8D1E7625D0BD52058EADCDCACB660CA6E9E6FA5026E492206E70804ABCD6FD0E

3710C7E68501B2EDD6628EB9B7CDC79EA351304F300B0603551D0F0404030201

86300F0603551D130101FF040530030101FF301D0603551D0E0416041415317C

B08D1ADE66D7159C4952971724B9017A83301006092B06010401823715010403

020100300806062A8503020203034100D8CA1C4BE9612065472CD5C8EA3888DE

CDEC71C845BFBF9CE5DEFF555A772499EDE0B922D1ABE7F74FE6D06F7B8F5A2A

E34EE9640D905032C1F1E3B4491257D5

 

quit

!

end

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

hostname spoke

 

username admin

  password encrypted $6$qvJ4ibaP9kP34W0F$HyuYroGstHEg8sLYIe5bwcY9.PwpRu5oepCGP/Q05LEyIUVhOl.To4q3/mjLpFYmv4jPB/gdmURF1oTGZliAk0

exit

username cscons

  password encrypted $6$FHGi1zzLNt6vcPJ5$BL5rHycBbnj5gR2RENb21hL1.nHUk0tKJ.POiX7UB.kNdHK18bmDxxRbwuBULyNAPf6guwbjQGqce/xKyhncw/

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

  shutdown

exit

interface gigabitethernet 1/0/4

  shutdown

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

      match source-address any

      match destination-address any

      match ike-local

      action source-nat off

      enable

    exit

    rule 20

      match protocol any

      match source-address LAN_SPOKE

      match destination-address LAN_HUB

      action source-nat off

      enable

    exit

    rule 30

      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 GigabitEthernet1/3

 no ip address

 shutdown

!

interface GigabitEthernet1/4

 no ip address

 shutdown

!

interface GigabitEthernet1/5

 no ip address

!

interface GigabitEthernet1/6

 no ip address

!

interface GigabitEthernet1/7

 no ip address

!

interface GigabitEthernet1/8

 no ip address

!

!

!

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

0806062A8503020203307F3123302106092A864886F70D010901161473757070

6F72744063727970746F70726F2E7275310B3009060355040613025255310F30

0D060355040713064D6F73636F7731173015060355040A130E43525950544F2D

50524F204C4C433121301F0603550403131843525950544F2D50524F20546573

742043656E7465722032301E170D3134303830353133343432345A170D313930

3830353133353430335A307F3123302106092A864886F70D0109011614737570

706F72744063727970746F70726F2E7275310B3009060355040613025255310F

300D060355040713064D6F73636F7731173015060355040A130E43525950544F

2D50524F204C4C433121301F0603550403131843525950544F2D50524F205465

73742043656E74657220323063301C06062A8503020213301206072A85030202

230106072A850302021E010343000440E0520ADC47DC29BDD7205F0C487CEFD4

8D1E7625D0BD52058EADCDCACB660CA6E9E6FA5026E492206E70804ABCD6FD0E

3710C7E68501B2EDD6628EB9B7CDC79EA351304F300B0603551D0F0404030201

86300F0603551D130101FF040530030101FF301D0603551D0E0416041415317C

B08D1ADE66D7159C4952971724B9017A83301006092B06010401823715010403

020100300806062A8503020203034100D8CA1C4BE9612065472CD5C8EA3888DE

CDEC71C845BFBF9CE5DEFF555A772499EDE0B922D1ABE7F74FE6D06F7B8F5A2A

E34EE9640D905032C1F1E3B4491257D5

 

quit

!

end