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

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

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.
Комментарий: Оксененко С. Добавил пример настройки DPD в IPsec

...

Примечание

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

Алгоритм

...

настройки Remote Access IPsec VPN

Remote Access IPsec VPN – сценарий организации временных VPN-подключений, в котором сервер IPsec VPN находится в режиме ожидания входящих подключений, а клиенты осуществляют временные подключения к серверу для получения доступа к сетевым ресурсам.

...

ШагОписаниеКомандаКлючи
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>

<ADDR/LEN> – IP-адрес и префикс подсети задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..31].
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 – метод двухфакторной аутентификации, использующий пару логин-пароль и предварительно полученные ключи шифрования.
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Создать профиль доступа.

esr(config)# access profile <NAME>

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

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

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

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

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

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

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

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

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

esr(config)# security ike gateway <NAME>

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

24Установить IP подсети отправителя (только для сервера).

esr(config-ike-gw)# local 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].

25Установить IP-адрес локального шлюза IPsec-туннеля.

esr(config-ike-gw)#local address <ADDR>

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

esr(config-ike-gw)#remote address [any | <ADDR/LEN>
[ protocol { <TYPE> | <ID> } [ port <PORT> ] ]

Any – установить в качестве удаленного адреса – любой адрес клиента, в конфигурации сервера;

<ADDR/LEN> – IP-адрес и маска подсети сервера, в конфигурации клиента.

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

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

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

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


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

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

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

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

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

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

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

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

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

esr(config)# security ipsec proposal <NAME>

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

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

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

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

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

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

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

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

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

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

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

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

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

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

esr(config)# security ipsec policy <NAME>

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

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

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

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

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

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

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

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

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

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

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

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

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

esr(config)# security ipsec vpn <NAME>

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Значение по умолчанию: включено.
47Настроить начало пересогласования ключей 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]
Значение по умолчанию: отключено.

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

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

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

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

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

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

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

esr(config-ipsec-vpn)# enable


51Включить режим переподключения клиентов 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 будет отклонено. 

Пример

...

настройки Remote Access IPsec VPN

Задача:

Настроить Remote Access IPsec VPN между R1 и R2 с использованием второго фактора аутентификации IPsec - XAUTH. В качестве сервера IPsec VPN настроить маршрутизатор R1, а маршрутизатор R2 в качестве клиента IPsec VPN.

...

Примечание

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

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

Задача:

Image Added

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

Исходную конфигурацию можно взять из Пример настройки Remote Access IPsec VPN.

Решение:

На R1 в шлюзе протокола IKE укажем: режим работы DPD – restart, интервал опроса – 1 секунду, таймаут – 4 секунды:

Блок кода
esr# configure 
esr(config)# security ike gateway ike_gw1
esr(config-ike-gw)# dead-peer-detection action restart
esr(config-ike-gw)# dead-peer-detection interval 1
esr(config-ike-gw)# dead-peer-detection timeout 4
esr(config-ike-gw)# exit

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

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

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

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

После разрыва соединения между R1 и R2, на R1 IPsec туннель начнет перестраиваться спустя 4 секунды после разрыва.

Блок кода
esr# show security ipsec vpn status 
Name                              Local host        Remote host       Initiator spi        Responder spi        State         
-------------------------------   ---------------   ---------------   ------------------   ------------------   -----------   
ipsec1                            198.51.100.1      203.0.113.1       0x7a77a25a55853255   0xb62fd04f2db43d08   Established   
2037-10-30T07:52:53+00:00 %CLI-I-CMD: user admin from console  input: show security ipsec vpn status
esr# show security ipsec vpn status 
Name                              Local host        Remote host       Initiator spi        Responder spi        State         
-------------------------------   ---------------   ---------------   ------------------   ------------------   -----------   
ipsec1                            198.51.100.1      203.0.113.1       0x77706e37b4e68cce   0x0000000000000000   Connecting    
2037-10-30T07:52:57+00:00 %CLI-I-CMD: user admin from console  input: show security ipsec vpn status

Якорь
Настройка LT-туннелей
Настройка LT-туннелей
Настройка LT-туннелей

LT (англ. Logical Tunnel – логический туннель) – тип туннелей, предназначенный для передачи маршрутной информации и трафика между различными виртуальными маршрутизаторами (VRF Lite), сконфигурированными на одном аппаратном маршрутизаторе. LT-туннель может использоваться для организации взаимодействия между двумя или более VRF с применением ограничений firewall.

Алгоритм настройки

ШагОписаниеКомандаКлючи
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>

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

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)/14VF – [1280..9600];
  • для ESR-20/21 – [1280..9500];
  • для ESR-100/200/1000/1200/1500/1511/1700/3100 – [1280..10000].

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

Пример настройки

Задача:

Организовать взаимодействие между хостами, терминированными в двух VRF vrf_1 и vrf_2.

...

Блок кода
hostname esr
ip vrf vrf_1
exit
ip vrf vrf_2
exit
interface gigabitethernet 1/0/1
  ip vrf forwarding vrf_1
  ip firewall disable
  ip address 10.0.0.1/24
exit
interface gigabitethernet 1/0/2
  ip vrf forwarding vrf_2
  ip firewall disable
  ip address 10.0.1.1/24
exit
Scroll Pagebreak
Решение:

Создадим LT-туннели для каждого VRF с указанием IP-адресов из одной подсети:

...