Схема:

Задача:
Настроить GRE over IPsec туннель между ESR-1 и ESR-2 для предоставления доступа между подсетями 192.0.2.128/25 и 198.51.100.128/25.  Firewall включен.

Используемые алгоритмы для IKE SA:

1) IKE version: 1
2) Authentication algorithm: sha2-256
3) Encryption algorithm: aes256cbc
4) DH-group: 19

Используемые алгоритмы для IPseс SA:
1) Authentication algorithm: sha2-256

2) Encryption algorithm: aes256cbc
3) PFS DH-group: 19
4) Protocol: ESP

Решение:
Поэтапная настройка ESR-1:
1) Создадим зоны безопасности, настроим интерфейсы и определим их к зонам безопасности в соответствии со схемой, а также настроим маршрут по умолчанию:

ESR-1# configure terminal 
ESR-1(config)# security zone trusted
ESR-1(config-security-zone)# exit
ESR-1(config)# security zone untrusted
ESR-1(config-security-zone)# exit
ESR-1(config)# 
ESR-1(config)# interface gigabitethernet 1/0/1 
ESR-1(config-if-gi)# security-zone untrusted 
ESR-1(config-if-gi)# ip address 203.0.113.2/30 
ESR-1(config-if-gi)# exit
ESR-1(config)# 
ESR-1(config)# interface gigabitethernet 1/0/2
ESR-1(config-if-gi)# security-zone trusted 
ESR-1(config-if-gi)# ip address 192.0.2.129/25 
ESR-1(config-if-gi)# exit
ESR-1(config)# 
ESR-1(config)# ip route 0.0.0.0/0 203.0.113.1

2) Настроим туннель GRE согласно схеме, туннель GRE отнесём к зоне безопасности trusted, а также добавить маршрут до подсети 198.51.100.128/25 через данный туннель:

ESR-1(config)# tunnel gre 1 
ESR-1(config-gre)# ttl 255
ESR-1(config-gre)# mtu 1400
ESR-1(config-gre)# keepalive enable
ESR-1(config-gre)# security-zone trusted 
ESR-1(config-gre)# local address 203.0.113.2
ESR-1(config-gre)# remote address 203.0.113.6
ESR-1(config-gre)# ip address 192.0.2.1/30 
ESR-1(config-gre)# ip tcp adjust-mss 1360
ESR-1(config-gre)# enable 
ESR-1(config-gre)# exit
ESR-1(config)# 
ESR-1(config)# ip route 198.51.100.128/25 tunnel gre 1

3) Настроим IPsec согласно исходным алгоритмам.
Создадим профиль протокола IKE. В профиле укажем DH-group 19, алгоритм шифрования aes256cbc, алгоритм аутентификации sha2-256. Данные параметры безопасности используются для защиты IKE-соединения.

ESR-1(config)# security ike proposal ike_proposal
ESR-1(config-ike-proposal)# authentication algorithm sha2-256
ESR-1(config-ike-proposal)# encryption algorithm aes256
ESR-1(config-ike-proposal)# dh-group 19
ESR-1(config-ike-proposal)# exit

Создадим политику протокола IKE. В политике указывается список профилей протокола IKE, по которым могут согласовываться узлы. Также настроим ключ для аутентификации по PSK:

ESR-1(config)# security ike policy ike_policy
ESR-1(config-ike-policy)# pre-shared-key ascii-text password
ESR-1(config-ike-policy)# proposal ike_proposal
ESR-1(config-ike-policy)# exit

Создадим шлюз протокола IKE. В данном шлюзе необходимо указать политику IKE, версию IKE (по умолчанию используется 1-ая версия и настраивать не обязательно), селекторы трафика, режим для Policy IPsec, а также DPD в режиме clear:

ESR-1(config)# security ike gateway ike_gateway
ESR-1(config-ike-gw)# ike-policy ike_policy
ESR-1(config-ike-gw)# version v1-only
ESR-1(config-ike-gw)# local address 203.0.113.2
ESR-1(config-ike-gw)# local network 203.0.113.2/32 protocol gre 
ESR-1(config-ike-gw)# remote address 203.0.113.6
ESR-1(config-ike-gw)# remote network 203.0.113.6/32 protocol gre 
ESR-1(config-ike-gw)# mode policy-based
ESR-1(config-ike-gw)# dead-peer-detection action clear

ESR-1(config-ike-gw)# exit

Создадим профиль параметров безопасности для IPsec-туннеля. В профиле укажем PFS DH-group 19, алгоритм шифрования aes256cbc, алгоритм аутентификации sha2-256. Данные параметры безопасности используются для защиты IPsec-туннеля.

ESR-1(config)# security ipsec proposal ipsec_proposal
ESR-1(config-ipsec-proposal)# authentication algorithm sha2-256
ESR-1(config-ipsec-proposal)# encryption algorithm aes256
ESR-1(config-ipsec-proposal)# pfs dh-group 19
ESR-1(config-ipsec-proposal)# exit

Создадим политику для IPsec-туннеля. В политике указывается список профилей IPsec-туннеля, по которым могут согласовываться узлы.

ESR-1(config)# security ipsec policy ipsec_policy
ESR-1(config-ipsec-policy)# proposal ipsec_proposal
ESR-1(config-ipsec-policy)# exit

Создадим IPsec VPN. В VPN указывается шлюз IKE-протокола, политика IPsec-туннеля, способ установления соединения. После ввода всех параметров включим туннель командой enable:

ESR-1(config)# security ipsec vpn ipsec_vpn
ESR-1(config-ipsec-vpn)# ike establish-tunnel route
ESR-1(config-ipsec-vpn)# ike gateway ike_gateway
ESR-1(config-ipsec-vpn)# ike ipsec-policy ipsec_policy
ESR-1(config-ipsec-vpn)# enable
ESR-1(config-ipsec-vpn)# exit

4) Настроим Firewall.
Разрешим прохождения любого трафика между tunnel gre 1 и interfaces gigabitethernet 1/0/2:

ESR-1(config)# security zone-pair trusted trusted 
ESR-1(config-security-zone-pair)# rule 1
ESR-1(config-security-zone-pair-rule)# action permit 
ESR-1(config-security-zone-pair-rule)# enable 
ESR-1(config-security-zone-pair-rule)# exit 
ESR-1(config-security-zone-pair)# exit 

Настроим разрешающие правила для обработки протоколов ISAKMP, ESP и GRE для трафика из зоны безопасности интерфейса (untrusted) в зону маршрутизатора (self):

ESR-1(config)# security zone-pair untrusted self 
ESR-1(config-security-zone-pair)# rule 1
ESR-1(config-security-zone-pair-rule)# action permit 
ESR-1(config-security-zone-pair-rule)# match protocol udp 
ESR-1(config-security-zone-pair-rule)# match destination-port object-group ISAKMP_PORTS 
ESR-1(config-security-zone-pair-rule)# enable 
ESR-1(config-security-zone-pair-rule)# exit 
ESR-1(config-security-zone-pair)# rule 2
ESR-1(config-security-zone-pair-rule)# action permit 
ESR-1(config-security-zone-pair-rule)# match protocol esp 
ESR-1(config-security-zone-pair-rule)# enable 
ESR-1(config-security-zone-pair-rule)# exit 
ESR-1(config-security-zone-pair)# rule 3
ESR-1(config-security-zone-pair-rule)# action permit 
ESR-1(config-security-zone-pair-rule)# match protocol gre 
ESR-1(config-security-zone-pair-rule)# enable 
ESR-1(config-security-zone-pair-rule)# exit 
ESR-1(config-security-zone-pair)# exit 

5. Применим и сохраним конфигурацию:

ESR-1(config)# exit 
Warning: you have uncommitted configuration changes.
ESR-1# commit 
ESR-1# confirm


Аналогичным образом настроим ESR-2 в соответствии со схемой:

ESR-2# configure terminal 
ESR-2(config)# security zone trusted
ESR-2(config-security-zone)# exit
ESR-2(config)# security zone untrusted
ESR-2(config-security-zone)# exit
ESR-2(config)# 
ESR-2(config)# interface gigabitethernet 1/0/1 
ESR-2(config-if-gi)# security-zone untrusted 
ESR-2(config-if-gi)# ip address 203.0.113.6/30 
ESR-2(config-if-gi)# exit
ESR-2(config)# 
ESR-2(config)# interface gigabitethernet 1/0/2
ESR-2(config-if-gi)# security-zone trusted 
ESR-2(config-if-gi)# ip address 198.51.100.129/25 
ESR-2(config-if-gi)# exit
ESR-2(config)# 
ESR-2(config)# ip route 0.0.0.0/0 203.0.113.5
ESR-2(config)# 
ESR-2(config)# tunnel gre 1 
ESR-2(config-gre)# ttl 255
ESR-2(config-gre)# mtu 1400
ESR-2(config-gre)# keepalive enable

ESR-2(config-gre)# security-zone trusted 
ESR-2(config-gre)# local address 203.0.113.6
ESR-2(config-gre)# remote address 203.0.113.2
ESR-2(config-gre)# ip address 192.0.2.2/30 
ESR-2(config-gre)# ip tcp adjust-mss 1360
ESR-2(config-gre)# enable 
ESR-2(config-gre)# exit
ESR-2(config)# 
ESR-2(config)# ip route 192.0.2.128/25 tunnel gre 1
ESR-2(config)# 
ESR-2(config)# security ike proposal ike_proposal
ESR-2(config-ike-proposal)# authentication algorithm sha2-256
ESR-2(config-ike-proposal)# encryption algorithm aes256
ESR-2(config-ike-proposal)# dh-group 19
ESR-2(config-ike-proposal)# exit
ESR-2(config)# 
ESR-2(config)# security ike policy ike_policy
ESR-2(config-ike-policy)# pre-shared-key ascii-text password
ESR-2(config-ike-policy)# proposal ike_proposal
ESR-2(config-ike-policy)# exit
ESR-2(config)# 
ESR-2(config)# security ike gateway ike_gateway
ESR-2(config-ike-gw)# ike-policy ike_policy
ESR-1(config-ike-gw)# version v1-only
ESR-2(config-ike-gw)# local address 203.0.113.6
ESR-2(config-ike-gw)# local network 203.0.113.6/32 protocol gre 
ESR-2(config-ike-gw)# remote address 203.0.113.2
ESR-2(config-ike-gw)# remote network 203.0.113.2/32 protocol gre 
ESR-2(config-ike-gw)# mode policy-based
ESR-2(config-ike-gw)# dead-peer-detection action clear

ESR-2(config-ike-gw)# exit
ESR-2(config)# 
ESR-2(config)# security ipsec proposal ipsec_proposal
ESR-2(config-ipsec-proposal)# authentication algorithm sha2-256
ESR-2(config-ipsec-proposal)# encryption algorithm aes256
ESR-2(config-ipsec-proposal)# pfs dh-group 19
ESR-2(config-ipsec-proposal)# exit
ESR-2(config)# 
ESR-2(config)# security ipsec policy ipsec_policy
ESR-2(config-ipsec-policy)# proposal ipsec_proposal
ESR-2(config-ipsec-policy)# exit
ESR-2(config)# 
ESR-2(config)# security ipsec vpn ipsec_vpn
ESR-2(config-ipsec-vpn)# ike establish-tunnel route
ESR-2(config-ipsec-vpn)# ike gateway ike_gateway
ESR-2(config-ipsec-vpn)# ike ipsec-policy ipsec_policy
ESR-2(config-ipsec-vpn)# enable
ESR-2(config-ipsec-vpn)# exit
ESR-2(config)# 
ESR-2(config)# security zone-pair trusted trusted 
ESR-2(config-security-zone-pair)# rule 1
ESR-2(config-security-zone-pair-rule)# action permit 
ESR-2(config-security-zone-pair-rule)# enable 
ESR-2(config-security-zone-pair-rule)# exit 
ESR-2(config-security-zone-pair)# exit 
ESR-2(config)# 
ESR-2(config)# object-group service ISAKMP_PORTS
ESR-2(config-object-group-service)# port-range 500
ESR-2(config-object-group-service)# port-range 4500
ESR-2(config-object-group-service)# exit 
ESR-2(config)# 
ESR-2(config)# security zone-pair untrusted self 
ESR-2(config-security-zone-pair)# rule 1
ESR-2(config-security-zone-pair-rule)# action permit 
ESR-2(config-security-zone-pair-rule)# match protocol udp 
ESR-2(config-security-zone-pair-rule)# match destination-port object-group ISAKMP_PORTS 
ESR-2(config-security-zone-pair-rule)# enable 
ESR-2(config-security-zone-pair-rule)# exit 
ESR-2(config-security-zone-pair)# rule 2
ESR-2(config-security-zone-pair-rule)# action permit 
ESR-2(config-security-zone-pair-rule)# match protocol esp 
ESR-2(config-security-zone-pair-rule)# enable 
ESR-2(config-security-zone-pair-rule)# exit 
ESR-2(config-security-zone-pair)# rule 3
ESR-2(config-security-zone-pair-rule)# action permit 
ESR-2(config-security-zone-pair-rule)# match protocol gre 
ESR-2(config-security-zone-pair-rule)# enable 
ESR-2(config-security-zone-pair-rule)# exit 
ESR-2(config-security-zone-pair)# exit 

  • No labels