Задача:
Настроить GRE over IPSec туннель между ESR1 и ESR2.
Схема
Данные:
IP-address интерфейса ESR1 - 180.10.0.1/30
IP-address интерфейса ESR2 - 80.66.0.1/30
Локальные подсети:
LAN1: 1.1.1.0/24
LAN2: 2.2.2.0/24
Параметры IKE:
алгоритм шифрования: AES 128 bit;
алгоритм аутентификации: MD5;
группа Диффи-Хэллмана: 19.
Параметры IPSec:
алгоритм шифрования: AES 128 bit;
алгоритм аутентификации: MD5;
группа Диффи-Хэллмана: 19.
Решение:
Конфигурирование ESR1
Настроим внешний сетевой интерфейс и определим принадлежность к зоне безопасности:
ESR1(config)# interface gigabitethernet 1/0/1 ESR1(config-if-gi)# security-zone untrusted ESR1(config-if-gi)# ip address 180.10.0.1/30 ESR1(config-if-gi)# exit
Настроим GRE туннель, определим принадлежность к зоне безопасности и включим туннель командой enable:
ESR1(config)# tunnel gre 1 ESR1(config-gre)# ttl 16 ESR1(config-gre)# security-zone trusted ESR1(config-gre)# local address 180.10.0.1 ESR1(config-gre)# remote address 80.66.0.1 ESR1(config-gre)# ip address 10.10.10.1/30 ESR1(config-gre)# enable ESR1(config-gre)# exit
Создадим статический маршрут для подсети 80.66.0.0/30:
ESR1(config)# ip route 80.66.0.0/30 180.10.0.2
Создадим статический маршрут подсети LAN2 - 2.2.2.0/24 через tunnel gre 1:
ESR1(config)# ip route 2.2.2.0/24 tunnel gre 1
Создадим профиль протокола IKE. В профиле укажем группу Диффи-Хэллмана 19, алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IKE-соединения:
ESR1(config)# security ike proposal ike_prop1 ESR1(config-ike-proposal)# authentication algorithm md5 ESR1(config-ike-proposal)# encryption algorithm aes128 ESR1(config-ike-proposal)# dh-group 19 ESR1(config-ike-proposal)# exit
Создадим политику протокола IKE. В политике указывается список профилей протокола IKE, по которым могут согласовываться узлы и ключ аутентификации:
ESR1(config)# security ike policy ike_pol1 ESR1(config-ike-policy)# pre-shared-key ascii-text password ESR1(config-ike-policy)# proposal ike_prop1 ESR1(config-ike-policy)# exit
Создадим шлюз протокола IKE. В данном профиле указывается GRE-туннель, политика, версия протокола и режим перенаправления трафика в туннель:
ESR1(config)# security ike gateway ike_gw1 ESR1(config-ike-gw)# ike-policy ike_pol1 ESR1(config-ike-gw)# local address 180.10.0.1 ESR1(config-ike-gw)# local network 180.10.0.1/32 protocol gre ESR1(config-ike-gw)# remote address 80.66.0.1 ESR1(config-ike-gw)# remote network 80.66.0.1/32 protocol gre ESR1(config-ike-gw)# mode policy-based ESR1(config-ike-gw)# exit
Создадим профиль параметров безопасности для IPsec-туннеля. В профиле укажем группу Диффи-Хэллмана 19, алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IPsec-туннеля:
ESR1(config)# security ipsec proposal ipsec_prop1 ESR1(config-ipsec-proposal)# authentication algorithm md5 ESR1(config-ipsec-proposal)# encryption algorithm aes128 ESR1(config-ipsec-proposal)# pfs dh-group 19 ESR1(config-ipsec-proposal)# exit
Создадим политику для IPsec-туннеля. В политике указывается список профилей IPsec-туннеля, по которым могут согласовываться узлы.
ESR1(config)# security ipsec policy ipsec_pol1 ESR1(config-ipsec-policy)# proposal ipsec_prop1 ESR1(config-ipsec-policy)# exit
Создадим IPsec VPN. В VPN указывается шлюз IKE-протокола, политика IP sec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой enable.
ESR1(config)# security ipsec vpn ipsec1 ESR1(config-ipsec-vpn)# mode ike ESR1(config-ipsec-vpn)# ike establish-tunnel route ESR1(config-ipsec-vpn)# ike gateway ike_gw1 ESR1(config-ipsec-vpn)# ike ipsec-policy ipsec_pol1 ESR1(config-ipsec-vpn)# enable ESR1(config-ipsec-vpn)# exit
Дополнительно в security zone-pair untrusted self необходимо разрешить протоколы для GRE over IPSec туннеля:
ESR1(config)# object-group service ISAKMP_PORT ESR1(config-object-group-service)# port-range 500 ESR1(config-object-group-service)# poRt-range 4500 ESR1(config-object-group-service)# exit ESR1(config)# security zone-pair untrusted self ESR1(config-zone-pair)# rule 1 ESR1(config-zone-pair-rule)# action permit ESR1(config-zone-pair-rule)# match protocol udp ESR1(config-zone-pair-rule)# match destination-port ISAKMP_PORT ESR1(config-zone-pair-rule)# enable ESR1(config-zone-pair-rule)# exit ESR1(config-zone-pair)# rule 2 ESR1(config-zone-pair-rule)# action permit ESR1(config-zone-pair-rule)# match protocol gre ESR1(config-zone-pair-rule)# enable ESR1(config-zone-pair-rule)# exit ESR1(config-zone-pair)# rule 3 ESR1(config-zone-pair-rule)# action permit ESR1(config-zone-pair-rule)# match protocol esp ESR1(config-zone-pair-rule)# enable ESR1(config-zone-pair-rule)# exit ESR1(config-zone-pair)# rule 4 ESR1(config-zone-pair-rule)# action permit ESR1(config-zone-pair-rule)# match protocol ah ESR1(config-zone-pair-rule)# enable ESR1(config-zone-pair-rule)# exit ESR1(config-zone-pair)# exit
Конфигурирование ESR2
Настроим внешний сетевой интерфейс и определим принадлежность к зоне безопасности:
ESR2(config)# interface gigabitethernet 1/0/1 ESR2(config-if-gi)# security-zone untrusted ESR2(config-if-gi)# ip address 80.66.0.1/30 ESR2(config-if-gi)# exit
Настроим GRE туннель, определим принадлежность к зоне безопасности и включим туннель командой enable:
ESR2(config)# tunnel gre 1 ESR2(config-gre)# ttl 16 ESR2(config-gre)# security-zone trusted ESR2(config-gre)# local address 80.66.0.1 ESR2(config-gre)# remote address 180.10.0.1 ESR2(config-gre)# ip address 10.10.10.2/30 ESR2(config-gre)# enable ESR2(config-gre)# exit
Создадим статический маршрут для подсети 180.10.0.0/30:
ESR2(config)# ip route 180.10.0.0/30 80.66.0.2
Создадим статический маршрут подсети LAN1 - 1.1.1.0/24 через tunnel gre 1:
ESR2(config)# ip route 1.1.1.0/24 tunnel gre 1
Создадим профиль протокола IKE. В профиле укажем группу Диффи-Хэллмана 19, алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IKE-соединения:
ESR2(config)# security ike proposal ike_prop1 ESR2(config-ike-proposal)# authentication algorithm md5 ESR2(config-ike-proposal)# encryption algorithm aes128 ESR2(config-ike-proposal)# dh-group 19 ESR2(config-ike-proposal)# exit
Создадим политику протокола IKE. В политике указывается список профилей протокола IKE, по которым могут согласовываться узлы и ключ аутентификации:
ESR2(config)# security ike policy ike_pol1 ESR2(config-ike-policy)# pre-shared-key ascii-text password ESR2(config-ike-policy)# proposal ike_prop1 ESR2(config-ike-policy)# exit
Создадим шлюз протокола IKE. В данном профиле указывается GRE-туннель, политика, версия протокола и режим перенаправления трафика в туннель:
ESR2(config)# security ike gateway ike_gw1 ESR2(config-ike-gw)# ike-policy ike_pol1 ESR2(config-ike-gw)# local address 80.66.0.1 ESR2(config-ike-gw)# local network 80.66.0.1/32 protocol gre ESR2(config-ike-gw)# remote address 180.10.0.1 ESR2(config-ike-gw)# remote network 180.10.0.1/32 protocol gre ESR2(config-ike-gw)# mode policy-based ESR2(config-ike-gw)# exit
Создадим профиль параметров безопасности для IPsec-туннеля. В профиле укажем группу Диффи-Хэллмана 19, алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IPsec-туннеля:
ESR2(config)# security ipsec proposal ipsec_prop1 ESR2(config-ipsec-proposal)# authentication algorithm md5 ESR2(config-ipsec-proposal)# encryption algorithm aes128 ESR2(config-ipsec-proposal)# pfs dh-group 19 ESR2(config-ipsec-proposal)# exit
Создадим политику для IPsec-туннеля. В политике указывается список профилей IPsec-туннеля, по которым могут согласовываться узлы.
ESR2(config)# security ipsec policy ipsec_pol1 ESR2(config-ipsec-policy)# proposal ipsec_prop1 ESR2(config-ipsec-policy)# exit
Создадим IPsec VPN. В VPN указывается шлюз IKE-протокола, политика IP sec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой enable.
ESR2(config)# security ipsec vpn ipsec1 ESR2(config-ipsec-vpn)# mode ike ESR2(config-ipsec-vpn)# ike establish-tunnel route ESR2(config-ipsec-vpn)# ike gateway ike_gw1 ESR2(config-ipsec-vpn)# ike ipsec-policy ipsec_pol1 ESR2(config-ipsec-vpn)# enable ESR2(config-ipsec-vpn)# exit