...
| Шаг | Описание | Команда | Ключи |
|---|---|---|---|
| 1 | Создать IKE-экземпляр и перейти в режим его конфигурирования. | esr(config)# security ike proposal <NAME> | <NAME> – имя профиля протокола IKE, задаётся строкой до 31 символа. |
| 2 | Указать описание конфигурируемого туннеля (необязательно). | esr(config-ike-proposal)# description<DESCRIPTION> | <DESCRIPTION> – описание туннеля, задаётся строкой до 255 символов. |
| 3 | Определить алгоритм аутентификации для IKE. | esr(config-ike-proposal)# authentication algorithm <ALGORITHM> | <ALGORITHM> – алгоритм аутентификации, принимает значения: md5, sha1, sha2-256, sha2‑384, sha2-512. |
| 4 | Определить алгоритм шифрования для IKE. | esr(config-ike-proposal)# encryption algorithm <ALGORITHM> | <ALGORITHM> – протокол шифрования, принимает значения: des, 3des, blowfish128, blowfish192, blowfish256, aes128, aes192, aes256, aes128ctr, aes192ctr, aes256ctr, camellia128, camellia192, camellia256. |
| 5 | Определить номер группы Диффи-Хэллмана. | esr(config-ike-proposal)# dh-group <DH-GROUP> | <DH-GROUP> – номер группы Диффи-Хэллмана, принимает значения [1, 2, 5, 14, 15, 16, 17, 18]. |
| 6 | Создать политику для профиля IKE и перейти в режим её конфигурирования. | esr(config)# security ike policy <NAME> | <NAME> – имя политики IKE, задаётся строкой до 31 символа. |
| 7 | Определить режим аутентификации. | esr(config-ike-policy)# authentication method <METHOD> | <METHOD> – метод аутентификации IKE-сессии. Может принимать значения:
|
| 8 | Задать время жизни соединения протокола IKE (необязательно). | esr(config-ike-policy)# lifetime seconds <SEC> | <SEC> – период времени, принимает значения [4 ..86400] секунд. Значение по умолчанию: 10800. |
| 9 | Привязать политику к профилю. | esr(config-ike-policy)# proposal <NAME> | <NAME> – имя профиля протокола IKE, задаётся строкой до 31 символа. |
| 10 | Указать ключ аутентификации. | esr(config-ike-policy)#pre-shared-key ascii-text<TEXT> | <TEXT> – строка [1..64] ASCII-символов. |
| 11 | Создать шлюз для IKE и перейти в режим его конфигурирования. | esr(config)# security ike gateway <NAME> | <NAME> – имя шлюза протокола IKE, задаётся строкой до 31 символа. |
| 12 | Привязать политику IKE. | esr(config-ike-gw)# ike-policy <NAME> | <NAME> – имя политики протокола IKE, задаётся строкой до 31 символа. |
| 13 | Указать версию IKE (необязательно). | esr(config-ike-gw)# version <VERSION> | <version> – версия IKE-протокола: v1-only или v2-only. |
| 14 | Установить режим перенаправления трафика в туннель. | esr(config-ike-gw)#mode<MODE> | <MODE> – режим перенаправления трафика в туннель, принимает значения:
|
| 15 | Указать действие для DPD (необязательно). | esr(config-ike-gw)# dead-peer-detection action <MODE> | <MODE> – режим работы DPD:
|
| 16 | Указать интервал между отправкой сообщений механизмом DPD (необязательно). | esr(config-ike-gw)#dead-peer-detection interval <SEC> | <SEC> – интервал между отправкой сообщений механизмом DPD, принимает значения [1..180] секунд. |
17 | Указать период времени ожидания ответа на сообщения механизма DPD (необязательно). | esr(config-ike-gw)# dead-peer-detection timeout <SEC> | <SEC> – период времени ожидания ответа на сообщения механизма DPD принимает значения [1..180] секунд. Значение по умолчанию: 30 секунд. |
| 18 | Указать базовый период времени ожидания ответа на сообщения (необязательно). | esr(config-ike-gw)# retransmit timeout <SEC> | <SEC> – базовый период времени ожидания ответа на сообщения принимает значения [1..30] секунд. Значение по умолчанию: 4 секунды. |
| 19 | Указать количество попыток повторной отправки сообщений после наступления таймаута ожидания ответа (необязательно). | esr(config-ike-gw)# retransmit tries <TRIES> | <TRIES> – количество попыток повторной отправки сообщений в случае наступления таймаута ожидания ответа принимает значения от 1 до 10. "retransmit timeout" * 1.8 ^ (N-1), где N - номер попытки. Значение по умолчанию: 5 попыток. |
| 20 | Указать уровень случайного разброса периода ожидания ответа на сообщения (необязательно). | esr(config-ike-gw)# retransmit jitter <VALUE> | <VALUE> – максимальный процент разброса значений, принимает значения [0..100]. Значение по умолчанию: 0 % |
| 21 | Указать ограничение максимального периода времени ожидания ответа на сообщения (необязательно). | esr(config-ike-gw)# retransmit limit <SEC> | <SEC> – максимальный период времени ожидания ответа на сообщения принимает значения [15..300] секунд. Значение по умолчанию: 0 секунд, у периода нет верхнего предела. |
22 | Установить IP-адрес удаленного шлюза IPsec-туннеля. | esr(config-ike-gw)#remote address <ADDR> | <ADDR> – IP-адрес удаленного шлюза. |
23 | Установить IP-адрес подсети получателя, а также IP-протокол и порт. | esr(config-ike-gw)# remote network <ADDR/LEN> | <ADDR/LEN> – IP-адрес и маска подсети отправителя. Параметр задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..32]; <TYPE> – тип протокола, принимает значения: esp, icmp, ah, eigrp, ospf, igmp, ipip, tcp, pim, udp, vrrp, rdp, l2tp, gre; <ID> – идентификационный номер IP-протокола, принимает значения [0x00-0xFF]; <PORT> – TCP/UDP-порт, принимает значения [1..65535]. |
| Установить | |||
24 | Создать в профиль IPsec. | esr(config)# security ipsec proposal <NAME> | <NAME> – имя профиля протокола IPsec, задаётся строкой до 31 символа. |
25 | Определить алгоритм аутентификации для IPsec. | esr(config-ipsec-proposal)# authentication algorithm <ALGORITHM> | <ALGORITHM> – алгоритм аутентификации, принимает значения: md5, sha1, sha2-256, sha2‑384, sha2-512. |
26 | Определить алгоритм шифрования для IPsec. | esr(config-ipsec-proposal)# encryption algorithm <ALGORITHM> | <ALGORITHM> – протокол шифрования, принимает значения: des, 3des, blowfish128, blowfish192, blowfish256, aes128, aes192, aes256, aes128ctr, aes192ctr, aes256ctr, camellia128, camellia192, camellia256. |
27 | Указать протокол (необязательно). | esr(config-ipsec-proposal)#protocol <PROTOCOL> | <PROTOCOL> – инкапсулирующий протокол, принимает значения
Значение по умолчанию: esp. |
28 | Создать политику для профиля IPsec и перейти в режим её конфигурирования. | esr(config)# security ipsec policy <NAME> | <NAME> – имя политики IPsec, задаётся строкой до 31 символа. |
29 | Привязать политику к профилю. | esr(config-ipsec-policy)# proposal <NAME> | <NAME> – имя профиля протокола IPsec, задаётся строкой до 31 символа. |
30 | Задать время жизни IPsec-туннеля (необязательно). | esr(config-ipsec-policy)# lifetime { seconds <SEC> | | <SEC> – период времени жизни IPsec-туннеля, по истечении которого происходит пересогласование. Принимает значения [1140..86400] секунд. <PACKETS> – количество пакетов, после передачи которых происходит пересогласование IPsec-туннеля. Принимает значения [4..86400]. <KB> – объем трафика, после передачи которого происходит пересогласование IPsec-туннеля. Принимает значения [4..4608000] секунд. |
31 | Отключить реаутентификацию IKE-сессии (необязательно). | esr(config-ipsec-policy)# reauthentication disable | |
32 | Создать IPsec VPN и перейти в режим конфигурирования. | esr(config)# security ipsecvpn <NAME> | <NAME> – имя VPN, задаётся строкой до 31 символа. |
33 | Определить режим согласования данных, необходимых для активации VPN. | esr(config-ipsec-vpn)# mode <MODE> | <MODE> – режим работы VPN. |
34 | Привязать IPsec политику к VPN. | esr(config-ipsec-vpn)#ike ipsec-policy <NAME> | <NAME> – имя IPsec-политики, задаётся строка до 31 символа. |
35 | Задать значение DSCP для использования в IP-заголовке исходящих пакетов IKE-протокола (необязательно). | esr(config-ipsec-vpn)#ike dscp <DSCP> | DSCP> – значение кода DSCP, принимает значения в диапазоне [0..63]. |
36 | Установить режим активации VPN. | esr(config-ipsec-vpn)#ike establish-tunnel <MODE> | <MODE> – режим активации VPN:
|
37 | Осуществить привязка IKE-шлюза к VPN. | esr(config-ipsec-vpn)# ike gateway <NAME> | <NAME> – имя IKE-шлюза, задаётся строкой до 31 символа. |
38 | Установить значение временного интервала в секундах, по истечению которого соединение закрывается, если не было принято или передано ни одного пакета через SA (необязательно). | esr(config-ipsec-vpn)# ike idle-time <TIME> | <TIME> – интервал в секундах, принимает значения [4..86400]. |
39 | Отключить пересогласование ключей до разрыва IKE-соединения по истечению времени, количеству переданных пакетов или байт (необязательно). | esr(config-ipsec-vpn)#ike rekey disable | |
40 | Настроить начало пересогласования ключей IKE-соединения до истечения времени жизни (необязательно). | esr(config-ipsec-vpn)# Ike rekey margin { seconds <SEC> | | <SEC> – интервал времени в секундах, оставшийся до закрытия соединения (задается командой lifetimeseconds) . Принимает значения [4..86400]. <PACKETS> – количество пакетов, оставшихся до закрытия соединения (задается командой lifetimepackets). Принимает значения [4..86400]. <KB> – объем трафика в килобайтах, оставшийся до закрытия соединения (задается командой lifetimekilobytes). Принимает значения [4..86400] |
41 | Установить уровень случайного разброса значений параметров marginseconds, marginpackets, marginkilobytes (необязательно). | esr(config-ipsec-vpn)# ike rekey randomization <VALUE> | <VALUE> – максимальный процент разброса значений, принимает значения [1..100]. |
42 | Описать VPN (необязательно). | esr(config-ipsec-vpn)# description <DESCRIPTION> | <DESCRIPTION> – описание профиля, задаётся строкой до 255 символов. |
43 | Активировать IPsec VPN. | esr(config-ipsec-vpn)# enable |
| Якорь | ||||
|---|---|---|---|---|
|
Задача:
Настроить IPsec-туннель между R1 и R2.
...
- группа Диффи-Хэллмана: 2;
- алгоритм шифрования: AES 128 bit;
- алгоритм аутентификации: MD5;
- аутентификация по общему известному ключу.
IPsec:
- алгоритм шифрования: AES 128 bit;
- алгоритм аутентификации: MD5.
Решение:
| Примечание |
|---|
Предварительно в В firewall необходимо разрешить протокол ESP и ISAKMP (, UDP-порт 500 (для протокола ISAKMP), UDP-порт 4500 (для IPsec трафика при наличии NAT между IPsec соседями). |
- Конфигурирование R1
Настроим внешний сетевой интерфейс и определим принадлежность к зоне безопасностиIP-адрес на внешнем сетевом интерфейсе:
Блок кода esr# configure esr(config)# interface gigabitethernet 1/0/1 esr(config-if-gi)# ip address 198.51.100.1/24 esr(config-if-gi)# security-zone untrusted 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, алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IKE-соединения:
Блок кода 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
Создадим политику протокола IKE. В политике указывается список профилей протокола 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
Создадим шлюз протокола IKE. В данном профиле указывается VTI-туннель, политика, версия протокола и режим разделе привяжем раннее созданную политику протокола IKE, укажем IP-адреса для построения IPsec туннеля и набор локальных и удаленных сетей, трафик между которыми необходимо будет шифровать. Также укажем версию протокола IKE и "policy-based" в качестве режима перенаправления трафика в туннель:Scroll Pagebreak Блок кода 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)# mode policy-based esr(config-ike-gw)# exit
Создадим профиль параметров безопасности набор алгоритмов для IPsec-туннеля. В профиле нем укажем алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IPsec-туннеля:
Блок кода 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)# exit
Создадим политику для IPsec-туннеля. В политике указывается список профилей раннее описанный набор алгоритмов для IPsec-туннеля, по которым могут согласовываться узлы.
Блок кода esr(config)# security ipsec policy ipsec_pol1 esr(config-ipsec-policy)# proposal ipsec_prop1 esr(config-ipsec-policy)# exit
Создадим IPsec VPN. В VPN указывается шлюз IKE-протокола, политика IPsec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой enable:
Блок кода esr(config)# security ipsec vpn ipsec1 esr(config-ipsec-vpn)# mode ike esr(config-ipsec-vpn)# ike establish-tunnel route esr(config-ipsec-vpn)# ike gateway ike_gw1 esr(config-ipsec-vpn)# ike ipsec-policy ipsec_pol1 esr(config-ipsec-vpn)# enable esr(config-ipsec-vpn)# exit esr(config)# exit - Конфигурирование R2
)# exit- Конфигурирование R2
Настроим IP-адрес на внешнем сетевом интерфейсе
Для настройки правил зон безопасности потребуется создать профиль порта протокола ISAKMP:
Блок кода esr# configure esr(config)# object-groupinterface service ISAKMPgi 1/0/1 esr(config-addr-setif)# ip port-range 500address 203.0.113.1/24 esr(config-addr-setif)# exit
Создадим профиль набор алгоритмов для протокола IKE. В профиле наборе укажем группу Диффи-Хэллмана 2, алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IKE-соединения:
Блок кода 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 esr(config)#
Создадим политику протокола IKE. В политике указывается список профилей протокола 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
Создадим шлюз протокола IKE. В данном профиле указывается VTI-туннель, политика, версия протокола и режим разделе привяжем раннее созданную политику протокола IKE, укажем IP-адреса для построения IPsec туннеля и набор локальных и удаленных сетей, трафик между которыми необходимо будет шифровать. Также укажем версию протокола IKE и "policy-based" в качестве режима перенаправления трафика в туннель:
Блок кода 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)# mode policy-based esr(config-ike-gw)# exit
Создадим профиль параметров безопасности набор алгоритмов для IPsec-туннеля. В профиле нем укажем алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IPsec-туннеля:
Блок кода 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)# exit
Создадим политику для IPsec-туннеля. В политике указывается список профилей раннее описанный набор алгоритмов для IPsec-туннеля, по которым могут согласовываться узлы.
Блок кода esr(config)# security ipsec policy ipsec_pol1 esr(config-ipsec-policy)# proposal ipsec_prop1 esr(config-ipsec-policy)# exit
СоздадимСоздадим IPsec VPN. В VPN указывается шлюз IKE-протокола, политика IPsec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой enable:Scroll Pagebreak Блок кода esr(config)# security ipsec vpn ipsec1 esr(config-ipsec-vpn)# mode ike esr(config-ipsec-vpn)# ike establish-tunnel route esr(config-ipsec-vpn)# ike gateway ike_gw1 esr(config-ipsec-vpn)# ike ipsec-policy ipsec_pol1 esr(config-ipsec-vpn)# enable esr(config-ipsec-vpn)# exit esr(config)# exit
Состояние туннеля можно посмотреть командой:
Блок кода esr# show security ipsec vpn status ipsec1
Конфигурацию туннеля можно посмотреть командой:
Блок кода esr# show security ipsec vpn configuration ipsec1
Настроим внешний сетевой интерфейс и определим принадлежность к зоне безопасности:
...
<MODE> – режим переподключения, принимает следующие значения:
- no – установленное подключение XAUTH будет удалено, если для нового подключения XAUTH инициатором соединения будет отправлено уведомление "INITIAL_CONTACT", будет назначен ранее использованный IP-адрес. В противном случае, установленное соединение XAUTH будет удержано. Для нового подключения XAUTH будет назначен новый IP-адрес.
- never – установленное подключение XAUTH будет удержано. Для нового подключения XAUTH будет назначен новый IP-адрес. Уведомление "INITIAL_CONTACT" будет в любом случае проигнорировано.
- replace – установленное подключение XAUTH будет удалено. Для нового подключения XAUTH будет использован ранее использованный IP-адрес.
- keep – установленное подключение XAUTH будет удержано. Новое подключение XAUTH будет отклонено.
...
