...
Конфигурирование HUB:
Предварительно настроим протокол OSPF:Блок кода esr(config)# router ospf log-adjacency-changes esr(config)# router ospf 1 esr(config-ospf)# router-id 77.77.77.77 esr(config-ospf)# area 10.10.0.0 esr(config-ospf-area)# enable esr(config-ospf-area)# exit esr(config-ospf)# enable esr(config-ospf)# exit
Настроим интерфейс и определим принадлежность к зоне безопасности:
Блок кода esr(config)# security zone untrusted esr(config-zone)# exit esr(config)# interface gigabitethernet 1/0/1 esr(config-if-gi)# security-zone untrusted esr(config-if-gi)# ip address 150.115.0.5/30 esr(config-if-gi)# exit
Scroll Pagebreak
Настроим GRE-туннель, определим принадлежность к зоне безопасности, настроим OSPF на GRE-туннеле, настроим NHRP и включим туннель и NHRP командой enable. Чтобы HUB стал DR, необходимо выставить максимальный приоритет:Блок кода esr(config)# tunnel gre 1 esr(config-gre)# ttl 16 esr(config-gre)# mtu 1416 esr(config-gre)# multipoint esr(config-gre)# security-zone untrusted esr(config-gre)# local address 150.115.0.5 esr(config-gre)# ip address 10.10.0.1/28 esr(config-gre)# ip ospf instance 1 esr(config-gre)# ip ospf area 10.10.0.0 esr(config-gre)# ip ospf priority 255 esr(config-gre)# ip ospf esr(config-gre)# ip nhrp multicast dynamic esr(config-gre)# ip nhrp enable esr(config-gre)# enable esr(config-gre)# exit
Создадим статические маршруты для подсетей интерфейсов spoke 180.100.0.8/30 и 140.114.0.4/30:
Блок кода esr(config)# ip route 180.100.0.8/30 150.115.0.6 esr(config)# ip route 140.114.0.4/30 150.115.0.6
Произведём настройку IPsec для HUB:
Блок кода esr(config)# security ike proposal ike_prop1 esr(config-ike-proposal)# authentication algorithm md5 esr(config-ike-proposal)# encryption algorithm aes128 esr(config-ike-proposal)# dh-group 2 esr(config-ike-proposal)# exit
Блок кода esr(config)# security ike policy ike_pol1 esr(config-ike-policy)# pre-shared-key ascii-text password esr(config-ike-policy)# proposal ike_prop1 esr(config-ike-policy)# exit
Блок кода esr(config)# security ike gateway ike_spoke esr(config-ike-gw)# ike-policy ike_pol1 esr(config-ike-gw)# local address 150.115.0.5 esr(config-ike-gw)# local network 150.115.0.5/32 protocol gre esr(config-ike-gw)# remote address any esr(config-ike-gw)# remote network any esr(config-ike-gw)# mode policy-based esr(config-ike-gw)# exit
Блок кода esr(config)# security ipsec proposal ipsec_prop1 esr(config-ipsec-proposal)# authentication algorithm md5 esr(config-ipsec-proposal)# encryption algorithm aes128 esr(config-ipsec-proposal)# pfs dh-group 2 esr(config-ipsec-proposal)# exit
Блок кода esr(config)# security ipsec policy ipsec_pol1 esr(config-ipsec-policy)# proposal ipsec_prop1 esr(config-ipsec-policy)# exit
Блок кода esr(config)# security ipsec vpn ipsec_spoke esr(config-ipsec-vpn)# mode ike esr(config-ipsec-vpn)# type transport esr(config-ipsec-vpn)# ike establish-tunnel route esr(config-ipsec-vpn)# ike gateway ike_spoke esr(config-ipsec-vpn)# ike ipsec-policy ipsec_pol1 esr(config-ipsec-vpn)# enable esr(config-ipsec-vpn)# exit
Привяжем IPsec к GRE-туннелю, чтобы клиенты могли устанавливать шифрованное соединение:
Блок кода esr(config)# tunnel gre 1 esr(config-gre)# ip nhrp ipsec ipsec_spoke dynamic esr(config-gre)# exit
Конфигурирование SPOKE:
Предварительно настроим протокол OSPF с анонсированием подсети LAN1:Блок кода esr(config)# router ospf log-adjacency-changes esr(config)# router ospf 1 esr(config-ospf)# router-id 1.1.1.1 esr(config-ospf)# area 10.10.0.0 esr(config-ospf-area)# network 192.168.1.0/24 esr(config-ospf-area)# enable esr(config-ospf-area)# exit esr(config-ospf)# enable esr(config-ospf)# exit
Настроим интерфейс и определим принадлежность к зоне безопасности:
Блок кода esr(config)# security zone untrusted esr(config-zone)# exit esr(config)# interface gigabitethernet 1/0/1 esr(config-if-gi)# security-zone untrusted esr(config-if-gi)# ip address 180.100.0.10/30 esr(config-if-gi)# exit
Scroll Pagebreak
Настроим GRE-туннель, определим принадлежность к зоне безопасности, настроим OSPF на GRE-туннеле, настроим NHRP и включим туннель и NHRP командой enable. Чтобы HUB стал DR, необходимо выставить минимальный приоритет на spoke:Блок кода esr(config)# tunnel gre 1 esr(config-gre)# ttl 16 esr(config-gre)# mtu 1416 esr(config-gre)# multipoint esr(config-gre)# security-zone untrusted esr(config-gre)# local address 180.100.0.10 esr(config-gre)# ip address 10.10.0.2/28 esr(config-gre)# ip ospf instance 1 esr(config-gre)# ip ospf area 10.10.0.0 esr(config-gre)# ip ospf priority 0 esr(config-gre)# ip ospf esr(config-gre)# ip nhrp holding-time 300 esr(config-gre)# ip nhrp map 10.10.0.1 150.115.0.5 esr(config-gre)# ip nhrp nhs 10.10.0.1/28 esr(config-gre)# ip nhrp multicast nhs esr(config-gre)# ip nhrp enable esr(config-gre)# enable esr(config-gre)# exit
Создадим статические маршруты для подсетей интерфейсов spoke 180.100.0.8/30 и 140.114.0.4/30:
Блок кода esr(config)# ip route 150.115.0.4/30 180.100.0.9 esr(config)# ip route 140.114.0.4/30 180.100.0.9
Произведём настройку IPsec для SPOKE:
Блок кода esr(config)# security ike proposal ike_prop1 esr(config-ike-proposal)# authentication algorithm md5 esr(config-ike-proposal)# encryption algorithm aes128 esr(config-ike-proposal)# dh-group 2 esr(config-ike-proposal)# exit
Блок кода esr(config)# security ike policy ike_pol1 esr(config-ike-policy)# pre-shared-key ascii-text password esr(config-ike-policy)# proposal ike_prop1 esr(config-ike-policy)# exit
Блок кода esr(config)# security ike gateway ike_spoke esr(config-ike-gw)# ike-policy ike_pol1 esr(config-ike-gw)# local address 180.100.0.10 esr(config-ike-gw)# local network 180.100.0.10/32 protocol gre esr(config-ike-gw)# remote address any esr(config-ike-gw)# remote network any esr(config-ike-gw)# mode policy-based esr(config-ike-gw)# exit esr(config)# security ike gateway ike_hub esr(config-ike-gw)# ike-policy ike_pol1 esr(config-ike-gw)# local address 180.100.0.10 esr(config-ike-gw)# local network 180.100.0.10/32 protocol gre esr(config-ike-gw)# remote address 150.115.0.5 esr(config-ike-gw)# remote network 150.115.0.5/32 protocol gre esr(config-ike-gw)# mode policy-based esr(config-ike-gw)# exit
Блок кода esr(config)# security ipsec proposal ipsec_prop1 esr(config-ipsec-proposal)# authentication algorithm md5 esr(config-ipsec-proposal)# encryption algorithm aes128 esr(config-ipsec-proposal)# pfs dh-group 2 esr(config-ipsec-proposal)# exit
Блок кода esr(config)# security ipsec policy ipsec_pol1 esr(config-ipsec-policy)# proposal ipsec_prop1 esr(config-ipsec-policy)# exit
Блок кода esr(config)# security ipsec vpn ipsec_spoke esr(config-ipsec-vpn)# mode ike esr(config-ipsec-vpn)# type transport esr(config-ipsec-vpn)# ike establish-tunnel route esr(config-ipsec-vpn)# ike gateway ike_spoke esr(config-ipsec-vpn)# ike ipsec-policy ipsec_pol1 esr(config-ipsec-vpn)# enable esr(config-ipsec-vpn)# exit esr(config)# security ipsec vpn ipsec_hub esr(config-ipsec-vpn)# mode ike esr(config-ipsec-vpn)# type transport esr(config-ipsec-vpn)# ike establish-tunnel route esr(config-ipsec-vpn)# ike gateway ike_hub esr(config-ipsec-vpn)# ike ipsec-policy ipsec_pol1 esr(config-ipsec-vpn)# enable esr(config-ipsec-vpn)# exit
Привяжем IPsec к GRE-туннелю, для возможности установления шифрованного соединения с сервером и с другими клиентами сети:
Блок кода esr(config)# tunnel gre 1 esr(config-gre)# ip nhrp ipsec ipsec_hub static esr(config-gre)# ip nhrp ipsec ipsec_spoke dynamic esr(config-gre)# exit
Scroll Pagebreak Состояние NHRP-записей можно посмотреть командой:
Блок кода esr# show ip nhrp
Дополнительно в security zone-pair untrusted self необходимо разрешить протоколы для GRE over IPSec-туннеля, а также для протокола OSPF:
Блок кода esr(config)# object-group service ISAKMP_PORT esr(config-object-group-service)# port-range 500 esr(config-object-group-service)# port-range 4500 esr(config-object-group-service)# exit esr(config)# security zone-pair untrusted self esr(config-zone-pair)# rule 1 esr(config-zone-pair-rule)# action permit esr(config-zone-pair-rule)# match protocol udp esr(config-zone-pair-rule)# match destination-port object-group ISAKMP_PORT esr(config-zone-pair-rule)# enable esr(config-zone-pair-rule)# exit esr(config-zone-pair)# rule 2 esr(config-zone-pair-rule)# action permit esr(config-zone-pair-rule)# match protocol gre esr(config-zone-pair-rule)# enable esr(config-zone-pair-rule)# exit esr(config-zone-pair)# rule 3 esr(config-zone-pair-rule)# action permit esr(config-zone-pair-rule)# match protocol esp esr(config-zone-pair-rule)# enable esr(config-zone-pair-rule)# exit esr(config-zone-pair)# rule 4 esr(config-zone-pair-rule)# action permit esr(config-zone-pair-rule)# match protocol ospf esr(config-zone-pair-rule)# enable esr(config-zone-pair-rule)# exit esr(config-zone-pair)# exit
...
Создадим политику протокола IKE. В политике указыважем раннее укажем ранее созданный набор алгоритмов, а также укажем общий известный ключ, который будет использован при аутентификации IKE-сессии:
| Блок кода |
|---|
esr(config)# security ike policy ike_pol1 esr(config-ike-policy)# pre-shared-key hexadecimal 123FFF esr(config-ike-policy)# proposal ike_prop1 esr(config-ike-policy)# exit |
| Scroll Pagebreak |
|---|
Создадим шлюз протокола IKE. В данном разделе привяжем раннее созданную политику протокола IKE, укажем IP-адреса для построения IPsec туннеля и набор локальных и удаленных сетей, трафик между которыми необходимо будет шифровать. Также укажем версию протокола IKE и "policy-based" в качестве режима перенаправления трафика в туннель:
...
Создадим политику протокола IKE. В политике указыважем раннее укажем ранее созданный набор алгоритмов, а также укажем общий известный ключ, который будет использован при аутентификации IKE-сессии:
...
Создадим шлюз протокола IKE. В данном разделе привяжем раннее созданную политику протокола IKE, укажем IP-адреса для построения IPsec туннеля и набор локальных и удаленных сетей, трафик между которыми необходимо будет шифровать. Также укажем версию протокола IKE и "policy«policy-based" based» в качестве режима перенаправления трафика в туннель:
...
Создадим политику для IPsec-туннеля. В политике указывается раннее ранее описанный набор алгоритмов для IPsec-туннеля.
| Блок кода |
|---|
esr(config)# security ipsec policy ipsec_pol1 esr(config-ipsec-policy)# proposal ipsec_prop1 esr(config-ipsec-policy)# exit |
| Scroll Pagebreak |
|---|
Создадим Создадим IPsec VPN. В VPN указывается шлюз IKE-протокола, политика IPsec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой enable:
...
R2 IP-адрес – 203.0.113.1;scroll-pagebreak
PKI:
- R1 выступает в роли PKI-сервера - – удостоверяющего центра с самоподписанным сертификатом;
- На R1 и R2 настраиваются PKI-клиенты, запрашивающие выпуск сертификатов для IPsec VPN на R1.
...
- группа Диффи-Хэллмана: 2;
- алгоритм шифрования: AES 128 bit;
- алгоритм аутентификации: MD5;
- аутентификация по сертификатам X.509.
Scroll Pagebreak
IPsec:
- алгоритм шифрования: AES 128 bit;
- алгоритм аутентификации: MD5.
...
| Блок кода |
|---|
esr# configure esr(config)# interface gigabitethernet 1/0/1 esr(config-if-gi)# ip address 198.51.100.1/24 esr(config-if-gi)# exit |
Настроим NTP-клиент клиента на получение точного времени от шлюза интернетИнтернет-провайдера:
| Блок кода |
|---|
esr(config)# ntp enable esr(config)# ntp server 198.51.100.15 esr(config-ntp-server)# exit esr(config)# |
...
| Блок кода |
|---|
esr(config)# crypto pki server esr(config-pki-server)# subject-name esr(config-pki-server-subject-name)# country RU esr(config-pki-server-subject-name)# state Moscow esr(config-pki-server-subject-name)# locality Moscow esr(config-pki-server-subject-name)# organization Company esr(config-pki-server-subject-name)# common-name ca.company.loc esr(config-pki-server-subject-name)# exit esr(config-pki-server)# source-interface gi 1/0/1 esr(config-pki-server)# challenge-password password esr(config-pki-server)# lifetime 7 esr(config-pki-server)# enable esr(config-pki-server)# exit esr(config)# |
| Scroll Pagebreak |
|---|
На этом этапе необходимо применить конфигурацию на маршрутизаторе, чтобы получить цифровой отпечаток сертификата PKI-сервера из вывода команды "show crypto pki server", он нам понадобится в дальнейшей настройке PKI-клиентов:
...
Продолжим дальнейшую настройку PKI-клиента. Необходимо заполнить отличительное имя, URL для подключения к PKI-серверу (в случае маршрутизатора R1 - – его собственный IP-адрес, назначенный на внешний интерфейс), раннее полученый ранее полученный цифровой отпечаток сертификата PKI-сервера и доменное имя маршрутизатора в качестве альтернативного имени клиентского сертификата:
...
| Блок кода |
|---|
esr(config)# security ike proposal ike_prop1 esr(config-ike-proposal)# dh-group 2 esr(config-ike-proposal)# authentication algorithm md5 esr(config-ike-proposal)# encryption algorithm aes128 esr(config-ike-proposal)# exit |
| Scroll Pagebreak |
|---|
Создадим политику протокола IKE. В политике указываем раннее ранее созданный набор алгоритмов, в качестве метода аутентификации выбираем "trustpoint" и в команде "crypto trustpoint" указываем имя раннее ранее созданного PKI-клиента, выписываемые им сертификаты будут использованы при аутентификации IKE-сессии:
...
Создадим шлюз протокола IKE. В данном разделе привяжем раннее созданную политику протокола IKE, укажем IP-адреса для построения IPsec туннеля и набор локальных и удаленных сетей, трафик между которыми необходимо будет шифровать. Также укажем версию протокола IKE и "policy«policy-based" based» в качестве режима перенаправления трафика в туннель:
| Примечание |
|---|
Важным моментом при настройке аутентификации по сертификатам X.509 является указание корректных " local id " и " remote id", присутствующих в сертификатах в качестве альтернативных имен сертификата. Поскольку раннее ранее в настройках PKI-клиента в качестве альтернативного имени было указано полное доменное имя маршрутизатора - – укажем его и в командах "local id" и "remote id". |
| Блок кода |
|---|
esr(config)# security ike gateway ike_gw1 esr(config-ike-gw)# ike-policy ike_pol1 esr(config-ike-gw)# local address 198.51.100.1 esr(config-ike-gw)# local network 10.0.0.0/16 esr(config-ike-gw)# remote address 203.0.113.1 esr(config-ike-gw)# remote network 192.0.2.0/24 esr(config-ike-gw)# local id dns r1.company.loc esr(config-ike-gw)# remote id dns r2.company.loc esr(config-ike-gw)# mode policy-based esr(config-ike-gw)# exit |
...
Создадим политику для IPsec-туннеля. В политике указывается раннее ранее описанный набор алгоритмов для IPsec-туннеля.
| Блок кода |
|---|
esr(config)# security ipsec policy ipsec_pol1 esr(config-ipsec-policy)# proposal ipsec_prop1 esr(config-ipsec-policy)# exit |
| Scroll Pagebreak |
|---|
Создадим Создадим IPsec VPN. В VPN указывается указываются шлюз IKE-протокола, политика IPsec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой enable:
...
Произведем настройку настройку PKI-клиента. Необходимо заполнить отличительное имя, URL для подключения к PKI-серверу (в случае маршрутизатора R2 - – внешний IP-адрес маршрутизатора R1), раннее полученый ранее полученный цифровой отпечаток сертификата PKI-сервера и доменное имя маршрутизатора в качестве альтернативного имени клиентского сертификата:
| Блок кода |
|---|
esr(config)# crypto pki trustpoint TP_R2 esr(config-trustpoint)# subject-name esr(config-trustpoint-subject-name)# country RU esr(config-trustpoint-subject-name)# state Moscow esr(config-trustpoint-subject-name)# locality Moscow esr(config-trustpoint-subject-name)# organization Company esr(config-trustpoint-subject-name)# common-name r2.company.loc esr(config-trustpoint-subject-name)# exit esr(config-trustpoint)# subject-alt-name esr(config-trustpoint-san)# dns r2.company.loc esr(config-trustpoint-san)# exit esr(config-trustpoint)# url http://198.51.100.1/ esr(config-trustpoint)# fingerprint 79:D2:B6:7E:DF:77:2D:C5:27:68:99:10:BA:EC:D2:47 esr(config-trustpoint)# challenge-password password esr(config-trustpoint)# enable esr(config-trustpoint)# exit esr(config)# |
| Scroll Pagebreak |
|---|
Перейдем к настройке VPN.
...
Создадим политику протокола IKE. В политике указываем раннее ранее созданный набор алгоритмов, в качестве метода аутентификации выбираем "trustpoint" «trustpoint» и в команде "crypto trustpoint" указываем имя раннее ранее созданного PKI-клиента, выписываемые им сертификаты будут использованы при аутентификации IKE-сессии:
...
Создадим шлюз протокола IKE. В данном разделе привяжем раннее ранее созданную политику протокола IKE, укажем IP-адреса для построения IPsec туннеля и набор локальных и удаленных сетей, трафик между которыми необходимо будет шифровать. Также Также укажем версию протокола IKE и "policy«policy-based" based» в качестве режима перенаправления трафика в туннель:
| Примечание |
|---|
Важным моментом при настройке аутентификации по сертификатам X.509 является указание корректных "local id" и "remote id"«local id» и «remote id», присутствующих в сертификатах в качестве альтернативных имен сертификата. Поскольку раннее ранее в настройках PKI-клиента в качестве альтернативного имени было указано полное доменное имя маршрутизатора - – укажем его и в командах "local id" и " и remote id". |
| Блок кода |
|---|
esr(config)# security ike gateway ike_gw1 esr(config-ike-gw)# ike-policy ike_pol1 esr(config-ike-gw)# remote address 198.51.100.1 esr(config-ike-gw)# remote network 10.0.0.0/16 esr(config-ike-gw)# local address 203.0.113.1 esr(config-ike-gw)# local network 192.0.2.0/24 esr(config-ike-gw)# local id dns r2.company.loc esr(config-ike-gw)# remote id dns r1.company.loc esr(config-ike-gw)# mode policy-based esr(config-ike-gw)# exit |
| Scroll Pagebreak |
|---|
Создадим Создадим набор алгоритмов для IPsec-туннеля. В нем укажем алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IPsec-туннеля:
...
Создадим политику для IPsec-туннеля. В политике указывается раннее ранее описанный набор алгоритмов для IPsec-туннеля.
...
Создадим IPsec VPN. В VPN указывается указываются шлюз IKE-протокола, политика IPsec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой enable:
...
<MODE> – режим переподключения, принимает следующие значения:
- no – установленное подключение XAUTH будет удалено, если для нового подключения XAUTH инициатором соединения будет отправлено уведомление "INITIAL_CONTACT", будет назначен ранее использованный IP-адрес. В противном случае, установленное соединение XAUTH будет удержано. Для нового подключения XAUTH будет назначен новый IP-адрес.
- never – установленное подключение XAUTH будет удержано. Для нового подключения XAUTH будет назначен новый IP-адрес. Уведомление "INITIAL_CONTACT" будет в любом случае проигнорировано.
- replace – установленное подключение XAUTH будет удалено. Для нового подключения XAUTH будет использован ранее использованный IP-адрес.
- keep – установленное подключение XAUTH будет удержано. Новое подключение XAUTH будет отклонено.
...
Конфигурирование R1
Настроим внешний сетевой интерфейс и определим принадлежность к зоне безопасности:Блок кода esr# configure esr(config)# security zone untrusted esr(config-zone)# exit esr(config)# interface gigabitethernet 1/0/1 esr(config-if-gi)# security-zone untrusted esr(config-if-gi)# ip address 180.100.0.1/24 esr(config-if-gi)# exit
Для настройки правил зон безопасности потребуется создать профиль порта протокола ISAKMP:
Блок кода esr(config)# object-group service ISAKMP esr(config-object-group-service)# port-range 500,4500 esr(config-object-group-service)# exit
Создадим профиль протокола IKE. В профиле укажем группу Диффи-Хэллмана 2, алгоритм шифрования 3 DES, алгоритм аутентификации SHA1. Данные параметры безопасности используются для защиты IKE-соединения:
Блок кода esr(config)# security ike proposal IKEPROP esr(config-ike-proposal)# dh-group 2 esr(config-ike-proposal)# authentication algorithm sha1 esr(config-ike-proposal)# encryption algorithm 3des esr(config-ike-proposal)# exit
Создадим политику протокола IKE. В политике указывается список профилей протокола IKE, по которым могут согласовываться узлы, ключ аутентификации и метод аутентификации XAUTH по ключу:
Блок кода esr(config)# security ike policy IKEPOLICY esr(config-ike-policy)# pre-shared-key hexadecimal 123FFF esr(config-ike-policy)# authentication method xauth-psk-key esr(config-ike-policy)# proposal IKEPROP esr(config-ike-policy)# exit
Создадим профиль доступа и заведем в нем пару логин и пароль для клиента IPsec VPN:
Блок кода esr(config)# access profile XAUTH esr(config-access-profile)# user client1 esr(config-profile)# password ascii-text password123 esr(config-profile)# exit esr(config-access-profile)# exit
Создадим пул адресов назначения, из которого будут выдаваться IP клиентам IPsec VPN:
Блок кода esr-1000(config)# address-assignment pool CLIENT_POOL esr-1000(config-pool)# ip prefix 192.0.2.0/24 esr-1000(config-pool)# exit
Создадим шлюз протокола IKE. В данном профиле необходимо указать политику протокола IKE, указать локальную подсеть, в качестве удаленной подсети указать пул адресов назначения, задать режим перенаправления трафика в туннель по политике и использование второго фактора аутентификации XAUTH:
Блок кода esr(config)# security ike gateway IKEGW esr(config-ike-gw)# ike-policy IKEPOLICY esr(config-ike-gw)# local address 180.100.0.1 esr(config-ike-gw)# local network 10.0.0.0/16 esr(config-ike-gw)# remote address any esr(config-ike-gw)# remote network dynamic pool CLIENT_POOL esr(config-ike-gw)# dead-peer-detection action clear esr(config-ike-gw)# mode policy-based esr(config-ike-gw)# access-profile XAUTH esr(config-ike-gw)# exit
Создадим профиль параметров безопасности для IPsec-туннеля. В профиле укажем алгоритм шифрования 3DES, алгоритм аутентификации SHA1. Данные параметры безопасности используются для защиты IPsec-туннеля:
Блок кода esr(config)# security ipsec proposal IPSECPROP esr(config-ipsec-proposal)# authentication algorithm sha1 esr(config-ipsec-proposal)# encryption algorithm 3des esr(config-ipsec-proposal)# exit
Создадим политику для IPsec-туннеля. В политике указывается список профилей IPsec-туннеля, по которым могут согласовываться узлы.
Блок кода esr(config)# security ipsec policy IPSECPOLICY esr(config-ipsec-policy)# proposal IPSECPROP esr(config-ipsec-policy)# exit
Создадим IPsec VPN. В VPN указывается шлюз IKE-протокола, политика IPsec-туннеля, режим обмена ключами и режим ожидания входящего соединения IPsec – by-request. После ввода всех параметров включим туннель командой enable:
Блок кода esr(config)# security ipsec IPSECVPN esr(config-ipsec-vpn)# mode ike esr(config-ipsec-vpn)# ike establish-tunnel by-request esr(config-ipsec-vpn)# ike gateway IKEGW esr(config-ipsec-vpn)# ike ipsec-policy IPSECPOLICY esr(config-ipsec-vpn)# enable esr(config-ipsec-vpn)# exit
Разрешим протокол esp и udp порты 500, 4500 в конфигурации firewall для установления IPsec VPN:
Блок кода esr(config)# security zone-pair untrusted self esr(config-zone-pair)# rule 1 esr(config-zone-pair-rule)# action permit esr(config-zone-pair-rule)# match protocol udp esr(config-zone-pair-rule)# match destination-port object-group ISAKMP esr(config-zone-pair-rule)# enable esr(config-zone-pair-rule)# exit esr(config-zone-pair)# rule 2 esr(config-zone-pair-rule)# action permit esr(config-zone-pair-rule)# match protocol esp esr(config-zone-pair-rule)# enable esr(config-zone-pair-rule)# exit esr(config-zone-pair)# endКонфигурирование R2
Настроим внешний сетевой интерфейс и определим принадлежность к зоне безопасности:Блок кода esr# configure esr(config)# interface gi 1/0/1 esr(config-if)# ip address 120.11.5.1/24 esr(config-if)# security-zone untrusted esr(config-if)# exit
Для настройки правил зон безопасности потребуется создать профиль порта протокола ISAKMP:
Блок кода esr(config)# object-group service ISAKMP esr(config-addr-set)# port-range 500,4500 esr(config-addr-set)# exit
Создадим профиль протокола IKE. В профиле укажем группу Диффи-Хэллмана 2, алгоритм шифрования 3 DES, алгоритм аутентификации SHA1. Данные параметры безопасности используются для защиты IKE-соединения:
Блок кода esr(config)# security ike proposal IKEPROP esr(config-ike-proposal)# dh-group 2 esr(config-ike-proposal)# authentication algorithm sha1 esr(config-ike-proposal)# encryption algorithm 3des esr(config-ike-proposal)# exit
Создадим политику протокола IKE. В политике указывается список профилей протокола IKE, по которым могут согласовываться узлы, ключ аутентификации, метод аутентификации XAUTH по ключу и режим аутентификации – клиент:
Блок кода esr(config)# security ike policy IKEPOLICY esr(config-ike-policy)# pre-shared-key hexadecimal 123FFF esr(config-ike-policy)# authentication method xauth-psk-key esr(config-ike-policy)# authentication mode client esr(config-ike-policy)# proposal IKEPROP esr(config-ike-policy)# exit
Создадим профиль доступа и заведем в нем пару логин и пароль:
Блок кода esr(config)# access profile XAUTH esr(config-access-profile)# user client1 esr(config-profile)# password ascii-text password123 esr(config-profile)# exit esr(config-access-profile)# exit
Создадим интерфейс loopback для терминации IP-адреса, полученного от IPsec VPN сервера:
Блок кода esr(config)# interface loopback 8 esr(config-loopback)# exit
Создадим шлюз протокола IKE. В данном профиле указывается политика, интерфейс терминации, режим динамического установления удаленной подсети, выбор профиля доступа для XAUTH и режим перенаправления трафика в туннель по политике:
Блок кода esr(config)# security ike gateway IKEGW esr(config-ike-gw)# ike-policy IKEPOLICY esr(config-ike-gw)# assign-interface loopback 8 esr(config-ike-gw)# local address 120.11.5.1 esr(config-ike-gw)# remote address 180.100.0.1 esr(config-ike-gw)# remote network dynamic client esr(config-ike-gw)# mode policy-based esr(config-ike-gw)# access-profile xauth client client1 esr(config-ike-gw)# exit
Создадим профиль параметров безопасности для IPsec-туннеля. В профиле укажем алгоритм шифрования 3DES, алгоритм аутентификации SHA1. Данные параметры безопасности используются для защиты IPsec-туннеля:
Блок кода esr(config)# security ipsec proposal IPSECPROP esr(config-ipsec-proposal)# authentication algorithm md5 esr(config-ipsec-proposal)# encryption algorithm aes128 esr(config-ipsec-proposal)# exit
Создадим политику для IPsec-туннеля. В политике указывается список профилей IPsec-туннеля, по которым могут согласовываться узлы:
Блок кода esr(config)# security ipsec policy IPSECPOLICY esr(config-ipsec-policy)# proposal IPSECPROP esr(config-ipsec-policy)# exit
Scroll Pagebreak
Создадим IPsec VPN. В VPN указывается шлюз IKE-протокола, политика IP sec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой enable:Блок кода esr(config)# security ipsec vpn IPSECVPN esr(config-ipsec-vpn)# mode ike esr(config-ipsec-vpn)# ike establish-tunnel route esr(config-ipsec-vpn)# ike gateway IKEGW esr(config-ipsec-vpn)# ike ipsec-policy IPSECPOLICY esr(config-ipsec-vpn)# enable esr(config-ipsec-vpn)# exit
Разрешим протокол esp и udp порты 500,4500 в конфигурации firewall для установления IPsec VPN:
Блок кода esr(config)# security zone-pair untrusted self esr(config-zone-pair)# rule 1 esr(config-zone-pair-rule)# action permit esr(config-zone-pair-rule)# match protocol udp esr(config-zone-pair-rule)# match destination-port object-group ISAKMP esr(config-zone-pair-rule)# enable esr(config-zone-pair-rule)# exit esr(config-zone-pair)# rule 2 esr(config-zone-pair-rule)# action permit esr(config-zone-pair-rule)# match protocol esp esr(config-zone-pair-rule)# enable esr(config-zone-pair-rule)# exit esr(config-zone-pair)# endСостояние туннеля можно посмотреть командой:
Блок кода esr# show security ipsec vpn status IPSECVPN
Конфигурацию туннеля можно посмотреть командой:
Блок кода esr# show security ipsec vpn configuration IPSECVPN
...