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

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

Ключ

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

...

Шаг

Описание

Команда

Ключи

1

Создать профиль OpenVPN-сервера.

esr(config)# remote-access openvpn <NAME>

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

2

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

esr(config-openvpn-server)# description <DESCRIPTION>

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

3

Определим подсеть, из которой выдаются IP-адреса пользователям (только для tunnel ip).

esr(config-openvpn-server)# network <ADDR/LEN>

<ADDR/LEN> – адрес подсети, имеет следующий формат:

AAA.BBB.CCC.DDD/EE – IP-адрес подсети с маской в форме префикса, где AAA-DDD принимают значения [0..255] и EE принимает значения [16..29].

4

Указать инкапсулируемый протокол.

esr(config-openvpn-server)# protocol <PROTOCOL>

<PROTOCOL> – тип инкапсуляции, возможные значения:

  • TCP-инкапсуляция в TCP-сегменты;
  • UDP-инкапсуляция в UDP-дейтаграммы.

5

Определить тип соединения с частной сетью через OpenVPN-сервер.

esr(config-openvpn-server)# tunnel <TYPE>

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

  • ip – соединение точка-точка;
  • ethernet – подключение к L2-домену.

6

Указать список IP-адресов, из которого OpenVPN-сервером выдаются динамические IP-адреса удаленным пользователям в режиме L2 (только для tunnel ethernet).

esr(config-openvpn-server)# address-range <FROM-ADDR>-<TO-ADDR>

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

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

7

Включить клиентские соединения по OpenVPN в L2-домен (только для tunnel ethernet).

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

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

8

Указать сертификаты и ключи.

esr(config-openvpn-server)# certificate crypto <CERTIFICATE-TYPE> <NAME>

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

  • ca – сертификат удостоверяющего сервера;
  • crl – список отозванных сертификатов;
  • dh – ключ Диффи-Хеллмана;
  • server - crt cert – публичный сертификат сервера;
  • server private-key – приватный ключ сервера;
  • ta – HMAC-ключ.

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

9

Выбрать алгоритм шифрования, используемый при передачи данных.

esr(config-openvpn-server)# encryption algorithm <ALGORITHM>

<ALGORITHM> – идентификатор протокола шифрования, принимает значения: 3des,blowfish128, aes128.

10

Включить OpenVPN-сервер в зону безопасности и настроить правила взаимодействия между зонами (см. раздел Конфигурирование Firewall).

esr(config-openvpn-server)# security-zone <NAME>

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

11

Определить дополнительные параметры для указанного пользователя OpenVPN-сервера (при использовании локальной базы для аутентификации пользователей).

esr(config-openvpn-server)# username < NAME >

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


12

Определить подсеть для указанного пользователя OpenVPN-сервера.

esr(config-openvpn-user)# subnet <ADDR/LEN>

<ADDR/LEN> – адрес подсети, имеет следующий формат:
 AAA.BBB.CCC.DDD/EE – IP-адрес подсети с маской в форме префикса, где AAA-DDD принимают значения [0..255] и EE принимает значения [16..32].

13

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

esr(config-openvpn-user)# ip address <ADDR>

<ADDR> – адрес имеет следующий формат:
 AAA.BBB.CCC.DDD – IP-адрес подсети, где AAA-DDD принимают значения [0..255].

14

Включить профиль OpenVPN-сервера.

esr(config-openvpn-server)# enable


15

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

esr(config-openvpn-server)# client-isolation


16

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

esr(config-openvpn-server)# client-max <VALUE>

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

17

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

esr(config-openvpn-server)# compression


18

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

esr(config-openvpn-server)# dns-server <ADDR>

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

19

Указать TCP-/UDP-порт, который будет прослушиваться OpenVPN-сервером (не обязательно).

esr(config-openvpn-server)# port <PORT>

<PORT> – TCP-/UDP-порт, принимает значения [1..65535].

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

20

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

esr(config-openvpn-server)# redirect-gateway


21

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

esr(config-openvpn-server)# route <ADDR/LEN>

<ADDR/LEN> – адрес подсети, имеет следующий формат:

AAA.BBB.CCC.DDD/EE – IP-адрес подсети с маской в форме префикса, где AAA-DDD принимают значения [0..255] и EE принимает значения [1..32].

22

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

esr(config-openvpn-server)# timers holdtime <TIME>

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

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

23

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

esr(config-openvpn-server)# timers keepalive <TIME>

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

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

24

Разрешить подключаться к OpenVPN-серверу нескольким пользователям с одним сертификатом.

esr(config-openvpn-server)# duplicate-cn


25

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

esr(config-openvpn-server)# wins-server <ADDR>

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

26Изменить алгоритм аутентификации OpenVPN-клиентов (не обязательно).

esr(config-openvpn-server)# authentication algorithm <ALGORITHM>

<ALGORITHM> – алгоритм аутентификации:

  • 8-128 bits key size: md4, rsa-md4, md5, rsa-md5, mdc2, rsa-mdc2
  • 8-160 bits key size: sha, sha1, rsa-sha, rsa-sha1, rsa-sha1-2, dsa, dsa-sha, dsa-sha1, dsa-sha1-old, ripemd160, rsa-ripemd160, ecdsa-with-sha1
  • 8-224 bits key size: sha-224, rsa-sha-224
  • 8-256 bits key size: sha-256, rsa-sha-256
  • 8-384 bits key size: sha-384, rsa-sha-384
  • 8-512 bits key size: sha-512, rsa-sha-512, whirlpool

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

...

Блок кода
esr# copy tftp://192.168.16.10:/ca.crt certificatecrypto:cacert/ca.crt
esr# copy tftp://192.168.16.10:/dh.pem certificatecrypto:dh/dh.pem
esr# copy tftp://192.168.16.10:/server.key certificatecrypto:serverprivate-key/server.key
esr# copy tftp://192.168.16.10:/server.crt certificatecrypto:server-crtcert/server.crt 
esr# copy tftp://192.168.16.10:/ta.key certificatecrypto:ta/ta.key

Создадим OpenVPN-сервер и подсеть, в которой он будет работать:

...

Блок кода
esr(config-openvpn)# certificatecrypto ca ca.crt
esr(config-openvpn)# certificatecrypto dh dh.pem
esr(config-openvpn)# certificatecrypto serverprivate-key server.key
esr(config-openvpn)# certificatecrypto server-crtcert server.crt
esr(config-openvpn)# certificatecrypto ta ta.key

Укажем зону безопасности, к которой будут относиться сессии пользователей:

...

Примечание

Помимо создания OpenVPN-сервера необходимо в firewall открыть TCP-порт 1194.

Настройка сервера удаленного доступа к корпоративной сети по WireGuard-протоколу

WireGuard — простой, быстрый и современный VPN, использующий современную криптографию (ChaCha20, Poly1305, Curve25519, BLAKE2s, SipHash24, HKDF). WireGuard надежно инкапсулирует IP-пакеты поверх UDP. В основе WireGuard лежит концепция под названием «Маршрутизация криптоключей», которая работает путем связывания открытых ключей со списком IP-адресов туннеля, которым разрешено находиться внутри туннеля. Каждый сетевой интерфейс имеет закрытый ключ и список пиров. У каждого узла есть открытый ключ. Открытые ключи короткие и простые и используются узлами для аутентификации друг друга. Их можно передавать для использования в файлах конфигурации любым внешним методом, аналогично тому, как можно отправить открытый ключ SSH для доступа к серверу.

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

Шаг

Описание

Команда

Ключи

1

Создать профиль WireGuard-сервера.

esr(config)# remote-access wireguard <NAME>

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

2

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

esr(config-wireguard-server)# description <DESCRIPTION>

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

3

Определить статический IP-адрес конфигурируемого сервера (обязательно).esr(config-wireguard-server)# local-address <ADDR/LEN><ADDR/LEN> – IP-адрес и длина маски подсети, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..32].
4Указать UDP-порт, который будет прослушиваться WireGuard-сервером (не обязательно).esr(config-wireguard-server)# port <PORT><PORT> – UDP-порт, принимает значения [1..65535].
5Отключить функции Firewall или включить WireGuard-сервер в зону безопасности и настроить правила взаимодействия между зонами (см. раздел Конфигурирование Firewall).esr(config-wireguard-server)# ip firewall disable
esr(config-wireguard-server)# security-zone <NAME><NAME> – имя зоны безопасности, задаётся строкой до 31 символа. 
6Задать MTU (не обязательно).esr(config-wireguard-server)# mtu <MTU>

<MTU> – 552–10000.

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

7Указать приватный ключ WireGuard-сервера (обязательно).esr(config-wireguard-server)# private-key <NAME><NAME> – имя приватного ключа, задаётся строкой до 31 символа.
8Указать список DNS-серверов, которые будут использовать удаленные пользователи (не
обязательно).
esr(config-wireguard-server)# dns-server <ADDR | ADDR, ADDR>

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

9Включить профиль WireGuard-сервера.esr(config-wireguard-server)# enable
10Перейти к настройке разрешённых туннелей WireGuard-сервера.esr(config-wireguard-server)# peer <COUNT><COUNT> – номер соответствующего пира, принимает значения [1..16].
11Указать описание туннеля (не обязательно).esr(config-wireguard-server-peer)# description <DESCRITPION><DESCRIPTION> – описание WireGuard-сервера, задаётся строкой до 255 символов.
12Указать публичный ключ туннеля (обязательно).esr(config-wireguard-server-peer)# public-key <NAME><NAME> – имя публичного ключа, задаётся строкой до 31 символа.
13Указать список IP-адресов, которым будет разрешено находиться внутри туннеля (обязательно).esr(config-wireguard-server-peer)# subnet <OBJ-GROUP-NETWORK-NAME><OBJ-GROUP-NETWORK-NAME> – имя профиля IP-адресов, содержащего префиксы подсетей назначения, задается строкой до 31 символа.
14Включить туннель (обязательно).esr(config-wireguard-server-peer)# enable

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

Задача:

Настроить WireGuard-сервер на маршрутизаторе для подключения удаленных пользователей к ЛВС.

  • адресация внутри туннеля – 10.10.10.0/24;
  • порт подключения к серверу – 43020; 
  • адрес WireGuard-сервера внутри туннеля – 10.10.10.1;
  • DNS-серверы: 8.8.8.8, 8.8.8.4.

Image Added

Scroll Pagebreak

Решение:

Предварительно нужно выполнить следующие действия:

  • загрузить на ESR приватный ключ сервера и публичный ключ клиента;
  • создать object-group network, в которой будет указан список IP-адресов, которым будет разрешено проходить через туннель.

Импортируем по tftp приватный ключ сервера и публичный ключ клиента:

Блок кода
esr# copy tftp://192.168.16.10:/server.priv crypto:private-key/server.priv
esr# copy tftp://192.168.16.10:/client.pub crypto:public-key/client.pub

Создадим object-group network, в которой будет указан список IP-адресов, которым будет разрешено проходить через туннель:

Блок кода
esr(config)# object-group network client_wg
esr(config-object-group-network)# ip address-range 10.10.10.2

Создадим профиль WireGuard-сервера, зададим локальный адрес сервера, порт для прослушивания и выставим MTU:

Блок кода
esr(config)# remote-access wireguard WG
esr(config-wireguard-server)# local-address 10.10.10.1/24
esr(config-wireguard-server)# port 43020
esr(config-wireguard-server)# mtu 1420

Укажем приватный ключ сервера и отключим Firewall:

Блок кода
esr(config-wireguard-server)# private-key server.priv
esr(config-wireguard-server)# ip firewall disable

Перейдем в настройки разрешённого туннеля, укажем связку публичного ключа клиента и разрешённого IP-адреса:

Блок кода
esr(config-wireguard-server)# peer 1
esr(config-wireguard-server-peer)# public-key client.pub
esr(config-wireguard-server-peer)# subnet client_wg

Включим туннель и WireGuard-сервер:

Блок кода
esr(config-wireguard-server-peer)# enable
esr(config-wireguard-server-peer)# exit
esr(config-wireguard-server)# enable

После применения конфигурации маршрутизатор будет прослушивать порт 43020.

Счётчики сессий WireGuard-сервера можно посмотреть командой:

Блок кода
esr# show remote-access counters wireguard server WG

Scroll Pagebreak

Очистить счётчики сессий WireGuard-сервера можно командой:

Блок кода
esr# clear remote-access counters wireguard server WG

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

Блок кода
esr# show remote-access configuration wireguard WG

Настройка клиента удаленного доступа по протоколу PPPoE

PPPoE — это туннелирующий протокол (tunneling protocol), который позволяет инкапсулировать IP PPP через соединения Ethernet и обладает программными возможностями PPP-соединений, что позволяет использовать его для виртуальных соединений на соседнюю Ethernet-машину и устанавливать соединение точка-точка, которое используется для транспортировки IP-пакетов, а также работает с возможностями PPP. Это позволяет применять традиционное PPP-ориентированное ПО для настройки соединения, которое использует не последовательный канал, а пакетно-ориентированную сеть (например, Ethernet), чтобы организовать классическое соединение с логином и паролем для Интернет-соединений. Кроме того, IP-адрес по другую сторону соединения назначается, только когда PPPoE-соединение открыто, позволяя динамическое переиспользование IP-адресов.

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

Шаг

Описание

Команда

Ключи

1

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

esr(config)# tunnel pppoe <PPPoE>

<PPPoE> – порядковый номер туннеля от 1 до 10.

2

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

esr(config-pppoe)# description <DESCRIPTION>

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

3

Указать имя экземпляра VRF, в котором будут использоваться PPPoE-клиент (не обязательно).

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

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

4

Указать интерфейс, через который будет устанавливаться PPPoE соединение.

esr(config-pppoe)# interface <IF>

<IF> – интерфейс или группа интерфейсов.

5

Указать имя пользователя и пароль для подключения к PPPoE-серверу.

esr(config-pppoe)# username <NAME> password ascii-text
{ <CLEAR-TEXT> | encrypted <ENCRYPTED-TEXT> }

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

<CLEAR-TEXT> – пароль, задаётся строкой [8 .. 64] символов;

<ENCRYPTED-TEXT> – зашифрованный пароль, задаётся строкой [16..128] символов.

6

Включить PPPoE-туннель в зону безопасности и настроить правила взаимодействия между зонами (см. раздел Конфигурирование Firewall).

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

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

7

Активировать конфигурируемый профиль.

esr(config-pppoe)# enable


8

Указать метод аутентификации (не обязательно).

esr(config-pppoe)# authentication method <METHOD>

<METHOD> – метод аутентификации, возможные значения: chap, mschap, mschap-v2, eap, pap.

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

9

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

esr(config-pppoe)# ignore-default-route


10

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

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

<TIME> – интервал времени в секундах от 5 до 150 (по умолчанию 5 с).

11

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

esr(config-pppoe)# mtu <MTU>

<MTU> – значение MTU, принимает значения в диапазоне [552..1500].

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

12Изменить количество неудачных data-link тестов перед разрывом сессии (не обязательно).

esr(config-pppoe)# ppp failure-count <NUM>

<NUM> – количество неудачных data-link тестов, задается в диапазоне [1..100].

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

13Изменить интервал времени в секундах, по истечении которого маршрутизатор отправляет keepalive-сообщение (не обязательно).

esr(config-pppoe)# ppp timeout keepalive <TIME >

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

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

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

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

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

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

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

esr(config-pppoe)# history statistics


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

Scroll Pagebreak

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

Задача:

Настроить PPPoE-клиент на маршрутизаторе.

...

Примечание

 Интерфейс, с которого будет осуществляться РРРоЕ-соединение, должен работать в режиме routerport (кроме случаев использования bridge).

Решение:

Предварительно настроить должен быть настроен PPPoE-сервер с соответствующими учетными записями. Также на устройстве должны быть настроены зоны безопасности и описаны правила их взаимодействия.

Зайдем в режим конфигурирования PPPoE-клиента и отключим межсетевой экрантуннеля и зададим пользователя и пароль для подключения к PPPoE-серверу:

Блок кода
esr# configure
esr(config)# tunnel pppoe 1
esr(config-pppoe)# ip firewall disable

Укажем пользователя и пароль для подключения к PPPoE-серверу:

Блок кода
esr(config-pppoe)# username tester password ascii-text password

...

Блок кода
esr(config-pppoe)# interface gigabitethernet 1/0/7
esr(config- pppoe)# enable

Настроим зону безопасности,:

Блок кода
esr(config-pppoe)# security-zone untrust

Scroll Pagebreak

Опционально для PPPoE-туннеля можно указать следующие параметры:

  • Изменить метод аутентификации:

    Блок кода
    esr(config-pppoe)# authentication method 
      METHOD  Select PPP authentication method:
                    chap
                    mschap
                    mschap-v2
                    eap
                    pap


  • Игнорировать полученный маршрут по умолчанию, выданные РРРоЕ-сервером:

    Блок кода
    esr(config-pppoe)# ignore-default-route


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

    Блок кода
    esr(config-pppoe)# ip tcp adjust-mss 1452


  • Указать размер MTU (Maximum Transmition Unit):

    Блок кода
    esr(config-pppoe)# mtu 1496


  • Изменить количество неудачных data-link тестов перед разрывом сессии:

    Блок кода
    esr(config-pppoe)# ppp failure-count 15


  • Установить интервал времени в секундах, по истечении которого маршрутизатор отправляет keepalive-сообщение:

    Блок кода
    esr(config-pppoe)# ppp timeout keepalive 15


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

Блок кода
esr# show tunnels configurationstatus pppoe 1

Счетчики сессий PPPoE-клиента входящих и отправленных пакетов PPPoE-туннеля можно посмотреть командой:

Блок кода
esr# show tunnels counters pppoe 1

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

Блок кода
esr# show tunnels configuration pppoe 1

Настройка клиента удаленного доступа по протоколу PPTP

PPTP (англ. Point-to-Point Tunneling Protocol) – туннельный протокол типа точка-точка, позволяющий устанавливать защищённое соединение за счёт создания специального туннеля в обычной незащищенной сети. PPTP помещает (инкапсулирует) кадры PPP в IP-пакеты для передачи по глобальной IP-сети, например, Интернет. PPTP может также использоваться для организации туннеля между двумя локальными сетями. РРТР использует дополнительное TCP-соединение для обслуживания туннеля.

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

Шаг

Описание

Команда

Ключи

1

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

esr(config)# tunnel pptp <INDEX>

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

2

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

esr(config-pptp)# description <DESCRIPTION>

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

3

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

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

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

4

Включить PPTP-туннель в зону безопасности и настроить правила взаимодействия между зонами или отключить firewall (см. раздел Конфигурирование Firewall).

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

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

esr(config-pptp)# ip firewall disable

          

5

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

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

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

6

Установить размер MTU (MaximumTransmitionUnit) для туннеля (не обязательно)

esr(config-pptp)# mtu <MTU>

<MTU> – значение MTU, принимает значения в диапазоне [552..10000].

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

7

Указать пользователя и установить пароль в открытой или зашифрованной форме для аутентификации удаленной стороны.

esr(config-pptp)# username <NAME> password ascii-text
{ <WORD> | encrypted <HEX> }

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

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

<HEX> – пароль в зашифрованной форме, задается строкой [16..128] символов.

8

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

esr(config-pptp)# enable


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

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

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

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

10

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

esr(config-pptp)# ignore-default-route


11

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

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

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

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

12

Указать метод аутентификации (не обязательно).

esr(config-pptp)# authentication method <METHOD>

<METHOD> – метод аутентификации, возможные значения: chap, mschap, mschap-v2, eap, pap.

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

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

esr(config-pptp)# history statistics


14Изменить интервал времени в секундах, по истечении которого маршрутизатор отправляет keepalive-сообщение (не обязательно).

esr(config-pptp)# ppp timeout keepalive <TIME >

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

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

15Изменить количество неудачных data-link тестов перед разрывом сессии (не обязательно).

esr(config-pptp)# ppp failure-count <NUM>

<NUM> – количество неудачных data-link тестов, задается в диапазоне [1..100].

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

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

Задача:

Настроить PPTP-туннель на маршрутизаторе:

  • адрес PPTP-сервера 20.20.0.1;
  • учетная запись для подключения – логин: ivan, пароль: simplepass.


Решение:

Создадим туннель PPTP:

Блок кода
esr(config)# tunnel pptp 1 

...

L2TP (англ. Layer 2 Tunneling Protocol – протокол туннелирования второго уровня) – туннельный протокол, использующийся для поддержки виртуальных частных сетей. L2TP помещает (инкапсулирует) кадры PPP в IP-пакеты для передачи по глобальной IP-сети, например, Интернет. L2TP может также использоваться для организации туннеля между двумя локальными сетями. L2ТР использует дополнительное UDP-соединение для обслуживания туннеля. L2TP-протокол не предоставляет средств шифрования данных и поэтому он обычно используется в связке с группой протоколов IPsec, которая предоставляет безопасность на пакетном уровне.

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

Шаг

Описание

Команда

Ключи

1

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

esr(config)# tunnel l2tp <INDEX>

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

2

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

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

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

3

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

esr(config-l2tp)# description <DESCRIPTION>

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

4

Включить L2TP-туннель в зону безопасности и настроить правила взаимодействия между зонами или отключить firewall (см. раздел Конфигурирование Firewall).

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

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

esr(config-l2tp)# ip firewall disable


5

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

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

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

6

Указать пользователя и установить пароль в открытой или зашифрованной форме для аутентификации удалённой стороны.

esr(config-l2tp)# username <NAME> password ascii-text
{ <WORD> | encrypted <HEX> }

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

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

<HEX> – пароль в зашифрованной форме, задается строкой [16..128] символов.

7

Выбрать метод аутентификации по ключу для IKE-соединения.

esr(config-l2tp)# ipsec authentication
method pre-shared-key


8

Указать общий секретный ключ для аутентификации, который должен совпадать у обоих сторон, устанавливающих туннель.

esr(config-l2tp)# ipsec authentication pre-shared-key
{ ascii-text { <TEXT> | encrypted <ENCRYPTED-TEXT> } |
hexadecimal {<HEX> | encrypted <ENCRYPTED-HEX> } }

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

<HEX> – число размером [1..32] байт, задаётся строкой [2..128] символов в шестнадцатеричном формате (0xYYYY...) или (YYYY...);

<ENCRYPTED-TEXT> – зашифрованный пароль размером [1..32] байт, задаётся строкой [2..128] символов;

<ENCRYPTED-HEX> – зашифрованное число размером [2..64] байт, задаётся строкой [2..256] символов.

9Ограничить используемые методы аутентификации и шифрования протокола IKE (не обязательно).esr(config-l2tp)# ipsec ike proposal <NAME>

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

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

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

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

11Определяется номер UDP-порта по которому устанавливается соединение с l2tp-сервером (не обязательно).esr(config-l2tp)# port <PORT>

<PORT> – номер UDP-порта, задаётся в диапазоне [1024..65535].

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

12

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

esr(config-l2tp)# enable


13

Установить размер MTU (MaximumTransmitionUnit) для туннеля (не обязательно).

esr(config-l2tp)# mtu <MTU>

<MTU> – значение MTU, принимает значения в диапазоне [552..10000].

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

14

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

esr(config-l2tp)# ignore-default-route


15

Указать метод аутентификации (не обязательно).

esr(config-l2tp)# authentication method <METHOD>

<METHOD> – метод аутентификации, возможные значения: chap, mschap, mschap-v2, eap, pap

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

16

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

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

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

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

17Изменить интервал времени в секундах, по истечении которого маршрутизатор отправляет keepalive-сообщение (не обязательно).

esr(config-l2tp)# ppp timeout keepalive <TIME >

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

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

18Изменить количество неудачных data-link тестов перед разрывом сессии (не обязательно).

esr(config-l2tp)# ppp failure-count <NUM>

<NUM> – количество неудачных data-link тестов, задается в диапазоне [1..100].

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

Также для L2TP-клиента возможно настроить QoS в базовом или расширенном режимах (см. раздел Управление QoS).

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

Задача:

Настроить PPTP-туннель на маршрутизаторе:

  • адрес PPTP-сервера 20.20.0.1;
  • учетная запись для подключения – логин: ivan, пароль: simplepass

Решение:

Создадим туннель L2TP:

Блок кода
esr(config)# tunnel l2tp 1 

...