Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

ШагОписаниеКомандаКлючи
1Сконфигурировать L3-интерфейс, от которого будет строиться GRE-туннель.

2Создать GRE-туннель и перейти в режим его конфигурирования.

esr(config)# tunnel gre <INDEX>

<INDEX> – идентификатор туннеля в диапазоне:

  • для ESR-10/12V(F)/
    15/15R/15VF – [1..10];
  • для ESR-20/21/30/31/
    100/200 – [1..250];
  • для ESR-1000/1200/
    1500/1511/3100/3200/
    3200L/3300 – [1..500];
  • для ESR-1700 – [1...3200].
3Указать экземпляр VRF, в котором будет работать данный GRE-туннель (не обязательно).

esr(config-gre )# ip vrf forwarding <VRF>

<VRF> – имя VRF, задается строкой до 31 символа.
4Указать имя VRF от IP-интерфейса которого будет строиться данный GRE-туннель (не обязательно).esr-(config-gre)# tunnel-source vrf <VRF>

<VRF> – имя экземпляра VRF, задается строкой до 31 символа.

Без указания ключа "vrf" и имени экземпляра VRF будет использоваться IP-интерфейс глобальной конфигурации.

5Указать описание конфигурируемого туннеля (не обязательно).

esr(config-gre)# description <DESCRIPTION>

<DESCRIPTION> – описание туннеля, задаётся строкой до 255 символов.
6Установить локальный IP-адрес для установки туннеля.

esr(config-gre)# local address <ADDR>

<ADDR> – IP-адрес локального шлюза, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].

esr(config-gre)# local interface <IF>

<IF> – интерфейс, от IP-адреса которого устанавливается туннель.
7Установить удаленный IP-адрес для установки туннеля.

esr(config-gre)# remote address <ADDR>

<ADDR> – IP-адрес локального шлюза, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].
8Указать режим инкапсуляции для GRE-туннеля.

esr(config-gre)# mode <MODE>

<MODE> – режим инкапсуляции для GRE-туннеля:

  • ip – инкапсуляция IP-пакетов в GRE;
  • ethernet – инкапсуляция Ethernet-фреймов в GRE.

Значение по умолчанию: ip

9Установить IP-адрес локальной стороны туннеля (только в режиме ip).

esr(config-gre)# ip address <ADDR/LEN> [unit <ID>]

или 

esr(config-gre)# ip address <ADDR/LEN> secondary [unit <ID>]

<ADDR/LEN> – IP-адрес и префикс подсети задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..32].

<ID> – номер юнита, принимает значения [1..2].

Ключ secondary указывает, что настроенный адрес является дополнительным IP-адресом. Если это ключевое слово отсутствует, настроенный адрес является основным IP-адресом. Возможно указать до 7 дополнительных IP-адресов.

Дополнительные функции IPv4-адресации см. в разделе Настройка IP-адресации.

10Назначить широковещательный домен для инкапсуляции в GRE-пакеты данного туннеля (только в режиме ethernet).

esr(config-gre)# bridge-group <BRIDGE-ID>

<BRIDGE-ID> – идентификационный номер моста, принимает значения в диапазоне:

  • для ESR-10/12V(F)/
    15/15R/15VF – [1..50];
  • для ESR-20/21/30/31/
    100/200 – [1..250];
  • для ESR-1000/1200/
    1500/1511/1700/3100/
    3200/3200L/3300 – [1..500].
11Включить GRE-туннель в зону безопасности и настроить правила взаимодействия между зонами или отключить firewall (см. раздел Конфигурирование Firewall).

esr(config-gre)# security-zone<NAME>

<NAME> – имя зоны безопасности, задаётся строкой до 12 символов.

esr(config-gre)# ip firewall disable

          

12

Указать размер MTU (Maximum Transmition Unit) для туннеля (не обязательно).
MTU более 1500 будет активно, только если применена команда "system jumbo-frames".

esr(config-gre)# mtu <MTU>

<MTU> – значение MTU, принимает значения в диапазоне:

  • для ESR-10/12V(F)/
    15/15R/15VF – [1280..9600];
  • для ESR-20/21/30/31 – [1280..9500];
  • для ESR-100/200/1000/
    1200/1500/1511/1700/3100/
    3200/3200L/3300 – [1280..10000].

Значение по умолчанию: 1500.

13

Указать значение времени жизни TTL для туннельных пакетов (не обязательно).

esr(config-gre)# ttl <TTL>

<TTL> – значение TTL, принимает значения в диапазоне [1..255].

Значение по умолчанию: наследуется от инкапсулируемого пакета.

14

Указать DSCP для использования в IP-заголовке инкапсулирующего пакета (не обязательно).

esr(config-gre)# dscp <DSCP>

<DSCP> – значение кода DSCP, принимает значения в диапазоне [0..63].

Значение по умолчанию: наследуется от инкапсулируемого пакета.

15

Разрешить передачу ключа (key) в туннельном заголовке GRE (в соответствии с RFC 2890) и установить значение ключа. Настраивается только с обеих сторон туннеля
(не обязательно).

esr(config-gre)# key <KEY>

<KEY> – значение KEY, принимает значения в диапазоне [1..2000000].

Значение по умолчанию: ключ не передаётся.

16

Включить вычисление контрольной суммы и занесение её в GRE-заголовок отправляемых пакетов. При этом на удаленной стороне необходимо включить проверку контрольной суммы
(не обязательно).

esr(config-gre)# local checksum


17

Включить проверку наличия и соответствия значений контрольной суммы в заголовках принимаемых GRE-пакетов. При этом на удаленной стороне необходимо включить вычисление контрольной суммы
(не обязательно).

esr(config-gre)# remote checksum


18

Включить проверку доступности удаленного шлюза туннеля (не обязательно).

esr(config-gre)# keepalive enable


19

Изменить время ожидания keepalive пакетов от встречной стороны (не обязательно).

esr(config-gre)# keepalive timeout <TIME>

<TIME> – время в секундах, принимает значения в диапазоне [1..32767].

Значение по умолчанию: 10.

20

Изменить количество попыток проверки доступности удаленного шлюза туннеля (не обязательно).

esr(config-gre)# keepalive retries <VALUE>

<VALUE> – количество попыток, принимает значения в диапазоне [1..255].

Значение по умолчанию: 5.

21

Указать IP-адрес для работы механизма keepalive (обязательно в режиме ethernet).

esr(config-gre)# keepalive dst-address <ADDR>

<ADDR> – IP-адрес для проверки работоспособности GRE-туннеля.

22

Изменить интервал времени, за который усредняется статистика о нагрузке на туннеле (не обязательно).

esr(config-gre)# load-average <TIME>

<TIME> – интервал в секундах, принимает значения [5..150].

Значение по умолчанию: 5.

23

Включить отправку snmp-trap о включении/отключении туннеля.

esr(config-gre)# snmp init-trap


24

Включить механизм перезапроса IP-адресов по протоколу DHCP на указанных интерфейсах при отключении GRE-туннеля по keepalive (не обязательно).

esr(config-gre)# keepalive dhcp dependent-interface <IF>

<IF> – физический/логический интерфейс, на котором включено получение IP-адреса по DHCP.

25

Задать интервал времени между отключением GRE-туннеля и перезапросом IP-адреса на интерфейсе/интерфейсах, указанных командой keepalive dhcp dependent-interface (не обязательно).

esr(config-gre)# keepalive dhcp link-timeout <SEC>

<SEC> – интервал между отключением GRE-туннеля и перезапросом IP-адреса по DHCP на интерфейсах.

26Переопределить значение поля MSS (Maximum segment size) во входящих TCP-пакетах (не обязательно).

esr(config-gre)# ip tcp adjust-mss <MSS>

<MSS> – значение MSS, принимает значения в диапазоне [500..1460].

Значение по умолчанию: 1460.

27Включить запись статистики использования текущего туннеля (не обязательно).

esr(config-gre)# history statistics


28

Активировать туннель.

esr(config-gre)# enable


Также для GRE-туннеля возможно настроить:

...

Шаг

Описание

Команда

Ключи

1

Проверить доступность «внешних» IP-адресов, находящихся на физических интерфейсах.

 


2

Подготовить IPsec-туннели для работы совместно с динамическими GRE-туннелями.

 

См. раздел Настройка Policy-based IPsec VPN.

3Создать GRE-туннель и перейти в режим его конфигурирования.

esr(config)# tunnel gre <INDEX>

<INDEX> – идентификатор туннеля.

4

Перевести GRE-туннель в режим multipoint.

esr(config-gre )# multipoint


5Указать экземпляр VRF, в котором будет работать данный GRE-туннель (не обязательно).

esr(config-gre )# ip vrf forwarding <VRF>

<VRF> – имя VRF, задается строкой до 31 символа.
6Указать имя VRF от IP-интерфейса которого будет строиться данный GRE-туннель (не обязательно).esr(config-gre)# tunnel-source vrf <VRF>

<VRF> – имя экземпляра VRF, задается строкой до 31 символа.

Без указания ключа "vrf" и имени экземпляра VRF, будет использоваться IP-интерфейс глобальной конфигурации.

7Установить локальный IP-адрес для установки туннеля.

esr(config-gre)# local address <ADDR>

<ADDR> – IP-адрес локального шлюза, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].

esr(config-gre)# local interface <IF>

<IF> – интерфейс, от IP-адреса которого устанавливается туннель.

8

Задать IP-адрес на туннеле. В качестве альтернативы можно настроить DHCP-клиент для получения IP-адреса от DHCP-сервера.

esr(config-gre)# ip address <ADDR/LEN>

или

esr(config-gre)# ip address <ADDR/LEN> secondary

<ADDR/LEN> – IP-адрес и длина маски подсети, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..32].

Ключ secondary указывает, что настроенный адрес является дополнительным IP-адресом. Если это ключевое слово отсутствует, настроенный адрес является основным IP-адресом. Возможно указать до 7 дополнительных IP-адресов.

esr(config-gre)# ip address dhcp


9

Установить открытый пароль для NHRP-пакетов (не обязательно).

esr(config-gre)# ip nhrp authentication <WORD>

<WORD> – пароль в открытой форме, задается строкой [1..8] символов, может включать символы [0-9a-fA-F].

10

Указать время, в течение которого на NHS будет существовать запись о данном клиенте (не обязательно).

esr(config-gre)# ip nhrp holding-time <TIME>

<TIME> – время в секундах, в течение которого на сервере будет существовать запись о данном клиенте, принимает значения [1..65535].

Значение по умолчанию: 7200.

11

Задать соответствие «внутреннего» туннельного адреса с «внешним» NBMA-адресом.

esr(config-gre)# ip nhrp map <ADDR> <ADDR>

<ADDR> – IP-адрес задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].

12

Задать «логический (туннельный)» адрес NHRP-сервера.

esr(config-gre)# ip nhrp nhs <ADDR>

<ADDR> – адрес, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть AAA – DDD принимает значения [0..255].

13

Определить адресата мультикастного трафика.

esr(config-gre)# ip nhrp multicast { dynamic | nhs | <ADDR> }

  • dynamic – отправлять на все пиры, с которыми есть соединение;
  • nhs – отправлять на все статические сконфигурированные сервера;

<ADDR> – отправлять на специфически сконфигурированный адрес, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].

14

Включить возможность отправки NHRP Traffic Indication пакетов. Выполняется на NHS (не обязательно).

esr(config-gre)# ip nhrp redirect


15

Включить возможность создания кратчайших маршрутов. Выполняется на NHC (не обязательно).

esr(config-gre)# ip nhrp shortcut


16

Привязать IPsec-VPN к mGRE-туннелю (не обязательно).

esr(config-gre)# ip nhrp ipsec <WORD> { static | dynamic }

<WORD> – имя VPN, задаётся строкой до 31 символа;

  • static – статическое соединение, применятся для связи с NHS;
  • dynamic – динамически устанавливающееся соединение, конфигурируется для связи между NHC.
17Включить передачу имени NHRP-группы NHRP-соседям в процессе обмена NHRP-сообщениями (не обязательно).esr(config-gre)# ip nhrp attribute group <WORD>
<WORD> – имя группы NHRP, задаётся строкой [1..40] символов, не принимает символы [^#].
18Задать соответствие группы NHRP, полученной от NHRP-соседа в процессе обмена NHRP-сообщениями, и политики QoS, которая будет применена к исходящему в сторону этого NHRP-соседа трафика (не обязательно).esr(config-gre)# ip nhrp map group <GROUP> service-policy output <POLICY><GROUP> – имя группы NHRP, задаётся строкой [1..40] символов, не принимает символы [^#];
<POLICY> – имя QoS-политики, задается строкой [1..31] символов.

19

Включить работу протокола NHRP.

esr(config-gre)# ip nhrp enable


20

Организовать IP-связность посредством протокола динамической маршрутизации.



Остальные настройки аналогичны настройкам статичного GRE-туннеля (см. раздел Настройка GRE-туннелей).

...

ШагОписаниеКомандаКлючи
1Создать VTI-туннель и перейти в режим его конфигурирования.

esr(config)# tunnel vti <TUN>

<TUN> – имя туннеля устройства.
2Указать локальный IP-адрес VTI-туннеля.

esr(config-vti)#local address <ADDR>

<ADDR> – IP-адрес локального шлюза.
3Указать удаленный IP-адрес VTI-туннеля.

esr(config-vti)#remote address <ADDR>

<ADDR> – IP-адрес удаленного шлюза.
4Установить IP-адрес локальной стороны VTI-туннеля.

esr(config-vti)# ip address <ADDR/LEN> [unit <ID>]

или 

esr(config-vti)# ip address <ADDR/LEN> secondary [unit <ID>]

<ADDR/LEN> – IP-адрес и префикс подсети задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..32];

<ID> – номер юнита, принимает значения [1..2].

Ключ secondary указывает, что настроенный адрес является дополнительным IP-адресом. Если это ключевое слово отсутствует, настроенный адрес является основным IP-адресом. Возможно указать до 7 дополнительных IP-адресов.

5Включить VTI-туннель в зону безопасности и настроить правила взаимодействия между зонами или отключить firewall для VTI-туннеля.

esr(config-vti)# security-zone<NAME>

<NAME> – имя зоны безопасности, задаётся строкой до 12 символов.

esr(config-vti)# ip firewall disable

6Включить туннель.

esr(config-vti)#enable


7Создать IKE-профиль и перейти в режим его конфигурирования.

esr(config)# security ike proposal <NAME>

<NAME> – имя профиля протокола IKE, задаётся строкой до 31 символа.
8Указать описание конфигурируемого IKE-профиля (не обязательно).

esr(config-ike-proposal)# description<DESCRIPTION>

<DESCRIPTION> – описание туннеля, задаётся строкой до 255 символов.
9Определить алгоритм аутентификации для IKE (не обязательно).

esr(config-ike-proposal)# authentication algorithm <ALGORITHM>

<ALGORITHM> – алгоритм аутентификации, принимает значения: md5, sha1, sha2-256, sha2‑384, sha2-512.

Значение по умолчанию: sha1.

10Определить алгоритм шифрования для IKE (не обязательно).

esr(config-ike-proposal)# encryption algorithm <ALGORITHM>

<ALGORITHM> – протокол шифрования, принимает значения: des, 3des, blowfish128, blowfish192, blowfish256, aes128, aes192, aes256, aes128ctr, aes192ctr, aes256ctr, camellia128, camellia192, camellia256.

Значение по умолчанию: 3des.

11

Определить номер группы Диффи-Хэллмана (не обязательно).

esr(config-ike-proposal)# dh-group <DH-GROUP>

<DH-GROUP> – номер группы Диффи-Хэллмана, принимает значения [1, 2, 5, 14, 15, 16, 17, 18].

Значение по умолчанию: 1.

12

Создать IKE-политику и перейти в режим её конфигурирования.

esr(config)# security ike policy <NAME>

<NAME> – имя политики IKE, задаётся строкой до 31 символа.


13

Определить режим аутентификации IKE (не обязательно).

esr(config-ike-policy)# authentication method <METHOD>

<METHOD> – метод аутентификации ключа. Может принимать значения:

  • pre - shared - key – метод аутентификации, использующий предварительно полученные ключи шифрования;
  •  public - key – метод аутентификации, использующий сертификат.

Значение по умолчанию: pre-shared-key.

14

Задать время жизни соединения протокола IKE (не обязательно).

esr(config-ike-policy)# lifetime seconds <SEC>

<SEC> – период времени, принимает значения
[4 ..86400] секунд.

Значение по умолчанию: 10800.

15

Привязать IKE-профиль к IKE-политике.

esr(config-ike-policy)# proposal <NAME>

<NAME> – имя профиля протокола IKE, задаётся строкой до 31 символа.

16

Указать ключ аутентификации (обязательно, если в качестве режима аутентификации выбран pre-shared-key).

esr(config-ike-policy)# pre-shared-key ascii-text<TEXT>

<TEXT> – строка [1..64] ASCII-символов.

17

Создать IKE-шлюз и перейти в режим его конфигурирования.

esr(config)# security ike gateway <NAME>

<NAME> – имя шлюза протокола IKE, задаётся строкой до 31 символа.

18

Привязать IKE-политику к IKE-шлюзу.

esr(config-ike-gw)# ike-policy <NAME>

<NAME> – имя политики протокола IKE, задаётся строкой до 31 символа.

19

Указать версию IKE (не обязательно).

esr(config-ike-gw)# version <VERSION>

<version> – версия IKE-протокола: v1-only или v2-only.

Значение по умолчанию: v1-only.

20

Установить режим перенаправления трафика в туннель – route-based.

esr(config-ike-gw)# mode route-based


21

Указать действие для DPD (не обязательно).

esr(config-ike-gw)# dead-peer-detection action <MODE>

<MODE> – режим работы DPD:

  • restart – соединение переустанавливается;
  • clear – соединение останавливается;
  • hold – соединение поддерживается;
  • none – механизм выключен, никаких действий не предпринимается.

Значение по умолчанию: none.

22

Указать интервал между отправкой сообщений механизмом DPD (не обязательно).

esr(config-ike-gw)# dead-peer-detection interval <SEC>

<SEC> – интервал между отправкой сообщений механизмом DPD, принимает значения [1..180] секунд.

Значение по умолчанию: 2.

23

Указать период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 1 (не обязательно).

esr(config-ike-gw)# dead-peer-detection timeout <SEC>

<SEC> – период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 1, принимает значения [1..180] секунд.

Значение по умолчанию: 30 секунд.

24Указать базовый период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2 (не обязательно).esr(config-ike-gw)# dead-peer-detection retransmit timeout <SEC>
<SEC> – базовый период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2, принимает значения [1..30] секунд.
Значение по умолчанию: 4 секунды.
25Указать количество попыток повторной отправки сообщений механизма DPD после наступления таймаута ожидания ответа при использовании протокола IKE версии 2 (не обязательно).esr(config-ike-gw)# dead-peer-detection retransmit tries <TRIES>

<TRIES> – количество попыток повторной отправки сообщений механизма DPD в случае наступления таймаута ожидания ответа при использовании протокола IKE версии 2, принимает значения от 1 до 10.
Для первого отправленного сообщения DPD период времени ожидания ответа будет равен базовому периоду, указанному в команде dead-peer-detection retransmit timeout, а для последующих попыток интервал ожидания будет рассчитан по формуле:

"dead-peer-detection retransmit timeout" * 1.8 ^ (N-1), где N - номер попытки.

Значение по умолчанию: 5 попыток.

26Указать уровень случайного разброса периода ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2 (не обязательно).esr(config-ike-gw)# dead-peer-detection retransmit jitter <VALUE>

<VALUE> – максимальный процент разброса значений, принимает значения [0..100].

Значение по умолчанию: 0 %

27Указать ограничение максимального периода времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2 (не обязательно).esr(config-ike-gw)# dead-peer-detection retransmit limit <SEC>

<SEC> – максимальный период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2, принимает значения [15..300] секунд.

Значение по умолчанию: 0 секунд, у периода нет верхнего предела.

28Данная команда отключает расширение MOBIKE IKEv2, которое позволяет инициатору ike-сессии изменять local address в соответствии с RFC 4555.esr(config-ike-gw)# mobike disable

29

Привязать VTI-туннель к IKE-шлюзу.

esr(config-ike-gw)# bind-interface vti <VTI>

<VTI> – идентификационный номер интерфейса VTI.

30

Создать в IPsec-профиль.

esr(config)# security ipsec proposal <NAME>

<NAME> – имя профиля протокола IPsec, задаётся строкой до 31 символа.

31

Определить алгоритм аутентификации для IPsec (не обязательно).

esr(config-ipsec-proposal)# authentication algorithm <ALGORITHM>

<ALGORITHM> – алгоритм аутентификации, принимает значения: md5, sha1, sha2-256, sha2‑384, sha2-512.

Значение по умолчанию: sha1.

32

Определить алгоритм шифрования для IPsec (не обязательно).

esr(config-ipsec-proposal)# encryption algorithm <ALGORITHM>

<ALGORITHM> – протокол шифрования, принимает значения: des, 3des, blowfish128, blowfish192, blowfish256, aes128, aes192, aes256, aes128ctr, aes192ctr, aes256ctr, camellia128, camellia192, camellia256.

Значение по умолчанию: 3des.

33

Указать протокол инкапсуляции для IPsec (не обязательно).

esr(config-ipsec-proposal)# protocol <PROTOCOL>

<PROTOCOL> – инкапсулирующий протокол, принимает значения:

  • ah – данный протокол осуществляет только аутентификацию трафика, шифрование данных не выполняется;
  • esp – данный протокол осуществляет аутентификацию и шифрование трафика.

Значение по умолчанию: esp.

34

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

esr(config)# security ipsec policy <NAME>

<NAME> – имя политики IPsec, задаётся строкой до 31 символа.

35

Привязать IPsec-профиль к IPsec-политике.

esr(config-ipsec-policy)# proposal <NAME>

<NAME> – имя профиля протокола IPsec, задаётся строкой до 31 символа.

36

Задать время жизни IPsec-туннеля (не обязательно).

esr(config-ipsec- policy)# lifetime { seconds <SEC> |
packets <PACKETS> | kilobytes <KB> }

<SEC> – период времени жизни IPsec-туннеля, по истечении происходит пересогласование. Принимает значения [1140..86400] секунд.

<PACKETS> – количество пакетов, после передачи которого происходит пересогласование IPsec-туннеля. Принимает значения [4..86400].

<KB> – объем трафика, после передачи которого происходит пересогласование IPsec-туннеля. Принимает значения [4..4608000] секунд.

Значение по умолчанию: 28800 секунд.

37

Создать IPsec VPN и перейти в режим конфигурирования.

esr(config)# security ipsec vpn <NAME>

<NAME> – имя VPN, задаётся строкой до 31 символа.

38

Определить режим согласования данных, необходимых для активации VPN.

esr(config-ipsec-vpn)# mode <MODE>

<MODE> – режим работы VPN.

39

Привязать IPsec-политику к IPsec-VPN.

esr(config-ipsec-vpn)# ike ipsec-policy <NAME>

<NAME> – имя IPsec-политики, задаётся строка до 31 символа.

40

Задать значение DSCP для использования в IP-заголовке исходящих пакетов IKE-протокола (не обязательно).

esr(config-ipsec-vpn)# ike dscp <DSCP>

DSCP> – значение кода DSCP, принимает значения в диапазоне [0..63].

Значение по умолчанию: 63.

41

Установить режим активации VPN.

esr(config-ipsec-vpn)# ike establish-tunnel <MODE>

<MODE> – режим активации VPN:

  • by - request – соединение активируется встречной стороной;
  • route – соединение активируется при появлении трафика, маршрутизируемого в туннель;
  • immediate – туннель активируется автоматически после применения конфигурации.

42

Осуществить привязку IKE-шлюза к IPsec-VPN.

esr(config-ipsec-vpn)# ike gateway <NAME>

<NAME> – имя IKE-шлюза, задаётся строкой до 31 символа.

43

Установить значение временного интервала в секундах, по истечению которого соединение закрывается, если не было принято или передано ни одного пакета через SA (не обязательно).

esr(config-ipsec-vpn)# ike idle-time <TIME>

<TIME> – интервал в секундах, принимает значения [4..86400].

44

Отключить пересогласование ключей до разрыва IKE-соединения по истечению времени, количеству переданных пакетов или байт (не обязательно).

esr(config-ipsec-vpn)# ike rekey disable


45

Настроить начало пересогласования ключей IKE-соединения до истечения времени жизни (не обязательно).

esr(config-ipsec-vpn)# ike rekey margin { seconds <SEC> |
packets <PACKETS> | kilobytes <KB> }

<SEC> – интервал времени в секундах, оставшийся до закрытия соединения (задается командой lifetimeseconds, см. 22.2.13). Принимает значения [4..86400].

<PACKETS> – количество пакетов, оставшихся до закрытия соединения (задается командой lifetimepackets). Принимает значения [4..86400]

<KB> – объем трафика в килобайтах, оставшийся до закрытия соединения (задается командой lifetimekilobytes). Принимает значения [4..86400]

Значение по умолчанию:

  • Пересогласование ключей до истечения времени – за 540 секунд.
  • Пересогласование ключей до истечения объема трафика и количества пакетов – отключено.

46

Установить уровень случайного разброса значений параметров margin seconds, margin packets, margin kilobytes (не обязательно).

esr(config-ipsec-vpn)# ike rekey randomization <VALUE>

<VALUE> – максимальный процент разброса значений, принимает значения [1..100].

Значение по умолчанию: 100%

47

Указать описание для IPsec-VPN (не обязательно).

esr(config-ipsec-vpn)# description <DESCRIPTION>

<DESCRIPTION> – описание профиля, задаётся строкой до 255 символов.

48

Активировать IPsec VPN.

esr(config-ipsec-vpn)# enable


...

  • алгоритм шифрования: AES 128 bit;
  • алгоритм аутентификации: MD5.
Решение:
Примечание

Предварительно в firewall необходимо разрешить протокол ESP и ISAKMP (UDP-порт 500, 4500).

  1. Конфигурирование R1
    Настроим внешний сетевой интерфейс и определим принадлежность к зоне безопасности:

    Блок кода
    esr# configure
    esr(config)# interface gi 1/0/1
    esr(config-if-gi)# ip address 180.100.0.1/24
    esr(config-if-gi)# security-zone untrusted
    esr(config-if-gi)# exit

    Создадим туннель VTI. Трафик будет перенаправляться через VTI в IPsec-туннель. В качестве локального и удаленного шлюза указываются IP-адреса интерфейсов, граничащих с WAN:

    Блок кода
    esr(config)# tunnel vti 1
    esr(config-vti)# local address 180.100.0.1
    esr(config-vti)# remote address 120.11.5.1
    esr(config-vti)# enable
    esr(config-vti)# exit

    Scroll Pagebreak

    Для настройки правил зон безопасности потребуется создать профиль порта протокола ISAKMP:

    Блок кода
    esr(config)# object-group service ISAKMP
    esr(config-object-group-service)# port-range 500,4500
    esr(config-object-group-service)# exit

    Создадим статический маршрут до удаленной LAN-сети. Для каждой подсети, которая находится за IPsec-туннелем, нужно указать маршрут через VTI-туннель:

    Блок кода
    esr(config)# ip route 192.0.2.0/24 tunnel vti 1

    Создадим профиль протокола 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, по которым могут согласовываться узлы и ключ аутентификации:

    Блок кода
    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-туннель, политика, версия протокола и режим перенаправления трафика в туннель. Поддержка MOBIKE отключается для route-based IPsec в обязательном порядке:

    Блок кода
    esr(config)# security ike gateway ike_gw1
    esr(config-ike-gw)# ike-policy ike_pol1
    esr(config-ike-gw)# mode route-based
    esr(config-ike-gw)# mobike disable
    esr(config-ike-gw)# bind-interface vti 1
    esr(config-ike-gw)# version v2-only
    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

    Scroll Pagebreak

    Создадим политику для 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-протокола, политика IP sec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой 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


  2. Конфигурирование 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

    Создадим туннель VTI. Трафик будет перенаправляться через VTI в IPsec-туннель. В качестве локального и удаленного шлюза указываются IP-адреса интерфейсов, граничащих с WAN:

    Блок кода
    esr(config)# tunnel vti 1
    esr(config-vti)# remote address 180.100.0.1
    esr(config-vti)# local address 120.11.5.1
    esr(config-vti)# enable
    esr(config-vti)# exit

    Для настройки правил зон безопасности потребуется создать профиль порта протокола ISAKMP:

    Блок кода
    esr(config)# object-group service ISAKMP
    esr(config-object-group-service)# port-range 500,4500
    esr(config-object-group-service)# exit

    Создадим статический маршрут до удаленной LAN-сети. Для каждой подсети, которая находится за IPsec-туннелем, нужно указать маршрут через VTI-туннель:

    Блок кода
    esr(config)# ip route 10.0.0.0/16 tunnel vti 1

    Scroll Pagebreak

    Создадим профиль протокола 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, по которым могут согласовываться узлы и ключ аутентификации:

    Блок кода
    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-туннель, политика, версия протокола и режим перенаправления трафика в туннель:

    Блок кода
    esr(config)# security ike gateway ike_gw1
    esr(config-ike-gw)# ike-policy ike_pol1
    esr(config-ike-gw)# mode route-based
    esr(config-ike-gw)# bind-interface vti 1
    esr(config-ike-gw)# version v2-only
    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

    Scroll Pagebreak
    Создадим IPsec VPN. В VPN указывается шлюз IKE-протокола, политика IP sec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой 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

    Состояние туннеля можно посмотреть командой:

    Блок кода
    esr# show security ipsec vpn status ipsec1

    Конфигурацию туннеля можно посмотреть командой:

    Блок кода
    esr# show security ipsec vpn configuration ipsec1


...

ШагОписаниеКомандаКлючи
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> – метод аутентификации ключа. Может принимать значения:

  • pre - shared - key – метод аутентификации, использующий предварительно полученные ключи шифрования;
  •  public - key – метод аутентификации, использующий сертификат.
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> – режим перенаправления трафика в туннель, принимает значения:

  • policy - based – трафик перенаправляется на основе принадлежности к указанным в политиках подсетям;
  • route - based – трафик перенаправляется на основе маршрутов, шлюзом у которых является туннельный интерфейс.
15Указать действие для DPD (не обязательно).

esr(config-ike-gw)# dead-peer-detection action <MODE>

<MODE> – режим работы DPD:

  • restart – соединение переустанавливается;
  • clear – соединение останавливается;
  • hold – соединение поддерживается;
  • none – механизм выключен, никаких действий не предпринимается.
16Указать интервал между отправкой сообщений механизмом DPD (не обязательно).

esr(config-ike-gw)#dead-peer-detection interval <SEC>

<SEC> – интервал между отправкой сообщений механизмом DPD, принимает значения [1..180] секунд.

17

Указать период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 1 (не обязательно).

esr(config-ike-gw)# dead-peer-detection timeout <SEC>

<SEC> – период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 1, принимает значения [1..180] секунд.

Значение по умолчанию: 30 секунд.

18Указать базовый период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2 (не обязательно).esr(config-ike-gw)# dead-peer-detection retransmit timeout <SEC>
<SEC> – базовый период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2, принимает значения [1..30] секунд.
Значение по умолчанию: 4 секунды.
19Указать количество попыток повторной отправки сообщений механизма DPD после наступления таймаута ожидания ответа при использовании протокола IKE версии 2 (не обязательно).esr(config-ike-gw)# dead-peer-detection retransmit tries <TRIES>

<TRIES> – количество попыток повторной отправки сообщений механизма DPD в случае наступления таймаута ожидания ответа при использовании протокола IKE версии 2, принимает значения от 1 до 10.
Для первого отправленного сообщения DPD период времени ожидания ответа будет равен базовому периоду, указанному в команде dead-peer-detection retransmit timeout, а для последующих попыток интервал ожидания будет рассчитан по формуле:

"dead-peer-detection retransmit timeout" * 1.8 ^ (N-1), где N - номер попытки.

Значение по умолчанию: 5 попыток.

20Указать уровень случайного разброса периода ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2 (не обязательно).esr(config-ike-gw)# dead-peer-detection retransmit jitter <VALUE>

<VALUE> – максимальный процент разброса значений, принимает значения [0..100].

Значение по умолчанию: 0 %

21Указать ограничение максимального периода времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2 (не обязательно).esr(config-ike-gw)# dead-peer-detection retransmit limit <SEC>

<SEC> – максимальный период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2, принимает значения [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>
[ protocol { <TYPE> | <ID> } [ port <PORT> ] ]

<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> – инкапсулирующий протокол, принимает значения

  • ah – данный протокол осуществляет только аутентификацию трафика, шифрование данных не выполняется;
  • esp – данный протокол осуществляет аутентификацию и шифрование трафика.

Значение по умолчанию: 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> |
packets <PACKETS> | kilobytes <KB> }

<SEC> – период времени жизни IPsec-туннеля, по истечении которого происходит пересогласование. Принимает значения [1140..86400] секунд.

<PACKETS> – количество пакетов, после передачи которых происходит пересогласование IPsec-туннеля. Принимает значения [4..86400].

<KB> – объем трафика, после передачи которого происходит пересогласование IPsec-туннеля. Принимает значения [4..4608000] секунд.

31

Создать IPsec VPN и перейти в режим конфигурирования.

esr(config)# security ipsecvpn <NAME>

<NAME> – имя VPN, задаётся строкой до 31 символа.

32

Определить режим согласования данных, необходимых для активации VPN.

esr(config-ipsec-vpn)# mode <MODE>

<MODE> – режим работы VPN.

33

Привязать IPsec политику к VPN.

esr(config-ipsec-vpn)#ike ipsec-policy <NAME>

<NAME> – имя IPsec-политики, задаётся строка до 31 символа.

34

Задать значение DSCP для использования в IP-заголовке исходящих пакетов IKE-протокола (не обязательно).

esr(config-ipsec-vpn)#ike dscp <DSCP>

DSCP> – значение кода DSCP, принимает значения в диапазоне [0..63].

35

Установить режим активации VPN.

esr(config-ipsec-vpn)#ike establish-tunnel <MODE>

<MODE> – режим активации VPN:

  • by - request – соединение активируется встречной стороной;
  • route – соединение активируется при появлении трафика, маршрутизируемого в туннель;
  • immediate – туннель активируется автоматически после применения конфигурации.

36

Осуществить привязка IKE-шлюза к VPN.

esr(config-ipsec-vpn)# ike gateway <NAME>

<NAME> – имя IKE-шлюза, задаётся строкой до 31 символа.

37

Установить значение временного интервала в секундах, по истечению которого соединение закрывается, если не было принято или передано ни одного пакета через SA (не обязательно).

esr(config-ipsec-vpn)# ike idle-time <TIME>

<TIME> – интервал в секундах, принимает значения [4..86400].

38

Отключить пересогласование ключей до разрыва IKE-соединения по истечению времени, количеству переданных пакетов или байт (не обязательно).

esr(config-ipsec-vpn)#ike rekey disable


39

Настроить начало пересогласования ключей IKE-соединения до истечения времени жизни (не обязательно).

esr(config-ipsec-vpn)# Ike rekey margin { seconds <SEC> |
packets <PACKETS> | kilobytes <KB> }

<SEC> – интервал времени в секундах, оставшийся до закрытия соединения (задается командой lifetimeseconds) . Принимает значения [4..86400].

<PACKETS> – количество пакетов, оставшихся до закрытия соединения (задается командой lifetimepackets). Принимает значения [4..86400].

<KB> – объем трафика в килобайтах, оставшийся до закрытия соединения (задается командой lifetimekilobytes). Принимает значения [4..86400]

40

Установить уровень случайного разброса значений параметров marginseconds, marginpackets, marginkilobytes (не обязательно).

esr(config-ipsec-vpn)# ike rekey randomization <VALUE>

<VALUE> – максимальный процент разброса значений, принимает значения [1..100].

41

Описать VPN (не обязательно).

esr(config-ipsec-vpn)# description <DESCRIPTION>

<DESCRIPTION> – описание профиля, задаётся строкой до 255 символов.

42

Активировать IPsec VPN.

esr(config-ipsec-vpn)# enable


...

  • алгоритм шифрования: AES 128 bit;
  • алгоритм аутентификации: MD5.
Решение:
Примечание

Предварительно в firewall необходимо разрешить протокол ESP и ISAKMP (UDP-порт 500, 4500).

  1. Конфигурирование R1

    Настроим внешний сетевой интерфейс и определим принадлежность к зоне безопасности:

    Блок кода
    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, по которым могут согласовываться узлы и ключ аутентификации:

    Блок кода
    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. В данном профиле указывается VTI-туннель, политика, версия протокола и режим перенаправления трафика в туннель:

    Блок кода
    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-протокола, политика IP sec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой 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


  2. Конфигурирование R2
  3. Настроим внешний сетевой интерфейс и определим принадлежность к зоне безопасности:

    Блок кода
    esr# configure
    esr(config)# interface gi 1/0/1
    esr(config-if)# ip address 203.0.113.1/24
    esr(config-if)# security-zone untrusted
    esr(config-if)# exit

    Scroll Pagebreak
    Для настройки правил зон безопасности потребуется создать профиль порта протокола ISAKMP:

    Блок кода
    esr(config)# object-group service ISAKMP
    esr(config-addr-set)# port-range 500
    esr(config-addr-set)# 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, по которым могут согласовываться узлы и ключ аутентификации:

    Блок кода
    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-туннель, политика, версия протокола и режим перенаправления трафика в туннель:

    Блок кода
    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

    Scroll Pagebreak
    Создадим IPsec VPN. В VPN указывается шлюз IKE-протокола, политика IP sec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой 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

    Состояние туннеля можно посмотреть командой:

    Блок кода
    esr# show security ipsec vpn status ipsec1

    Конфигурацию туннеля можно посмотреть командой:

    Блок кода
    esr# show security ipsec vpn configuration ipsec1


...

ШагОписаниеКомандаКлючи
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.
Значение по умолчанию: sha1.
4Установить IP-адрес локальной стороны VTI-туннеля (не обязательно).

esr(config-vti)# ip address <ADDR/LEN> [unit <ID>]

или

esr(config-vti)# ip address <ADDR/LEN> secondary [unit <ID>]

<ADDR/LEN> – IP-адрес и префикс подсети задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..31];

<ID> – номер юнита, принимает значения [1..2].

Ключ secondary указывает, что настроенный адрес является дополнительным IP-адресом. Если это ключевое слово отсутствует, настроенный адрес является основным IP-адресом. Возможно указать до 7 дополнительных IP-адресов.

5Определить номер группы Диффи-Хэллмана (не обязательно).

esr(config-ike-proposal)# dh-group <DH-GROUP>

<DH-GROUP> – номер группы Диффи-Хэллмана, принимает значения [1, 2, 5, 14, 15, 16, 17, 18].

Значение по умолчанию: 1.

6Создать политику для профиля IKE и перейти в режим её конфигурирования.

esr(config)# security ike policy <NAME>

<NAME> – имя политики IKE, задаётся строкой до 31 символа.
7Определить режим аутентификации.

esr(config-ike- policy)# authentication method <METHOD>

<METHOD> – метод аутентификации ключа. Может принимать значения:

  •  xauth - psk - key – метод двухфакторной аутентификации, использующий пару логин-пароль и предварительно полученные ключи шифрования;
  • eap - метод двухфакторной аутентификации, использующий пару логин-пароль и предварительно полученные сертификаты.
8Задать режим клиента (только для клиента).

esr(config-ike- policy)# authentication mode client


9Задать время жизни соединения протокола IKE (не обязательно).

esr(config-ike- policy)# lifetime seconds <SEC>

<SEC> – период времени, принимает значения [4 ..86400] секунд.

Значение по умолчанию: 3600.

10Привязать политику к профилю.

esr(config-ike-policy)# proposal <NAME>

<NAME> – имя профиля протокола IKE, задаётся строкой до 31 символа.
11Указать ключ аутентификации.

esr(config-ike-policy)#pre-shared-key ascii-text <TEXT>

<TEXT> – строка [1..64] ASCII символов.
12Указать сертификаты и ключи (только для метода EAP)esr-10(config-ike-policy)# crypto <CERTEFICATE-TYPE> <NAME><CERTIFICATE-TYPE> – тип сертификата или ключа, может принимать следующие значения:
  • ca – сертификат удостоверяющего сервера;
  • crl – список отозванных сертификатов;
  • local-crt – публичный сертификат сервера удалённого доступа;
  • local-crt-key – приватный ключ сервера удалённого доступа.

<NAME> – имя сертификата или ключа, задаётся строкой до 31 символа.

На стороне сервера необходимо добавить набор сертификатов (ca, local-crt, local-key).

На стороне клиента необходимо указать только корневой сертификат (ca).

13Создать профиль доступа.

esr(config)# access profile <NAME>

<NAME> – имя профиля доступа, задаётся строкой до 31 символа.
14Создать имя пользователя.

esr(config-access-profile)# user <LOGIN>

<LOGIN> – логин клиента, задаётся строкой до 31 символа.
15Задать пароль пользователя.

esr(config-profile)# password ascii-text <TEXT>

<TEXT> – строка [8..32] ASCII символов.
16Создать пул адресов назначения (только для сервера).

esr(config)# address-assignment pool <NAME>

<NAME> – имя пула адресов назначения, задаётся строкой до 31 символа.
17Задать подсеть, из которой будут выдаваться IP клиентам (только для сервера).

esr(config-pool)# ip prefix <ADDR/LEN>

<ADDR/LEN> – адрес подсети и префикс.
18Создать шлюз для IKE и перейти в режим его конфигурирования.

esr(config)# security ike gateway <NAME>

<NAME> – имя шлюза протокола IKE, задаётся строкой до 31 символа.
19Привязать политику IKE.

esr(config-ike-gw)# ike-policy <NAME>

<NAME> – имя политики протокола IKE, задаётся строкой до 31 символа.
20Установить режим перенаправления трафика в туннель.

esr(config-ike-gw)# mode <MODE>

<MODE> – режим перенаправления трафика в туннель, принимает значения:

  • policy - based – трафик перенаправляется на основе принадлежности к указанным в политиках подсетям.
21Указать действие для DPD (не обязательно).

esr(config-ike-gw)# dead-peer-detection action <MODE>

<MODE> – режим работы DPD:

  • restart – соединение переустанавливается;
  • clear – соединение останавливается;
  • hold – соединение поддерживается;
  • none – механизм выключен, никаких действий не предпринимается.

Значение по умолчанию: none.

22Указать интервал между отправкой сообщений механизмом DPD (не обязательно).

esr(config-ike-gw)#dead-peer-detection interval <SEC>

<SEC> – интервал между отправкой сообщений механизмом DPD, принимает значения [1..180] секунд.

Значение по умолчанию: 2.

23

Указать период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 1 (не обязательно).

esr(config-ike-gw)# dead-peer-detection timeout <SEC>

<SEC> – период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 1, принимает значения [1..180] секунд.

Значение по умолчанию: 30 секунд.

24Указать базовый период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2 (не обязательно).esr(config-ike-gw)# dead-peer-detection retransmit timeout <SEC>
<SEC> – базовый период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2, принимает значения [1..30] секунд.
Значение по умолчанию: 4 секунды.
25Указать количество попыток повторной отправки сообщений механизма DPD после наступления таймаута ожидания ответа при использовании протокола IKE версии 2 (не обязательно).esr(config-ike-gw)# dead-peer-detection retransmit tries <TRIES>

<TRIES> – количество попыток повторной отправки сообщений механизма DPD в случае наступления таймаута ожидания ответа при использовании протокола IKE версии 2, принимает значения от 1 до 10.
Для первого отправленного сообщения DPD период времени ожидания ответа будет равен базовому периоду, указанному в команде dead-peer-detection retransmit timeout, а для последующих попыток интервал ожидания будет рассчитан по формуле:

"dead-peer-detection retransmit timeout" * 1.8 ^ (N-1), где N - номер попытки.

Значение по умолчанию: 5 попыток.

26Указать уровень случайного разброса периода ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2 (не обязательно).esr(config-ike-gw)# dead-peer-detection retransmit jitter <VALUE>

<VALUE> – максимальный процент разброса значений, принимает значения [0..100].

Значение по умолчанию: 0 %

27Указать ограничение максимального периода времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2 (не обязательно).esr(config-ike-gw)# dead-peer-detection retransmit limit <SEC>

<SEC> – максимальный период времени ожидания ответа на сообщения механизма DPD при использовании протокола IKE версии 2, принимает значения [15..300] секунд.

Значение по умолчанию: 0 секунд, у периода нет верхнего предела.

28Задать пул динамического выделения IP-адресов клиентам (только для сервера).

esr(config-ike-gw)# remote network dynamic pool <NAME>

<NAME> – имя пула адресов назначения, задаётся строкой до 31 символа.
29Задать режим динамического установления удаленной подсети (только для клиента).

esr(config-ike-gw)# remote network dynamic client


30Задать профиль доступа (только для сервера).

esr(config-ike-gw)# access-profile <NAME>

<NAME> – имя профиля доступа, задаётся строкой до 31 символа.
31Задать профиль доступа и логин (только для клиента).

esr(config-ike-gw)# access-profile <NAME> client <LOGIN>

<NAME> – имя профиля доступа, задаётся строкой до 31 символа;

<LOGIN> – логин клиента, задаётся строкой до 31 символа.

32Задать интерфейс терминации выделенного IP для построения IPsec VPN (только для клиента).

esr(config-ike-gw)# assign-interface loopback <INDEX>

<INDEX> – индекс интерфейса, принимает значения [1..65535].
33Создать профиль IPsec.

esr(config)# security ipsec proposal <NAME>

<NAME> – имя профиля протокола IPsec, задаётся строкой до 31 символа.
34Определить алгоритм аутентификации для IPsec (не обязательно).

esr(config-ipsec-proposal)# authentication algorithm <ALGORITHM>

<ALGORITHM> – алгоритм аутентификации, принимает значения: md5, sha1, sha2-256, sha2‑384, sha2-512.

Значение по умолчанию: sha1.

35Определить алгоритм шифрования для IPsec (не обязательно).

esr(config-ipsec-proposal)# encryption algorithm <ALGORITHM>

<ALGORITHM> – протокол шифрования, принимает значения: des, 3des, blowfish128, blowfish192, blowfish256, aes128, aes192, aes256, aes128ctr, aes192ctr, aes256ctr, camellia128, camellia192, camellia256.

Значение по умолчанию: 3des.

36Указать протокол (не обязательно).

esr(config-ipsec-proposal)#protocol <PROTOCOL>

<PROTOCOL> – инкапсулирующий протокол, принимает значения:

  • ah – данный протокол осуществляет только аутентификацию трафика, шифрование данных не выполняется;
  • esp – данный протокол осуществляет аутентификацию и шифрование трафика.

Значение по умолчанию: esp.

37config-ipsec-proposal конфигурирования

esr(config)# security ipsec policy <NAME>

<NAME> – имя политики IPsec, задаётся строкой до 31 символа.
38Привяжем политику к профилю

esr(config-ipsec-policy)# proposal <NAME>

<NAME> – имя профиля протокола IPsec, задаётся строкой до 31 символа.
39Задать время жизни IPsec-туннеля (не обязательно).

esr(config-ipsec-policy)# lifetime { seconds <SEC> |
packets <PACKETS> | kilobytes <KB> }

<SEC> – период времени жизни IPsec-туннеля, по истечении которого происходит пересогласование.

Принимает значения [1140..86400] секунд.

Значение по умолчанию: 540.

<PACKETS> – количество пакетов, после передачи которых происходит пересогласование IPsec-туннеля.

Принимает значения [4..86400].

Значение по умолчанию: отключено.

<KB> – объем трафика, после передачи которого происходит пересогласование IPsec-туннеля. Принимает значения [4..4608000] секунд.

Значение по умолчанию: отключено.

40Создать IPsec VPN и перейти в режим конфигурирования.

esr(config)# security ipsec vpn <NAME>

<NAME> – имя VPN, задаётся строкой до 31 символа.
41Определить режим согласования данных, необходимых для активации VPN.

esr(config-ipsec-vpn)# mode <MODE>

<MODE> – режим работы VPN, принимает значения: ike, manual.
42Привязать IPsec политику к VPN.

esr(config-ipsec-vpn)#ike ipsec-policy <NAME>

<NAME> – имя IPsec-политики, задаётся строка до 31 символа.
43Задать значение DSCP для использования в IP-заголовке исходящих пакетов IKE-протокола (не обязательно).

esr(config-ipsec-vpn)#ike dscp <DSCP>

DSCP> – значение кода DSCP, принимает значения в диапазоне [0..63].

Значение по умолчанию: 63.

44Устанавливается режим активации VPN.

esr(config-ipsec-vpn)#ike establish-tunnel <MODE>

<MODE> – режим активации VPN:

  • by - request – соединение активируется встречной стороной, доступно для сервера;
  • route – соединение активируется при появлении трафика, маршрутизируемого в туннель, доступно для сервера;
  • immediate – туннель активируется автоматически после применения конфигурации, доступно для клиента.
45Осуществить привязку IKE-шлюза к VPN.

esr(config-ipsec-vpn)# ike gateway <NAME>

<NAME> – имя IKE-шлюза, задаётся строкой до 31 символа.
46Установить значение временного интервала в секундах, по истечению которого соединение закрывается, если не было принято или передано ни одного пакета через SA (не обязательно).

esr(config-ipsec-vpn)# ike idle-time <TIME>

<TIME> – интервал в секундах, принимает значения [4..86400].

Значение по умолчанию: 0.

47Отключить пересогласование ключей до разрыва IKE-соединения по истечению времени, количеству переданных пакетов или байт (не обязательно).

esr(config-ipsec-vpn)#ike rekey disable

Значение по умолчанию: включено.
48Настроить начало пересогласования ключей IKE-соединения до истечения времени жизни (не обязательно).

esr(config-ipsec-vpn)# ike rekey margin { seconds <SEC> |
packets <PACKETS> | kilobytes <KB> }

<SEC> – интервал времени в секундах, оставшийся до закрытия соединения (задается командой lifetimeseconds) . Принимает значения [4..86400].
Значение по умолчанию: 540

<PACKETS> – количество пакетов, оставшихся до закрытия соединения (задается командой lifetimepackets). Принимает значения [4..86400].
Значение по умолчанию: отключено.

<KB> – объем трафика в килобайтах, оставшийся до закрытия соединения (задается командой lifetimekilobytes). Принимает значения [4..86400]
Значение по умолчанию: отключено.

49Установить уровень случайного разброса значений параметров marginseconds, marginpackets, marginkilobytes (не обязательно).

esr(config-ipsec-vpn)# ike rekey randomization <VALUE>

<VALUE> – максимальный процент разброса значений, принимает значения [1..100].

Значение по умолчанию: 100.

50Описать VPN (не обязательно).

esr(config-ipsec-vpn)# description <DESCRIPTION>

<DESCRIPTION> – описание профиля, задаётся строкой до 255 символов.
51Активировать IPsec VPN.

esr(config-ipsec-vpn)# enable


52Включить режим переподключения клиентов XAUTH с одним логином/паролем (только для сервера) (не обязательно).

esr(config-ipsec-vpn)# security ike session uniqueids <MODE>

<MODE> – режим переподключения, принимает следующие значения:

  • no – установленное подключение XAUTH будет удалено, если для нового подключения XAUTH инициатором соединения будет отправлено уведомление "INITIAL_CONTACT", будет назначен ранее использованный IP-адрес. В противном случае, установленное соединение XAUTH будет удержано. Для нового подключения XAUTH будет назначен новый IP-адрес.
  • never – установленное подключение XAUTH будет удержано. Для нового подключения XAUTH будет назначен новый IP-адрес. Уведомление "INITIAL_CONTACT" будет в любом случае проигнорировано.
  • replace – установленное подключение XAUTH будет удалено. Для нового подключения XAUTH будет использован ранее использованный IP-адрес.
  • keep – установленное подключение XAUTH будет удержано. Новое подключение XAUTH будет отклонено. 

...

  • логин: client1;
  • пароль: password123.
Решение:
Примечание

Предварительно в firewall необходимо разрешить протокол ESP и ISAKMP (UDP-порт 500, 4500).

  1. Конфигурирование 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

    Scroll Pagebreak

    Для настройки правил зон безопасности потребуется создать профиль порта протокола 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

    Scroll Pagebreak

    Создадим шлюз протокола 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

    Scroll Pagebreak

    Разрешим протокол 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 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


  2. Конфигурирование 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

    Scroll Pagebreak

    Создадим профиль доступа и заведем в нем пару логин и пароль:

    Блок кода
    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

    Создадим 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 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


Пример настройки DPD (Dead Peer Detection)

Задача:

Image Modified

Настроить Dead Peed Detection на R1 для Policy-based Ipsec VPN между R1 и R2.

...

ШагОписаниеКомандаКлючи
1Создать LT-туннели для каждого из существующих VRF.

esr(config)# tunnel lt <ID>

<ID> – идентификатор туннеля в диапазоне [1..128].
2Указать описание конфигурируемых туннелей (не обязательно).

esr(config-lt)# description <DESCRIPTION>

<DESCRIPTION> – описание туннеля, задаётся строкой до 255 символов.

3

Включить каждый LT-туннель в соответствующий VFR.

esr(config-lt)# ip vrf forwarding <VRF>

<VRF> – имя VRF, задается строкой до 31 символа.

4

Включить каждый LT-туннель в зону безопасности и настроить правила взаимодействия между зонами или отключить firewall для LT-туннеля.

esr(config-lt)# security-zone<NAME>


<NAME> – имя зоны безопасности, задаётся строкой до 12 символов.

esr(config-lt)# ip firewall disable


5

Для каждого LT-туннеля задать номер противоположный LT туннель (в другом VRF).

esr(config-lt)# peer lt <ID>

<ID> – идентификатор туннеля в диапазоне [1..128].

6

Для каждого LT-туннеля указать IP-адрес для маршрутизации пакетов. Для взаимодействующих LT-туннелей, IP-адреса должны быть из одной IP-подсети.

esr(config-lt)# ip address <ADDR/LEN> [unit <ID>]

или

esr(config-lt)# ip address <ADDR/LEN> secondary [unit <ID>]

<ADDR/LEN> – IP-адрес и префикс подсети, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..32];

<ID> – номер юнита, принимает значения [1..2].

Ключ secondary указывает, что настроенный адрес является дополнительным IP-адресом. Если это ключевое слово отсутствует, настроенный адрес является основным IP-адресом. Возможно указать до 7 дополнительных IP-адресов.

7

Включить туннели.

esr(config-lt)# enable


8

Для каждого VRF настроить необходимые протоколы маршрутизации через LT-туннель.



9

Задать интервал времени, за который усредняется статистика о нагрузке на туннеле (не обязательно).

esr(config-lt)# load-average <TIME>

<TIME> – интервал в секундах, принимает значения [5..150].

Значение по умолчанию: 5.

10

Указать размер MTU (Maximum Transmition Unit) пакетов, которые может пропускать данный bridge (не обязательно; возможно, если в bridge включен только VLAN).
MTU более 1500 будет активно только в случае применения команды "system jumbo-frames".

esr(config-lt)# mtu <MTU>

<MTU> – значение MTU, принимает значения в диапазоне:

  • для ESR-10/12V(F)/15/
    15R/15VF – [1280..9600];
  • для ESR-20/21/30/31 –
    [1280..9500];
  • для ESR-100/200/1000/
    1200/1500/1511/1700/3100/3200/3200L/3300
    – [1280..10000].

Значение по умолчанию: 1500.

...

Блок кода
esr(config)# tunnel lt 1
esr(config-lt)# peer lt 2
esr(config-lt)# enable
esr(config-lt)# exit
esr(config)# tunnel lt 2
esr(config-lt)# peer lt 1
esr(config-lt)# enable
esr(config-lt)# exit


Примечание

Если в VRF не сконфигурирован ни один из протоколов динамической маршрутизации, то необходимо указать статические маршруты для каждого VRF:

Блок кода
esr(config)# ip route vrf vrf_1 0.0.0.0/0 192.168.0.2
esr(config)# ip route vrf vrf_2 0.0.0.0/0 192.168.0.1


...