ESR-1500 FSTEC Межсетевой экран Eltex
ESR-1500 FSTEC
ESR-1500 FSTEC предназначен для использования в корпоративных сетях связи. Устройство сертифицировано Федеральной службой по техническому и экспортному контролю (ФСТЭК)
Количество маршрутов OSPF | 500k |
IPsec Гбит/с | 5.12 |
Количество маршрутов RIP | 10k |
Downlink порты RJ-45 | 4 |
Downlink порты SFP | 4 |
Downlink порты SFP+ | 4 |
В реестре Минпромторга (ТОРП) | Нет |
Размер базы FIB | 1.7M |
Количество маршрутов BGP | 2.8M |
Производительность (фреймы 1518B) Гбит/с | 12.83 |
ФСТЭК | Да |
Производительность (фреймы 1518B) k пкт/с | 1056 |
Количество портов 1G | 8 |
Производительность (фреймы 70B) Гбит/с | 606 |
Количество портов 10G | 4 |
Производительность (фреймы 70B) k пкт/с | 1024 |
Производительность IMIX, Гбит/с | 5.93 |
Производительность IMIX, k пкт/с | 1075 |
Питание | AC |
Размер коробки ШхВхГ, мм | 352 x 430 x 44 |
Вес брутто, кг | 3.6 |
Обзор линейки ESR
- Маршрутизация данных
- Многопротокольная коммутация по меткам (MPLS)
- Построение защищенного периметра сети (NAT, Firewall)
- Мониторинг и предотвращение сетевых атак (IPS/IDS)
- Мониторинг качества обслуживания (SLA)
- Фильтрация сетевых данных по различным критериям (включая фильтрацию по приложениям)
- Организация защищенных сетевых туннелей между филиалами компаний
- Удаленное подключение сотрудников к офису
- Управление и распределение ширины Интернет-канала в офисе посредством QoS
- Соответствие требованиям Федеральной службы по техническому и экспортному контролю (ФСТЭК) в качестве межсетевых экранов
- Использование в качестве межсетевых экранов типа «А» четвертого класса защиты
- Модели устройств с повышенной надежностью и резервированием критических узлов
Производительность
Ключевыми элементами серии ESR являются средства аппаратного ускорения обработки данных, позволяющие достичь высоких уровней производительности. Программная и аппаратная обработка распределены между узлами устройства.
Функциональное назначение
- аутентификация пользователей
- контроль и фильтрация трафика
- сбор и хранение статистики событий
- аппаратное ускорение обработки данных
- взаимодействие с другими средствами защиты информации
- возможность сопряжения с оборудованием ведущих производителей
Противодействие угрозам:
- несанкционированный доступ к цифровой информации организации
- воздействие на межсетевой экран с целью нарушения его функционирования
- отказ в обслуживании информационной системы по причине неконтролируемых сетевых подключений (в том числе DDoS-атак), уязвимостей, недостатков настроек
- несанкционированная передача информации из внутренней системы организации во внешнюю среду, в том числе вследствие работы вредоносного программного обеспечения
- воздействие на межсетевой экран с целью нарушения его функционирования
Схема применения:
- 4xCombo 10/100/1000BASE-T/1000BASE-X
- 4x 10GBASE-R SFP+/1000BASE-X SFP
- 4x Combo 10/100/1000BASE-T/1000BASE-X
- 1xConsole (RJ-45)
- 2xUSB 2.0
- USB 3G/4G/LTE модем
- Производительность Firewall/NAT/маршрутизации (фреймы 1518B) - 12,83 Гбит/с; 1056k пкт/с
- Производительность Firewall/NAT/маршрутизации (фреймы 70B) - 606 Мбит/с; 1024k пкт/с
- Производительность Firewall/NAT/маршрутизации (IMIX) - 5,93 Гбит/с; 1075k пкт/с
- Производительность IPsec VPN (фреймы 1456B) - 5,12 Гбит/с; 440k пкт/с
- Производительность IPsec VPN (IMIX) - 2,38 Гбит/с; 445k пкт/с
- Количество VPN туннелей - 500
- Статические маршруты - 11K
- Количество конкурентных сессий - 512 K
- Поддержка VLAN - до 4k активных VLAN в соответствии с 802.1Q
- Количество маршрутов BGP - 2,8M
- Количество маршрутов OSPF - 500k
- Количество маршрутов RIP - 10k
- Таблица MAC-адресов - 32k записей на бридж
- Размер базы FIB - 1,7M
- VRF Lite - 32
- PPTP, PPPoE, L2TP
- L2TP, PPTP, OpenVPN
- IP over GRE, Ethernet over GRE
- IPIP
- L2TPv3
- LT (inter VRF-lite routing)
- Коммутация пакетов (bridging)
- Агрегация интерфейсов LAG/LACP (802.3ad)
- Поддержка VLAN (802.1Q)
- Логические интерфейсы
- LLDP
- VLAN на основе MAC
- Трансляция адресов NAT, Static NAT, ALG
- Статические маршруты
- Динамические протоколы маршрутизации RIPv2, OSPFv2/v3, BGP
- Фильтрация маршрутов (prefix list)
- VRF Lite
- Policy Based Routing (PBR)
- BFD для BGP, OSPF, статических маршрутов
- Статические IP-адреса
- DHCP-клиент
- DHCP Relay Option 82
- Встроенный сервер DHCP, поддержка опций 43, 60, 61, 150
- DNS lookup
- IP unnumbered
- До 8-ми приоритетных очередей на порт
- L2 и L3 приоритизация трафика (802.1p, DSCP, IP Precedence)
- Управление перегрузкой очередей RED, GRED
- Назначение приоритетов по портам, VLAN
- Средства перемаркирования приоритетов
- Применение политик (policing)
- Управление полосой пропускания (shaping)
- Иерархический QоS
- Маркировка сессий
- VRRP v2,v3
- Управление маршрутами на основе состояния VRRP (tracking)
- Балансировка нагрузки на WAN-интерфейсах, перенаправление потоков данных, переключение при оценке качества канала
- Резервирование сессий firewall
- Разделение сетевых интерфейсов на зоны
- Изоляция зон, Firewall, правила фильтрации данных
- IPsec:
Оценка параметров- Режимы “policy-based” и “route-based”
- Алгоритмы шифрования DES, 3DES, AES, Blowfish, Camellia
- Аутентификация сообщений IKE MD5, SHA-1, SHA-2
- Поддержка списков контроля доступа на базе L2/L3 полей
- Защита от DoS/DDoS-атак и оповещение об атаках
- Логирование событий атак, событий срабатывания правил
- Фильтрация трафика по приложениям
- Поддержка стандартных и расширенных SNMP MIB, RMONv1
- Управление уровнем доступа при администрировании
- Встроенный Zabbix agent
- Аутентификация пользователей по локальной базе средствами протоколов RADIUS, TACACS+, LDAP
- Защита от ошибок конфигурирования, автоматическое восстановление конфигурации. Возможность сброса конфигурации к заводским настройкам
- Интерфейсы управления CLI
- Поддержка Syslog
- Монитор использования системных ресурсов
- Ping, traceroute (IPv4/IPv6), вывод информации о пакетах в консоли
- Обновление ПО, загрузка и выгрузка конфигурации по TFTP, SCP, FTP, SFTP
- Поддержка NTP
- Netflow v5/v9/v10 (экспорт статистики URL для HTTP, host для HTTPS)
- Локальное управление через консольный порт RS-232 (RJ-45)
- Удаленное управление, протоколы Telnet, SSH (IPv4/IPv6)
- Вывод информации по сервисам/процессам
- Eltex SLA
Оценка параметров каналов связи:- Delay (one-way/two-way)
- Jitter (one-way/two-way)
- Packet loss (one-way/two-way)
- Коэффициент ошибок в пакетах
- Нарушение последовательности доставки пакетов
- Максимальная потребляемая мощность - 160 Вт
- Питание:
- 220В AC +-20%, 50 Гц
- -36..-72В DC
- До двух источников питания с возможностью горячей замены
- Интервал рабочих температур - от -10 до +45 °С
- Интервал температуры хранения - от -40 до +70 °С
- Относительная влажность при эксплуатации - не более 80%
- Относительная влажность при хранении - от 10% до 95%
- Габариты (Ш×В×Г), мм - 430х425х44
- Вес - 7 кг
- Средний срок службы - 15 лет
Набор функций соответствует версии ПО 1.5.4




esr# monitor gigabitethernet 1/0/1
Для удобства использования организована возможность фильтрации вывода, например:
esr# monitor gigabitethernet 1/0/1 ?
destination-address Filter by destination IP address
detailed Detailed output
packets Count packets
protocol Choose protocol type
source-address Filter by source IP address
<cr>
esr# monitor gigabitethernet 1/0/1 protocol ?
0-255 Filter by IP protocol number
RDP Filter by RDP protocol
ah Filter by AH protocol
arp Filter by ARP protocol
eigrp Filter by EIGRP protocol
esp Filter by ESP protocol
gre Filter by GRE protocol
icmp Filter by ICMP protocol
icmp6 Filter by ICMP6 protocol
igmp Filter by IGMP protocol
igrp Filter by IGRP protocol
ipip Filter by IPIP protocol
l2tp Filter by L2TP protocol
ospf Filter by OSPF protocol
pim Filter by PIM protocol
tcp Filter by TCP protocol
udp Filter by UDP protocol
vrrp Filter by VRRP protocol
Запись дампов трафика в файл в текущих версиях ПО невозможна.
Источник:
docs.eltex-co.ru
- Задать пароль и активировать пользователя techsupport на маршрутизаторе
Configure
username techsupport
password <Пароль пользователя techsupport>
exit
tech-support login enable
end
commit
confirm
- Подключиться к маршрутизатору esr по ssh с использованием логина techsupport и ранее заданного пароля.
- При помощи команды "ip a" оределить системное наименование интерфейсов, на которых необходимо захватывать пакеты
techsupport@esr:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: dummy0: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether b6:c0:48:6f:0e:6d brd ff:ff:ff:ff:ff:ff
3: eth0: <BROADCAST,MULTICAST> mtu 1518 qdisc noop state DOWN group default qlen 1000
link/ether a8:f9:4b:ab:62:68 brd ff:ff:ff:ff:ff:ff
4: eth1: <BROADCAST,MULTICAST> mtu 1514 qdisc noop state DOWN group default qlen 1000
link/ether a8:f9:4b:ab:62:68 brd ff:ff:ff:ff:ff:ff
5: eth2: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1514 qdisc pfifo_fast state UP group default q0
link/ether a8:f9:4b:ab:62:68 brd ff:ff:ff:ff:ff:ff
6: eth3: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1514 qdisc pfifo_fast state UP group default q0
link/ether a8:f9:4b:ab:62:68 brd ff:ff:ff:ff:ff:ff
7: gi1_1@eth2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue switchid 00000000 state LOW0
link/ether a8:f9:4b:ab:62:69 brd ff:ff:ff:ff:ff:ff
inet 192.168.115.8/20 brd 192.168.127.255 scope global gi1_1
valid_lft forever preferred_lft forever
8: gi1_2@eth2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue switchid 00000000 state LOW0
link/ether a8:f9:4b:ab:62:6a brd ff:ff:ff:ff:ff:ff
9: gi1_3@eth2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue switchid 00000000 state LOW0
link/ether a8:f9:4b:ab:62:6b brd ff:ff:ff:ff:ff:ff
10: gi1_4@eth2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue switchid 00000000 state LO0
link/ether a8:f9:4b:ab:62:6c brd ff:ff:ff:ff:ff:ff
11: gi1_5@eth2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue switchid 00000000 state LO0
link/ether a8:f9:4b:ab:62:6d brd ff:ff:ff:ff:ff:ff
12: gi1_6@eth2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue switchid 00000000 state LO0
link/ether a8:f9:4b:ab:62:6e brd ff:ff:ff:ff:ff:ff
13: tunl0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1
link/ipip 0.0.0.0 brd 0.0.0.0
14: gre0@NONE: <NOARP> mtu 1476 qdisc noop state DOWN group default qlen 1
link/gre 0.0.0.0 brd 0.0.0.0
15: gretap0@NONE: <BROADCAST,MULTICAST> mtu 1462 qdisc noop state DOWN group default qlen 1000
link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
16: ip_vti0@NONE: <NOARP> mtu 1364 qdisc noop state DOWN group default qlen 1
link/ipip 0.0.0.0 brd 0.0.0.0
17: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1
link/sit 0.0.0.0 brd 0.0.0.0
18: ip6tnl0@NONE: <NOARP> mtu 1452 qdisc noop state DOWN group default qlen 1
link/tunnel6 :: brd ::
19: ip6gre0@NONE: <NOARP> mtu 1448 qdisc noop state DOWN group default qlen 1
link/gre6 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00 brd 00:00:00:00:00:00:00:00:00:00:00:000
20: gi1_2.64@gi1_2: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state LOWERLAYERDOWN g0
link/ether a8:f9:4b:ab:62:6a brd ff:ff:ff:ff:ff:ff
inet 172.16.16.1/30 brd 172.16.16.3 scope global gi1_2.64
valid_lft forever preferred_lft forever
21: vlan: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 100
link/ether 5e:2c:79:05:e5:a4 brd ff:ff:ff:ff:ff:ff
22: dvlan: <BROADCAST,NOARP> mtu 1500 qdisc noop master vlan state DOWN group default qlen 1000
link/ether 5e:2c:79:05:e5:a4 brd ff:ff:ff:ff:ff:ff
23: vlan.1@vlan: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state LOWERLAYERDOWN grou0
link/ether 5e:2c:79:05:e5:a4 brd ff:ff:ff:ff:ff:ff
techsupport@esr:~$
- Для физических интерфейсов, системное имя интерфейса выглядит как gi1_<номер интерфейса>
- Для саб-интерфейсов, системное имя интерфейса выглядит как gi1_<номер интерфейса>.<номер vlan в 16-тиричной форме>
- Для bridge-интерфейсов, системное имя интерфейса выглядит как br<номер bridge в CLI>
- Запустить захват пакетов на необходимых интерфейсах в файл:
techsupport@esr:~$ sudo tcpdump -i <системное имя интерфейса1> <ключи для фильтрации пакетов1> -w /tmp/<имя файла для дампа1> -C 1M &
techsupport@esr:~$ sudo tcpdump -i <системное имя интерфейса2> <ключи для фильтрации пакетов2> -w /tmp/<имя файла для дампа2> -C 1M &
Если/когда система потребует ввода пароля - необходимо ввести пароль пользователя techsupport
Дамп можно записывать как на одном так и на нескольких интерфейсах. Всё зависит от текущей проблемы и необходимости.
Нельзя пренебрегать ключами для фильтрации пакетов т.к. размер файла может оказаться слишком большим и он займет всю память маршрутизатора.
Ключ -C 1M ограничивает размер файла дампа в 1 Мегабайт. Можно использовать другое ограничение или не использовать его вовсе, но следить, чтобы файлы не заняли много места в памяти маршрутизатора
- Сгенерировать необходимые пакеты или дождаться проявления той или иной проблемы
Это может быть попытка регистрации телефона на SBC или SoftSwitch, совершение телефонного звонка, или пакеты любого другого протокола маршрутизируемые или обрабатываемые маршрутизатором ESR.
- Остановить захват пакетов в techsupport-ssh-сессии
techsupport@esr:~$ sudo pkill tcpdump
- Скопировать с маршрутизатора собранные дампы.
7.ver1. по протоколу scp
Для ли linux можно использовать команды:
scp techsupport@<ip-маршрутизатора>:/tmp/<имя файла> /home/<путь для копирования>
Для windows - можно использовать scp-клиент отдельный или интегрированный в другие приложения.
- ver2. по протоколу tftp
При наличии в сети tftp-сервера, можно с маршрутизатора загрузить на него полученные дампы при помощи команды:
techsupport@esr:~$ tftp <ip-адрес tftp-сервера> -pl /tmp/<имя файла>
- Удалить файлы дампов с маршрутизатора
techsupport@esr:~$ sudo rm /tmp/<имя файла для дампа1>
techsupport@esr:~$ sudo rm /tmp/<имя файла для дампа2>
Скопировав в п. 7 файлы можно более удобно обрабатывать на ПК при помощи утилиты wireshark.
Источник:
docs.eltex-co.ru
ESR# debug
ESR(debug)# debug ipsec network 2
ESR(debug)# debug ipsec encoding 1
ESR(debug)# debug ipsec ike 2
ESR(debug)# debug ipsec ikemanager 2
ESR(debug)# debug ipsec configuration 1
- Задать пароль и активировать пользователя techsupport на маршрутизаторе
Configure
username techsupport
password <Пароль пользователя techsupport>
exit
tech-support login enable
end
commit
confirm
- Подключиться к маршрутизатору ESR по ssh/console(RS-232) с использованием логина techsupport и ранее заданного пароля.
- Сбор информации(лога) для анализа.
- лог процесса IPSec:
techsupport@esr:~$ sudo cat /var/log/syslog/techsupport/ipsec
- конфигурационный файл IPSec:
techsupport@esr:~$ sudo cat /etc/ipsec.conf
- статус IPSec:
techsupport@esr:~$ sudo ipsec statusall
- если собранный лог достаточно велик и копирование с экрана подключения построчно неудобно, то собранный лог cat /var/log/syslog/techsupport/ipsec возможно скопировать следующим образом:
- a) по протоколу scp
techsupport@esr:~$ sudo cp /var/log/syslog/techsupport/ipsec /tmp/ipsec - копирование файла ipsec из раздела /var в раздел /tmp на маршрутизаторе ESR
копирование на ПК(Linux) файла по протоколу scp:
scp techsupport@<ip-маршрутизатора>:/tmp/<имя файла> /home/<путь для копирования>
Для windows - можно использовать scp-клиент отдельный или интегрированный в другие приложения.
techsupport@esr:~$ sudo rm /tmp/ipsec - удаление файла ipsec на маршрутизаторе ESR
б) через CLI маршрутизатора:
techsupport@esr:~$ sudo cp /var/log/syslog/techsupport/ipsec /mnt/data/data/ipsec_log - копирование файла ipsec из раздела /var в раздел /mnt с именем ipsec_log
techsupport@esr:~$ logout - переход в CLI маршрутизатора
esr# dir flash:data/
Name Type Size
-------------------------------------------------------- ---------- -------- --
ipsec_log File 184.22 KB
далее копирование файла ipsec_log доступными средствами, например usb://usb_name:/FILE или tftp://HOST[%interface(for ipv6 link-local only)][PORT*]:/FILE:
esr# show storage-devices usb
Name Filesystem Total, MB Used, MB Free, MB
------------------------------ ---------- ---------- ---------- ----------
<name> vfat 13791.52 1827.40 11964.12
esr# copy flash:data/ipsec_log usb://<name>:/ipsec_log
|******************************************| 100% (230kB) Success!
esr# copy flash:data/ipsec_log tftp://<ipaddr>:/ipsec_log
|******************************************| 100% (184kB) Success!
удаление файла:
esr# delete flash:data/
esr# delete flash:data/ipsec_log
|******************************************| 100% (0B) File deleted successfully.
Источник:
docs.eltex-co.ru
interface gigabitethernet 1/0/20
ip firewall disable
ip address 192.0.2.1/24
ip address 192.0.2.254/24
ip address 192.0.2.10/30
exit
Все IPv4 адреса, принадлежащие разным подсетям, будут являться primary. В нашем примере это 192.0.2.1 и 192.0.2.10.
Второй и все последующие IPv4 адреса из подсети /24 - это secondary адреса, в примере - 192.0.2.254.
Если на интерфейсе включить VRRP, без указания source ip, например:
interface gigabitethernet 1/0/20
ip firewall disable
ip address 192.0.2.1/24
ip address 192.0.2.254/24
ip address 192.0.2.10/30
vrrp id 100
vrrp ip 192.0.2.2
vrrp
exit
То в качестве адреса источника vrrp ip будет использоваться первый IPv4 адрес с интерфейса, проверим это, используя команду monitor (будем фильтровать по IP адресу назначения,т.к. для VRRP выделен адрес 224.0.0.18):
esr-1000# monitor gigabitethernet 1/0/20 destination-address 224.0.0.18
17:19:13.591043 00:00:5e:00:01:64 > 01:00:5e:00:00:12, ethertype IPv4 (0x0800), length 54: (tos 0xc0, ttl 255, id 18, offset 0, flags [none], proto VRRP (112), length 40)
192.0.2.1 > 224.0.0.18: vrrp 192.0.2.1 > 224.0.0.18: VRRPv2, Advertisement, vrid 100, prio 100, authtype none, intvl 1s, length 20, addrs: 192.0.2.2
17:19:14.592882 00:00:5e:00:01:64 > 01:00:5e:00:00:12, ethertype IPv4 (0x0800), length 54: (tos 0xc0, ttl 255, id 19, offset 0, flags [none], proto VRRP (112), length 40)
192.0.2.1 > 224.0.0.18: vrrp 192.0.2.1 > 224.0.0.18: VRRPv2, Advertisement, vrid 100, prio 100, authtype none, intvl 1s, length 20, addrs: 192.0.2.2
17:19:15.593250 00:00:5e:00:01:64 > 01:00:5e:00:00:12, ethertype IPv4 (0x0800), length 54: (tos 0xc0, ttl 255, id 20, offset 0, flags [none], proto VRRP (112), length 40)
192.0.2.1 > 224.0.0.18: vrrp 192.0.2.1 > 224.0.0.18: VRRPv2, Advertisement, vrid 100, prio 100, authtype none, intvl 1s, length 20, addrs: 192.0.2.2
3 packets captured
3 packets received by filter
0 packets dropped by kernel
В качестве адреса источника используется первый primary адрес - 192.0.2.1, что справедливо и для всех остальных случаев: например выполнение команды ping, traceroute и т.д.
Источник:
docs.eltex-co.ru
esr-boot-usb# sh running-config extended
#!/usr/bin/clash
#19
#1.12.0
#05/11/2020
#18:20:08
hostname esr-boot-usb
interface gigabitethernet 1/0/1
ip address 192.168.0.1/24
exit
Полный вывод конфигурации (включая строки, начинающиеся с символа "#"), необходимо записать в файл с именем "running-config.conf" и скопировать в корень usb-носителя
Раздел с данными usb-носителя должен иметь структуру файловой системы fat32
Восстановление конфигурации с USB
Подключите USB-носитель к устройству
Включите устройство
Во время загрузки устройства перейдите в меню uboot набором слова "stop" по приглашению:
Autobooting in 5 seconds, enter to command line available now
stop
u-boot>
Очистите конфигурации и продолжите загрузку:
Рабочая конфигурация на устройстве будет безвозвратно утеряна
u-boot> clear_mtd_config
Start clear... Done!
u-boot> run bootcmd
После загрузки устройство начнет работу с конфигурацией записанной на USB-носителе
esr-boot-usb login: admin
Password:
Warning: you have uncommitted configuration changes.
********************************************
* Welcome to ESR-21 *
********************************************
esr-boot-usb# sh running-config extended
#!/usr/bin/clash
#19
#1.12.0
#05/11/2020
#18:20:08
hostname esr-boot-usb
interface gigabitethernet 1/0/1
ip address 192.168.0.1/24
exit
Источник:
docs.eltex-co.ru
- Текущая конфигурация (running-config).
В соответствии с данной конфигурацией маршрутизатор функционирует в текущий момент времени.
running-config всегда сохраняется в энергонезависимую память.
- Для отображения текущей конфигурации используется команда:
esr# show running-config
2. Конфигурация кандидат (candidate-config).
В процессе конфигурирования маршрутизатора все вводимые настройки сначала попадают в candidate-config но не попадают в running-config.
candidate-config сохраняется в энергонезависимую память после команды save.
- Для отображения конфигурации кандидата используется команда:
esr# show candidate-config
- Для отображения различий между running-config и candidate-config можно воспользоваться командой
esr# show configuration changes
Для активации изменений внесенных в candidate-config используется команда commit в привилегированном режиме.
esr# commit
После применения данной команды, содержимое candidate-config копируется в running-config и изменения конфигурации активируются.
Также, после применения изменений конфигурации (commit) запускается таймер подтверждения изменений (по умолчанию – 600 секунд).
По истечении данного таймера running-config будет возвращен к предыдущему состоянию, т.е. подтвержденные изменения будут удалены из running-config но не будут удалены из candidate-config.
Для подтверждения примененных изменений используется команда confirm в привеллигированном режиме.
esr# confirm
После применения данной команды таймер подтверждения изменений останавливается и возврат к предыдущему состоянию running-config - невозможен.
Для изменения таймера подтверждения относительно значения по умолчанию используется команда в режиме глобальной конфигурации:
esr(config)# system config-confirm timeout 300
В данном примере, 300 - это время в секундах после которого в отсутствии команды confirm, running-config будет возвращен к предыдущему состоянию.
Неподтвержденные изменения (со ввода команды confirm) можно отменить не дожидаясь истечения таймера подтверждения выполнив команду restore в привилегированном режиме.
esr# restore
Для удаления изменений внесенных в candidate-config но не примененных в running-config используется команда rollback.
esr# rollback
После применения данной команды содержимое running-config копируется в candidate-config и все внесенные но не активные изменения конфигурации удаляются.
Источник:
docs.eltex-co.ru
Решение:
Все изменения, внесенные в конфигурацию Firewall, применимы только для новых сессий. На активные сессии новые параметры не повлияют.
Рекомендуется очистить активные сессии, после применения изменений параметров Firewall, командой:
esr# clear ip firewall session
Источник:
docs.eltex-co.ru
Например, если была нарушена очередность пакетов установления TCP сессии: SYN → SYN/ACK → ACK. Первый TCP SYN будет пропущен, т.к. это сигнал к началу открытия TCP сессии.
Если Firewall обнаруживает сразу TCP ACK пакеты - они будут удалены, т.к. ранее не было открыто TCP сессии TCP SYN пакетом.
Разрешающее правило в Firewall, не решит поставленную задачу для подобных схем.
Решить задачу можно, отключив Firewall на входном интерфейсе:
esr(config-if-gi)# ip firewall disable
Либо отключением механизма контроля порядка установления сессий:
esr(config)# ip firewall sessions allow-unknown
Изменения конфигурации вступают в действие после применения:
esr# commit
Configuration has been successfully committed
esr# confirm
Configuration has been successfully confirmed
Источник:
docs.eltex-co.ru
После переводе интерфейса в L2-режим работы, интерфейс может работать только в режиме general. Использование режимов trunk или access невозможно.
Основное отличие режима general от trunk заключается в том, что есть возможность разрешить отправку кадров НЕСКОЛЬКИХ VLAN без vlan-тега.
Для приёма ethernet-кадров с определенными VLAN-тегами используется следующая команда:
интерфейс gigabitethernet 1/0/1 и vlan 100, 101, 102, 103, 107 используются в качестве примера
esr# configure
esr(config)# interface gigabitethernet 1/0/1
esr(config-if-gi)# mode switchport
esr(config-if-gi)# switchport general allowed vlan add 100-103,107 tagged
После применения вышеуказанной команды L2-интерфейс будет принимать ethernet-кадры с указанными VLAN-тегами и обрабатывать их на основе таблиц коммутации соответствующего VLAN. Отправляться Ethernet-кадры соответствующих VLAN'ов будут с VLAN-тегом.
При необходимости, на L2-интерфейсе в режиме general можно настроить приём нетегированных Ethernet-кадров на основе таблицы коммутации VLAN отличного от VLAN'а по умолчанию.
интерфейс gigabitethernet 1/0/1 и vlan 100, 101, 102, 103, 107 и 109 используются в качестве примера
esr# configure
esr(config)# interface gigabitethernet 1/0/1
esr(config-if-gi)# mode switchport
esr(config-if-gi)# switchport general allowed vlan add 100-103,107 tagged
esr(config-if-gi)# switchport general pvid 109
После применения команды "switchport general pvid" все нетегированные кадры поступающий на интерфейс будут обрабатываться на основании таблицы коммутации соответствующего VLAN.
Команда "switchport general pvid" отвечает за обработку только поступающих Ethernet-кадров.
После применения команды "switchport general pvid" кадры соответствующего VLAN не будут отправляться без тега через L2-интерфейс.
Для разрешения отправки кадров какого либо VLAN без тега необходимо использовать отдельную команду:
интерфейс gigabitethernet 1/0/1 и vlan 100, 101, 102, 103, 107 и 109 используются в качестве примера
esr# configure
esr(config)# interface gigabitethernet 1/0/1
esr(config-if-gi)# mode switchport
esr(config-if-gi)# switchport general allowed vlan add 100-103,107 tagged
esr(config-if-gi)# switchport general pvid 109
esr(config-if-gi)# switchport general allowed vlan add 109 untagged
В качестве аргумента команды "switchport general allowed vlan untagged" может быть указан более одного идентификатора vlan.
Источник:
docs.eltex-co.ru
- принципы импорта маршрутной информации.
- принципы фильтрации импортируемой маршрутной информации.
- принципы экспорта маршрутной информации в IGP и EGP
- принципы фильтрации экспортируемой маршрутной информации в IGP и EGP
RIB (Routing Information Base) маршрутизатора – таблица, содержащая все маршруты, полученные из различных источников: настроены статически, полученные по протоколам динамической маршрутизации (OSPF, BGP, RIP) и directly connected. Из данной таблицы выбираются лучшие маршруты и импортируются в таблицу маршрутизации (FIB – forwarding information base).
RIB ПМ (процесса маршрутизации) – виртуальная RIB, состоящая из маршрутов, принадлежащих данному процессу и маршрутов, импортированных различными механизмами (network, redistribute) из других виртуальных RIB (другого протокола или процесса маршрутизации) и из общей RIB (static route, directly connected).
Протоколы маршрутизации делятся на две большие группы:
- внешние (EGP), в которых маршрутная информация распространяется между автономными системами.
- внутренние (IGP), в которых маршрутная информация распространяется внутри одной автономной системы.
IGP |
EGP |
---|---|
iBGP |
|
OSPF |
|
RIP |
eBGP |
Импорт маршрутной информации
Под импортом маршрутной информации подразумевается процесс наполнения RIB ПМ различными механизмами.
Для IGP и EGP по умолчанию импортируются все маршруты.
Принципы импорта маршрутной информации.
Механизмы наполнения RIB ПМ:
- Маршруты процесса маршрутизации
- Redistribute
- Network
Ни один из механизмов не является обязательным.
Маршруты процесса маршрутизации
Это маршруты, полученные от соседних маршрутизаторов и direct маршруты интерфейсов, на которых поднят процесс маршрутизации (последнее актуально для OSPF и RIP);
По умолчанию импортируются все маршруты, полученные от соседей для IGP и EGP.
Redistribute
Механизм позволяет импортировать маршруты из других процессов маршрутизации, статические маршруты и direct connected маршруты целиком или выборочно с использованием механизма фильтрации route-map.
Пример: esr(config-ospf)# redistribute bgp 100 – будут импортированы все маршруты, принадлежащие процессу BGP 100.
Network
Механизм позволяет импортировать конкретные маршруты. Чтобы маршрут был импортирован, он должен быть в RIB маршрутизатора.
Пример: esr(config-ospf-area)# network 10.0.0.0/8
Принципы фильтрации импортируемой маршрутной информации.
Механизмы фильтрации импортируемой маршрутной информации:
- Route-map (in)
- Prefix-list (in)
- Route-map (in) + Prefix-list (in)
- Redistribute + route-map
Ни один из механизмов не является обязательным.
При установке одного или нескольких фильтров, все маршруты, которые не были разрешены этими фильтрами, будут запрещены.
Route-map (in)
Механизм позволяет фильтровать маршрутную информацию, получаемую от соседей. Будут импортированы только маршруты, удовлетворяющие правилам route-map. Маршрут, не подпадающий под правила route-map, будет запрещен. Если необходимо разрешить все маршруты, добавляется специальное правило (rule) с одной строчкой: action permit.
Пример: esr(config-ospf)# route-map <RM_NAME> in
Prefix-list (in)
Механизм позволяет фильтровать маршрутную информацию, получаемую от соседей. Будут импортированы только маршруты, удовлетворяющие правилам prefix-list. Пустой prefix-list по умолчанию запрещает все маршруты.
Пример: esr(config-ospf)# prefix-list <PL_NAME> in
Route-map (in) + Prefix-list (in)
Возможно совместное использование route-map и prefix-list для фильтрации маршрутной информации, получаемой от соседей. Для разрешения импорта маршрута средствами фильтров, он должен быть разрешен одним из них.
Redistribute + route-map
Если использовать redistribute совместно с route-map, то будут импортированы только маршруты из определенной RIB, удовлетворяющие правилам route-map.
Пример: redistribute bgp 100 route-map <RM_NAME> – будут импортированы только маршруты из процесса BGP 100, удовлетворяющие правилам route-map <RM_NAME>.
Экспорт маршрутной информации
Под экспортом маршрутной информации подразумевается процесс отправки маршрутной информации, содержащейся в RIB ПМ, соседям.
Для IGP и EGP реализована разная логика экспорта маршрутной информации в связи с характером доверия соседям (соседним маршрутизаторам):
- Протоколы IGP подразумевают, что сеть принадлежит одной организации и все устройства, на которых работает IGP, находятся под управлением этой организации. Следовательно, есть доверие к соседним маршрутизаторам и по умолчанию все маршруты, содержащиеся в RIB ПМ, будут экспортированы им.
- Протоколы EGP подразумевают, что соседние маршрутизаторы могут принадлежать другим организациям. Исходя из соображений безопасности, по умолчанию экспорт маршрутов будет запрещён.
Принципы фильтрации экспортируемой маршрутной информации в IGP.
Для протоколов OSPF и RIP фильтрация на экспорт маршрутов будет работать только для маршрутов, импортированных в RIB ПМ посредством механизмов network и redistribute, маршруты процесса маршрутизации (полученные от соседей) не подлежат фильтрации!
Для протокола iBGP возможна фильтрации всех маршрутов из RIB ПМ.
Механизмы фильтрации экспортируемой маршрутной информации:
- Route-map (out)
- Prefix-list (out)
- Route-map (out) + Prefix-list (out)
Ни один из механизмов не является обязательным.
По умолчанию экспорт маршрутов из RIB ПМ будет разрешен.
Route-map (out)
Механизм позволяет фильтровать маршрутную информацию, отправляемую соседям: разрешать или запрещать экспорт маршрутов. Если маршрут не подпадает ни под одно из правил route-map, то route-map не производит действий и маршрут будет разрешен для экспорта согласно глобальному правилу экспорта всех маршрутов для IGP, описанному ранее. Если необходимо запретить все маршруты, добавляется специальное правило (rule) с одной строчкой: action deny.
Пример: esr(config-ospf)# route-map <RM_NAME> out
Prefix-list (out)
Механизм позволяет фильтровать маршрутную информацию, отправляемую соседям: разрешать или запрещать экспорт маршрутов. Если маршрут не подпадает ни под одно из правил prefix-list, то prefix-list не производит действий и маршрут будет разрешен для экспорта согласно глобальному правилу экспорта всех маршрутов для IGP, описанному ранее.
Пример: esr(config-ospf)# prefix-list <PL_NAME> out
Route-map (out) + Prefix-list (out)
Возможно совместное использование route-map и prefix-list для фильтрации экспортируемой маршрутной информации. Для запрета экспорта маршрута достаточно, чтобы он был запрещен одним из этих фильтров.
Рисунок 1 – Алгоритм экспортного фильтра для IGP протоколов (OSPF, RIP, iBGP)
Принципы фильтрации экспортируемой маршрутной информации в EGP.
Механизмы фильтрации экспортируемой маршрутной информации:
- Route-map (out)
- Prefix-list (out)
- Route-map (out) + Prefix-list (out)
Ни один из механизмов не является обязательным.
По умолчанию экспорт маршрутов будет запрещён.
Route-map (out)
Механизм позволяет фильтровать маршрутную информацию, отправляемую соседям: разрешать или запрещать экспорт маршрутов. Если маршрут не подпадает ни под одно из правил route-map, то route-map не производит действий и маршрут будет запрещен для экспорта согласно глобальному правилу запрета экспорта для EGP, описанному ранее. Если необходимо разрешить все маршруты, добавляется специальное правило (rule) с одной строчкой: action permit.
Пример: esr(config-bgp-neighbor)# route-map <RM_NAME> out
Prefix-list (out)
Механизм позволяет фильтровать маршрутную информацию, отправляемую соседям: разрешать или запрещать экспорт маршрутов. Если маршрут не подпадает ни под одно из правил prefix-list, то prefix-list не производит действий и маршрут будет запрещен для экспорта согласно глобальному правилу экспорта всех маршрутов для EGP, описанному ранее.
Пример: esr(config-bgp-neighbor)# prefix-list <PL_NAME> out
Route-map (out) + Prefix-list (out)
Возможно совместное использование route-map и prefix-list для фильтрации экспортируемой маршрутной информации. Для экспорта маршрута достаточно, чтобы он был разрешен одним из этих фильтров.
Рисунок 2 – Алгоритм экспортного фильтра для EGP протоколов (BGP)
Источник:
docs.eltex-co.ru
Задача:
- Настроить BGP c AS 2500 на маршрутизаторе ESR и установить соседство с AS20;
- Отфильтровать на R2 из принмаемого маршрута 198.51.100.0/24 сеть, префикс которой соответствует 28
- Отфильтровать на R2 из принмаемого маршрута 203.0.113.0/24 сеть, префикс которой меньше или соответствует 30
- Отфильтровать на R2 из принмаемого маршрута 203.0.100.0/20 сеть, префикс которой больше или соответствует 24
- Задать каждой сети приоритет со значение local-preference 200
!!! Важно: при использовании eBGP для анонса маршрутной информации необходимо дать разрешающее правило с помощью route-map либо prefix-list, пример:
route-map BGP_OUT
rule 1
action permit
exit
exit
router bgp 1
address-family ipv4
neighbor 192.168.1.1
remote-as 2
route-map BGP_OUT out
enable
exit
enable
exit
exit
Решение:
Настроим BGP на ESR:
esr-200# configure
esr-200(config)# router bgp 2500
esr-200(config-bgp)# address-family ipv4
esr-200(config-bgp-af)# neighbor 185.0.0.2
esr-200(config-bgp-neighbor)# remote-as 20
esr-200(config-bgp-neighbor)# update-source 185.0.0.1
esr-200(config-bgp-neighbor)# enable
esr-200(config-bgp-neighbor)# exit
esr-200(config-bgp-af)# enable
esr-200(config-bgp-af)# exit
esr-200(config-bgp)# exit
Далее создадим необходимые правила для фильтрации маршрутов:
esr-200(config)# route-map in
esr-200(config-route-map)# rule 10
esr-200(config-route-map-rule)# match ip address 198.51.100.0/24 eq 28
esr-200(config-route-map-rule)# action set local-preference 200
esr-200(config-route-map-rule)# action permit
esr-200(config-route-map-rule)# exit
esr-200(config-route-map)#rule 20
esr-200(config-route-map-rule)# match ip address 203.0.113.0/24 ge 30
esr-200(config-route-map-rule)# action set local-preference 200
esr-200(config-route-map-rule)# action permit
esr-200(config-route-map-rule)# exit
esr-200(config-route-map)#rule 30
esr-200(config-route-map-rule)# match ip address 203.0.100.0/20 le 24
esr-200(config-route-map-rule)# action set local-preference 200
esr-200(config-route-map-rule)# action permit
esr-200(config-route-map-rule)# exit
esr-200(config-route-map-rule)# exit
esr-200(config-route-map)# exit
Теперь осталось прикрепить route-map к BGP:
esr-200(config)# router bgp 2500
esr-200(config-bgp)# address-family ipv4
esr-200(config-bgp-af)# neighbor 185.0.0.2
esr-200(config-bgp-neighbor)# route-map in in
esr-200(config-bgp-neighbor)# end
esr-200# commit
esr-200# confirm
Источник:
docs.eltex-co.ru
Два устройства согласовывают и устанавливают BFD сессию, отправляют друг другу hello-сообщения, Если hello-сообщения перестают поступать от соседа, BFD-сессия разрывается и система оповещается о неполадках в коммуникациях.
BFD может определить неисправность линка менее чем за 1 секунду (для маршрутизаторов Eltex ESR этот параметр можно регулировать в диапазоне от 200 до 65535 миллисекунд).
В реализации ПО начиная с версии 1.4.0 включительно, поддержаны протоколы BGP и OSPF и статических маршрутов.
В разработке находится реализация использования BFD для статических маршрутов.
Настройка механизма BFD сводится к двум шагам:
ШАГ 1. Настройка параметров BFD производится как в глобальном режиме, так и в режимах конфигурирования интерфейсов и туннелей (если параметры различаются по направлениям):
# configure
# configure-if-view
# configure-tunnel-view
[no] ip bfd min-rx-interval <TIME> - Минимальный интервал приёма для обнаружения ошибки
[no] ip bfd min-tx-interval <TIME> - Минимальный интервал передачи для обнаружения ошибки
[no] ip bfd idle-tx-interval <TIME> - Минимальный интервал передачи для обнаружения ошибки, когда сессия неактивна
[no] ip bfd multiplier <MULTIPLIER> - Число пропущенных пакетов, после которого сессия будет объявлена неактивной
[no] ip bfd passive - Не отправлять BFD-пакеты, пока не будет получен пакет от соседнего устройства
MULTIPLIER := 5 .. 100
TIME := время в миллисекундах 200 .. 65535
Если пропустить этот шаг, то будут использоваться параметры по умолчанию:
Minimum RX interval: 200 ms
Minimum TX interval: 200 ms
Idle TX interval: 1000 ms
Multiplier: 5 packets
Passive: No
ШАГ 2. Активация протокола BFD.
Для протокола BGP производится в режиме конфигурирования BGP соседа:
# bgp-neighbor-view
[no] bfd enable - Включение/Выключение BFD для данного соседа BGP
Обязательно при использовании BFD указываем upadate-source для указания source IP процессу BFD:
# update-source <A.B.C.D>
[no] update-source - указать/убрать адрес источника для BFD процесса
Для протокола OSPF BFD активировать необходимо в режиме конфигурирования интерфеса, на котором запущен протокол OSPF:
# configure-if-view
[no] ip ospf bfd-enable
Для статических маршрутов активация BFD происходит указанием после указания шлюза:
# configure-view
[no] ip route <A.B.C.D/N> <IP_GATEWAY> bfd
После применения и подверждения конфигурации протокол BFD запустится в работу:
esr #commit
esr #confirm
Текущие значение параметров BFD для глобального режима:
esr# show ip bfd
Minimum RX interval: 200 ms
Minimum TX interval: 200 ms
Idle TX interval: 1000 ms
Multiplier: 5 packets
Passive: No
Текущие значение параметров BFD для конкретного интерфеса и туннеля:
esr# sh ip bfd interface gigabitethernet 1/0/1
Minimum RX interval: 200 ms
Minimum TX interval: 200 ms
Idle TX interval: 1000 ms
Multiplier: 5 packets
Passive: No
esr# sh ip bfd interface gre 1
Minimum RX interval: 200 ms
Minimum TX interval: 200 ms
Idle TX interval: 1000 ms
Multiplier: 5 packets
Passive: No
Источник:
docs.eltex-co.ru
Решение:
Шаг 1. Настройка FreeRADIUS - сервера.
Для FreeRADIUS сервера нужно задать подсеть, из которой могут приходить запросы и добавить список пользователей. Для этого в файл users в директории с файлами конфигурации FreeRADIUS сервера нужно добавить:
Профиль пользователя:
<MACADDR> Cleartext-Password := <MACADDR>
# Имя пользователя
User-Name = <USER_NAME>,
# Максимальное время жизни сессии
Session-Timeout = <SECONDS>,
# Максимальное время жизни сесиии при бездействии пользователя
Idle-Timeout = <SECONDS>,
# Время на обновление статистики по сессии
Acct-Interim-Interval = <SECONDS>,
# Имя сервиса для сессии (A - сервис включен, N - сервис выключен)
Cisco-Account-Info = "{A|N}<SERVICE_NAME>"
Профиль сервиса:
<SERVICE_NAME> Cleartext-Password := <MACADDR>
# Соответствует имени class-map в настройках ESR
Cisco-AVPair = "subscriber:traffic-class=<CLASS_MAP>",
# Действие, которое применяет ESR к трафику (permit, deny, redirect)
Cisco-AVPair = "subscriber:filter-default-action=<ACTION>",
# Возможность прохождения IP потоков (enabled-uplink, enabled-downlink, enabled, disabled)
Cisco-AVPair = "subscriber:flow-status=<STATUS>"
В файл clients.conf нужно добавить подсеть, в которой находится ESR:
client ESR {
ipaddr = <SUBNET>
secret = <RADIUS_KEY>
}
Шаг 2. Настройка ESR - нужно сконфигурировать:
radius-server host <IP_ADDRESS>
key ascii-text <RADIUS_KEY>
exit
aaa radius-profile bras_radius
radius-server host <IP_ADDRESS>
exit
das-server das
key ascii-text <RADIUS_KEY>
exit
aaa das-profile bras_das
das-server das
exit
ip access-list extended user_acl
rule 1
action permit
enable
exit
exit
subscriber-control
aaa das-profile bras_das
aaa sessions-radius-profile bras_radius
nas-ip-address <IP_ADDRESS>
session mac-authentication
default-service default-action redirect <URL>
exit
enable
exit
На интерфейсах, для которых требуется работа BRAS настроить (для успешного запуска требуется как минимум один интерфейс):
service-subscriber-control {object-group <NAME> | any}
location <L2LOCATION>
!!! Настройка действие фильтрации по URL обязательно, а именно, необходимо настроить фильтрацию http-proxy на BRAS для неавторизованных пользователей:
- Создаем локальный список URL (можно указать свои URL, на которые неавторизованные пользователи смогут проходить без авторизации и без редиректа, например локальные сервисы вашей сети и ваш сайт):
object-group url defaultserv
url http://eltex.nsk.ru
url http://ya.ru
url https://ya.ru
exit
- Добавим действие фильтрации для локального списка URL в BRAS:
subscriber-control
default-service
filter-name local defaultserv
filter-action permit
end
Теперь неавторизированные пользователи будут иметь доступ к URL defaultserv без редирект, а при попытке пройти на другие сайты для них отработает редирект:
default-service
default-action redirect http://192.168.16.54:8080/eltex_portal/
Пример настройки:
Дано:
Шаг 1. Настройка FreeRADIUS - сервера:
подсеть с клиентами 10.10.0.0/16, подсеть для работы с FreeRADIUS сервером 192.168.16.140/23. Настраиваем FreeRADIUS сервер. В файл «clients.conf» добавляем строки:
client BRAS {
ipaddr = 192.168.16.140
secret = password
}
В файл «users» добавляем строки (вместо <MAC> нужно указать MAC адрес клиента):
"00-00-00-33-96-3D" Cleartext-Password := "00-00-00-33-96-3D"
User-Name = "Bras_user",
Session-Timeout = 259200,
Idle-Timeout = 259200,
Cisco-AVPair += "subscriber:policer-rate-in=1000",
Cisco-AVPair += "subscriber:policer-rate-out=1000",
Cisco-AVPair += "subscriber:policer-burst-in=188",
Cisco-AVPair += "subscriber:policer-burst-out=188",
Cisco-Account-Info = "AINTERNET"
INTERNET Cleartext-Password := "INTERNET"
User-Name = "INTERNET",
Cisco-AVPair = "subscriber:traffic-class=INTERNET",
Cisco-AVPair += "subscriber:filter-default-action=permit"
Для traffic-class в настройках сервиса нужно указать access-list из настроек ESR. Он нужен для определения какой трафик пользователя считать за трафик этого сервиса.
Шаг 2. Конфигурация ESR:
configure
object-group url defaultserv
url http://eltex.nsk.ru
url http://ya.ru
url https://ya.ru
exit
radius-server host 192.168.16.54
key ascii-text encrypted 8CB5107EA7005AFF
source-address 192.168.16.140
exit
aaa radius-profile bras_radius
radius-server host 192.168.16.54
exit
aaa radius-profile bras_radius_servers
radius-server host 192.168.16.54
exit
das-server das
key ascii-text encrypted 8CB5107EA7005AFF
exit
aaa das-profile bras_das
das-server das
exit
vlan 10
exit
ip access-list extended BYPASS
rule 1
action permit
match protocol udp
match source-port 68
match destination-port 67
enable
exit
rule 2
action permit
match protocol udp
match destination-port 53
enable
exit
rule 3
exit
exit
ip access-list extended INTERNET
rule 1
action permit
enable
exit
exit
ip access-list extended WELCOME
rule 10
action permit
match protocol tcp
match destination-port 443
enable
exit
rule 20
action permit
match protocol tcp
match destination-port 8443
enable
exit
rule 30
action permit
match protocol tcp
match destination-port 80
enable
exit
rule 40
action permit
match protocol tcp
match destination-port 8080
enable
exit
exit
subscriber-control
aaa das-profile bras_das
aaa sessions-radius-profile bras_radius
aaa services-radius-profile bras_radius_servers
nas-ip-address 192.168.16.140
session mac-authentication
bypass-traffic-acl BYPASS
default-service
class-map BYPASS
filter-name local defaultserv
filter-action permit
default-action redirect http://192.168.16.54/eltex_portal
session-timeout 121
exit
enable
exit
bridge 10
vlan 10
ip firewall disable
ip address 10.10.0.1/16
ip helper-address 192.168.16.54
service-subscriber-control any
location USER
protected-ports
protected-ports exclude vlan
enable
exit
interface gigabitethernet 1/0/2
ip firewall disable
ip address 192.168.16.140/23
exit
interface gigabitethernet 1/0/3.10
bridge-group 10
ip firewall disable
exit
interface gigabitethernet 1/0/4
ip firewall disable
ip address 30.30.30.2/24
exit
interface tengigabitethernet 1/0/1
ip firewall disable
exit
interface tengigabitethernet 1/0/1.10
bridge-group 10
exit
interface tengigabitethernet 1/0/1.20
ip firewall disable
ip address 20.20.20.1/24
exit
interface tengigabitethernet 1/0/1.30
bridge-group 10
exit
interface tengigabitethernet 1/0/1.40
bridge-group 10
exit
nat source
ruleset factory
to interface gigabitethernet 1/0/2
rule 10
description "replace 'source ip' by outgoing interface ip address"
match source-address any
action source-nat interface
enable
exit
exit
ip route 0.0.0.0/0 192.168.16.145
ip telnet server
Источник:
docs.eltex-co.ru
Destanation NAT
Для начала создадим профили IP-адресов и портов, которые потребуются для настройки правил Firewall и правил DNAT.
- Net_pub – профиль адресов публичной сети;
- Srv_http – профиль портов;
- Server_ip – профиль адресов локальной сети.
esr-100(config)# object-group network Net_pub
esr-100(config-object-group-network)# ip address 185.185.11.54
esr-100(config-object-group-network)# exit
esr-100(config)# object-group service Srv_http
esr-100(config-object-group-service)# port-range 80
esr-100(config-object-group-service)# exit
esr-100(config)# object-group network Server_ip
esr-100(config-object-group-network)# ip address 192.168.0.5
esr-100(config-object-group-network)# exit
Далее приступим к настройке самого NAT. Войдем в режим конфигурирования функции DNAT и создадим пул адресов и портов назначения, в которые будут транслироваться адреса пакетов, поступающие на адрес 185.185.11.54 из внешней сети.
esr-100(config)# nat destination
esr-100(config-dnat)# pool Server_ip
esr-100(config-dnat-pool)# ip address 192.168.0.5
esr-100(config-dnat-pool)# ip port 80
esr-100(config-dnat-pool)# exit
Создадим набор правил «DNAT», в соответствии с которыми будет производиться трансляция адресов. В атрибутах набора укажем, что правила применяются только для пакетов, пришедших из зоны «untrusted». Набор правил включает в себя требования соответствия данных по адресу и порту назначения (match destination-address, match destination-port) и по протоколу. Кроме этого в наборе задано действие, применяемое к данным, удовлетворяющим всем правилам (action destination-nat). Набор правил вводится в действие командой «enable».
esr-100(config-dnat)# ruleset DNAT
esr-100(config-dnat-ruleset)# from zone untrusted
esr-100(config-dnat-ruleset)# rule 1
esr-100(config-dnat-rule)# match destination-address Net_pub
esr-100(config-dnat-rule)# match protocol tcp
esr-100(config-dnat-rule)# match destination-port Srv_http
esr-100(config-dnat-rule)# action destination-nat pool Server_ip
esr-100(config-dnat-rule)# enable
esr-100(config-dnat-rule)# exit
esr-100(config-dnat-ruleset)# exit
esr-100(config-dnat)# exit
Для пропуска трафика, идущего из зоны «untrusted» в «trusted», создадим соответствующее правило. Пропускать следует только трафик с адресом назначения, соответствующим заданному в профиле «SERVER_IP» и прошедший преобразование DNAT.
esr-100(config)# security zone-pair untrusted trusted
esr-100(config-zone-pair)# rule 1
esr-100(config-zone-pair-rule)# match source-address any
esr-100(config-zone-pair-rule)# match destination-address Server_ip
esr-100(config-zone-pair-rule)# match protocol any
esr-100(config-zone-pair-rule)# match destination-nat
esr-100(config-zone-pair-rule)# action permit
esr-100(config-zone-pair-rule)# enable
esr-100(config-zone-pair-rule)# exit
esr-100(config-zone-pair)# exit
esr-100# commit
esr-100# confirm
Теперь R1 будет перенаправлять обращегия как требуется. Команды для просмотра состояния и настройки NAT:
esr-100# show ip nat destination pools
esr-100# show ip nat destination rulesets
esr-100# show ip nat proxy-arp
esr-100# show ip nat translations
NAT Hairpinning
На рисунке в начале статьи видно, что в локальной сети R1 имеются свои клиенты(client), которые тоже пользуются web-сервером. Однако когда client введет в браузере доменное имя сервера, DNS перенаправит его на адрес 185.185.11.54. Для этого настроим NAT Hairpinning.
Добавим еще один профиль для внутренней сети.
esr-100(config)# object-group network LAN
esr-100(config-object-group-network)# ip prefix 192.168.0.0/24
esr-100(config-object-group-network)# exit
Добавим еще один ruleset в конфигурацию DNAT.
esr-100(config)# nat destination
esr-100(config-dnat)# ruleset loopback
esr-100(config-dnat-ruleset)# from zone trusted
esr-100(config-dnat-ruleset)# rule 10
esr-100(config-dnat-rule)# match protocol tcp
esr-100(config-dnat-rule)# match destination-address Net_pub
esr-100(config-dnat-rule)# match destination-port Srv_http
esr-100(config-dnat-rule)# action destination-nat pool Server_ip
esr-100(config-dnat-rule)# enable
esr-100(config-dnat-rule)# exit
esr-100(config-dnat-ruleset)# exit
esr-100(config-dnat)# exit
Сконфигурируем Source NAT.
esr-100(config)# nat source
esr-100(config-snat)# ruleset loopback
esr-100(config-snat-ruleset)# to zone trusted
esr-100(config-snat-ruleset)# rule 10
esr-100(config-snat-rule)# match source-address LAN
esr-100(config-snat-rule)# action source-nat interface
esr-100(config-snat-rule)# enable
esr-100(config-snat-rule)# exit
esr-100(config-snat-ruleset)# exit
esr-100(config-snat)# exit
esr-100(config)# exit
esr-100# commit
esr-100# confirm
Теперь пользователи локальной сети R1 будут попадать на web-сервер по внутреннему адресу.
Источник:
docs.eltex-co.ru
Основная функция SLA - выполнение тестов, нацеленных на вычисление параметров канала связи:
- односторонние задержки;
- круговые задержки;
- джиттер;
- потери пакетов;
- изменение порядка следования пакетов.
Протокол IP SLA состоит из 2х фаз:
- фазы контроля;
- фазы измерений.
Предполагает наличие 2х ролей:
- sender (инициирует запуск теста с установленными параметрами);
- responder (ожидает входящих соедиений).
Пример конфигурации
Конфигурация ESR-SENDER
interface gigabitethernet 1/0/1
ip firewall disable
ip address 12.0.0.1/24
exit
ip route 0.0.0.0/0 12.0.0.2
clock timezone gmt +7
ntp enable
ntp server 192.168.1.1
minpoll 4
exit
ip sla logging
ip sla logging level error
ip sla
ip sla test 1
udp-jitter 24.0.0.3 20001 source-ip 12.0.0.1 control enable num-packets 100 interval 20
frequency 25
packet-size 64
dscp 30
cos 3
timeout 4000
thresholds losses high 15
thresholds losses forward high 5
thresholds losses reverse high 10
thresholds jitter forward high 7
thresholds jitter reverse high 15
thresholds delay high 150
thresholds delay forward high 100
thresholds delay reverse high 50
enable
exit
ip sla schedule 1 life forever start-time now
Конфигурация ESR-RESPONDER
interface gigabitethernet 1/0/1
ip firewall disable
ip address 24.0.0.3/24
ip sla responder eltex
exit
ip route 0.0.0.0/0 24.0.0.2
clock timezone gmt +7
ntp enable
ntp server 192.168.1.1
minpoll 4
exit
Просмотр статистики
ESR# show ip sla test statistics 1
Test number: 1
Transmitted packets: 100
Lost packets: 8 (8%)
Lost packets in forward direction: 4 (4%)
Lost packets in reverse direction: 4 (4%)
One-way delay forward min/avg/max: 29/52/72 milliseconds
One-way delay reverse min/avg/max: 29/52/72 milliseconds
One-way jitter forward min/avg/max: 6/11/12 milliseconds
One-way jitter reverse min/avg/max: 6/11/12 milliseconds
Two-way delay min/avg/max: 58/104/145 milliseconds
Two-way jitter min/avg/max: 13/22/25 milliseconds
Duplicate packets: 0
Out of sequence packets in forward direction: 0
Out of sequence packets in reverse direction: 0
Мониторинг
Все сообщения о превышении порог для тестовых потоков либо снижении уровня ниже допустимого занчения журналируются.
1) SYSLOG-сообщения можно перенаправлять на SYSLOG-сервер.
Конфигурация:
syslog host test 192.168.1.1 debug udp 514
Пример сообщений SYSLOG:
YYYY-DD-MMTHH:MM:SS+GMT %IP_SLA-I-LOSSES: Losses high for ip sla 1: 8 > 1
YYYY-DD-MMTHH:MM:SS+GMT %IP_SLA-I-LOSSES: Losses reverse high for ip sla 1: 8 > 1
YYYY-DD-MMTHH:MM:SS+GMT %IP_SLA-I-LOSSES: Losses OK for ip sla 1: 8 > 1
YYYY-DD-MMTHH:MM:SS+GMT %IP_SLA-I-LOSSES: Losses reverse OK for ip sla 1: 8 > 1
YYYY-DD-MMTHH:MM:SS+GMT %IP_SLA-I-JITTER: Two-way jitter high for ip sla 1: 12 > 1
YYYY-DD-MMTHH:MM:SS+GMT %IP_SLA-I-JITTER: One-way jitter forward high for ip sla 1: 12 > 1
YYYY-DD-MMTHH:MM:SS+GMT %IP_SLA-I-JITTER: One-way jitter reverse high for ip sla 1: 12 > 1
YYYY-DD-MMTHH:MM:SS+GMT %IP_SLA-I-JITTER: Two-way jitter OK for ip sla 1: 0 < 10
YYYY-DD-MMTHH:MM:SS+GMT %IP_SLA-I-JITTER: One-way jitter reverse OK for ip sla 1: 0 < 15
2) Опрос по SNMP.
Для IP SLA доступны MIB-OID:
ELTEX-ESR-MIB.mib
ELTEX-ESR-IPSLA-MIB.mib
Конфигурация:
snmp-server
snmp-server community "publpubl" rw
snmp-server host 192.168.1.1
exit
Пример снятия статистики по SNMP:
Name/OID: eltEsrIpSlaStatTestTransmittedPackets.1; Value (Gauge): 100
Name/OID: eltEsrIpSlaStatTestLostPackets.1; Value (Gauge): 8
Name/OID: eltEsrIpSlaStatTestLostPacketsForward.1; Value (Gauge): 4
Name/OID: eltEsrIpSlaStatTestLostPacketsReverse.1; Value (Gauge): 4
Name/OID: eltEsrIpSlaStatTestOneWayDelayForwardMin.1; Value (Gauge): 29
Name/OID: eltEsrIpSlaStatTestOneWayDelayForwardMax.1; Value (Gauge): 52
Name/OID: eltEsrIpSlaStatTestOneWayDelayForwardAvg.1; Value (Gauge): 72
Name/OID: eltEsrIpSlaStatTestOneWayDelayReverseMin.1; Value (Gauge): 29
Name/OID: eltEsrIpSlaStatTestOneWayDelayReverseMax.1; Value (Gauge): 52
Name/OID: eltEsrIpSlaStatTestOneWayDelayReverseAvg.1; Value (Gauge): 72
Name/OID: eltEsrIpSlaStatTestOneWayJitterForwardMin.1; Value (Gauge): 6
Name/OID: eltEsrIpSlaStatTestOneWayJitterForwardMax.1; Value (Gauge): 11
Name/OID: eltEsrIpSlaStatTestOneWayJitterForwardAvg.1; Value (Gauge): 12
Name/OID: eltEsrIpSlaStatTestOneWayJitterReverseMin.1; Value (Gauge): 6
Name/OID: eltEsrIpSlaStatTestOneWayJitterReverseMax.1; Value (Gauge): 11
Name/OID: eltEsrIpSlaStatTestOneWayJitterReverseAvg.1; Value (Gauge): 12
Name/OID: eltEsrIpSlaStatTestTwoWayDelayMin.1; Value (Gauge): 58
Name/OID: eltEsrIpSlaStatTestTwoWayDelayMax.1; Value (Gauge): 104
Name/OID: eltEsrIpSlaStatTestTwoWayDelayAvg.1; Value (Gauge): 145
Name/OID: eltEsrIpSlaStatTestTwoWayJitterMin.1; Value (Gauge): 13
Name/OID: eltEsrIpSlaStatTestTwoWayJitterMax.1; Value (Gauge): 22
Name/OID: eltEsrIpSlaStatTestTwoWayJitterAvg.1; Value (Gauge): 025
Name/OID: eltEsrIpSlaStatTestDuplicatePackets.1; Value (Gauge): 0
Name/OID: eltEsrIpSlaStatTestOutOfSequenceForward.1; Value (Gauge): 0
Name/OID: eltEsrIpSlaStatTestOutOfSequenceReverse.1; Value (Gauge): 0
3) SYSLOG в SNMP-Traps.
Конфигурация
snmp-server host 192.168.1.1
source-address 12.0.0.1
exit
snmp-server enable traps syslog
Источник:
docs.eltex-co.ru
Данные:
IP-address интерфейса ESR1 - 180.10.0.1/30
P-address интерфейса ESR2 - 80.66.0.1/30
Локальные подсети:
LAN1: 1.1.1.0/24
LAN2: 2.2.2.0/24
Параметры IKE:
алгоритм шифрования: AES 128 bit;
алгоритм аутентификации: MD5;
группа Диффи-Хэллмана: 2.
Параметры IPSec:
алгоритм шифрования: AES 128 bit;
алгоритм аутентификации: MD5;
группа Диффи-Хэллмана: 2.
Решение:
Конфигурирование ESR1
Настроим внешний сетевой интерфейс и определим принадлежность к зоне безопасности:
ESR1(config)# interface gigabitethernet 1/0/1
ESR1(config-if-gi)# security-zone untrusted
ESR1(config-if-gi)# ip address 180.10.0.1/30
ESR1(config-if-gi)# exit
Настроим GRE туннель, определим принадлежность к зоне безопасности и включим туннель командой enable:
ESR1(config)# tunnel gre 1
ESR1(config-gre)# ttl 16
ESR1(config-gre)# security-zone trusted
ESR1(config-gre)# local address 180.10.0.1
ESR1(config-gre)# remote address 80.66.0.1
ESR1(config-gre)# ip address 10.10.10.1/30
ESR1(config-gre)# enable
ESR1(config-gre)# exit
Создадим статический маршрут для подсети 80.66.0.0/30:
ESR1(config)# ip route 80.66.0.0/30 180.10.0.2
Создадим статический маршрут подсети LAN2 - 2.2.2.0/24 через tunnel gre 1:
ESR1(config)# ip route 2.2.2.0/24 tunnel gre 1
Создадим профиль протокола IKE. В профиле укажем группу Диффи-Хэллмана 2, алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IKE-соединения:
ESR1(config)# security ike proposal ike_prop1
ESR1(config-ike-proposal)# authentication algorithm md5
ESR1(config-ike-proposal)# encryption algorithm aes128
ESR1(config-ike-proposal)# dh-group 2
ESR1(config-ike-proposal)# exit
Создадим политику протокола IKE. В политике указывается список профилей протокола IKE, по которым могут согласовываться узлы и ключ аутентификации:
ESR1(config)# security ike policy ike_pol1
ESR1(config-ike-policy)# pre-shared-key ascii-text password
ESR1(config-ike-policy)# proposal ike_prop1
ESR1(config-ike-policy)# exit
Создадим шлюз протокола IKE. В данном профиле указывается GRE-туннель, политика, версия протокола и режим перенаправления трафика в туннель:
ESR1(config)# security ike gateway ike_gw1
ESR1(config-ike-gw)# ike-policy ike_pol1
ESR1(config-ike-gw)# local address 180.10.0.1
ESR1(config-ike-gw)# local network 180.10.0.1/32 protocol gre
ESR1(config-ike-gw)# remote address 80.66.0.1
ESR1(config-ike-gw)# remote network 80.66.0.1/32 protocol gre
ESR1(config-ike-gw)# mode policy-based
ESR1(config-ike-gw)# exit
Создадим профиль параметров безопасности для IPsec-туннеля. В профиле укажем группу Диффи-Хэллмана 2, алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IPsec-туннеля:
ESR1(config)# security ipsec proposal ipsec_prop1
ESR1(config-ipsec-proposal)# authentication algorithm md5
ESR1(config-ipsec-proposal)# encryption algorithm aes128
ESR1(config-ipsec-proposal)# pfs dh-group 2
ESR1(config-ipsec-proposal)# exit
Создадим политику для IPsec-туннеля. В политике указывается список профилей IPsec-туннеля, по которым могут согласовываться узлы.
ESR1(config)# security ipsec policy ipsec_pol1
ESR1(config-ipsec-policy)# proposal ipsec_prop1
ESR1(config-ipsec-policy)# exit
Создадим IPsec VPN. В VPN указывается шлюз IKE-протокола, политика IP sec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой enable.
ESR1(config)# security ipsec vpn ipsec1
ESR1(config-ipsec-vpn)# mode ike
ESR1(config-ipsec-vpn)# ike establish-tunnel route
ESR1(config-ipsec-vpn)# ike gateway ike_gw1
ESR1(config-ipsec-vpn)# ike ipsec-policy ipsec_pol1
ESR1(config-ipsec-vpn)# enable
ESR1(config-ipsec-vpn)# exit
Дополнительно в security zone-pair untrusted self необходимо разрешить протоколы для GRE over IPSec туннеля:
ESR1(config)# security zone-pair untrusted self
ESR1(config-zone-pair)# rule 10
ESR1(config-zone-pair-rule)# action permit
ESR1(config-zone-pair-rule)# match protocol gre
ESR1(config-zone-pair-rule)# enable
ESR1(config-zone-pair-rule)# exit
ESR1(config-zone-pair)# rule 11
ESR1(config-zone-pair-rule)# action permit
ESR1(config-zone-pair-rule)# match protocol esp
ESR1(config-zone-pair-rule)# enable
ESR1(config-zone-pair-rule)# exit
ESR1(config-zone-pair)# rule 12
ESR1(config-zone-pair-rule)# action permit
ESR1(config-zone-pair-rule)# match protocol ah
ESR1(config-zone-pair-rule)# enable
ESR1(config-zone-pair-rule)# exit
ESR1(config-zone-pair)# exit
Конфигурирование ESR2
Настроим внешний сетевой интерфейс и определим принадлежность к зоне безопасности:
ESR2(config)# interface gigabitethernet 1/0/1
ESR2(config-if-gi)# security-zone untrusted
ESR2(config-if-gi)# ip address 80.66.0.1/30
ESR2(config-if-gi)# exit
Настроим GRE туннель, определим принадлежность к зоне безопасности и включим туннель командой enable:
ESR2(config)# tunnel gre 1
ESR2(config-gre)# ttl 16
ESR2(config-gre)# security-zone trusted
ESR2(config-gre)# local address 80.66.0.1
ESR2(config-gre)# remote address 180.10.0.1
ESR2(config-gre)# ip address 10.10.10.2/30
ESR2(config-gre)# enable
ESR2(config-gre)# exit
Создадим статический маршрут для подсети 180.10.0.0/30:
ESR2(config)# ip route 180.10.0.0/30 80.66.0.2
Создадим статический маршрут подсети LAN1 - 1.1.1.0/24 через tunnel gre 1:
ESR2(config)# ip route 1.1.1.0/24 tunnel gre 1
Создадим профиль протокола IKE. В профиле укажем группу Диффи-Хэллмана 2, алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IKE-соединения:
ESR2(config)# security ike proposal ike_prop1
ESR2(config-ike-proposal)# authentication algorithm md5
ESR2(config-ike-proposal)# encryption algorithm aes128
ESR2(config-ike-proposal)# dh-group 2
ESR2(config-ike-proposal)# exit
Создадим политику протокола IKE. В политике указывается список профилей протокола IKE, по которым могут согласовываться узлы и ключ аутентификации:
ESR2(config)# security ike policy ike_pol1
ESR2(config-ike-policy)# pre-shared-key ascii-text password
ESR2(config-ike-policy)# proposal ike_prop1
ESR2(config-ike-policy)# exit
Создадим шлюз протокола IKE. В данном профиле указывается GRE-туннель, политика, версия протокола и режим перенаправления трафика в туннель:
ESR2(config)# security ike gateway ike_gw1
ESR2(config-ike-gw)# ike-policy ike_pol1
ESR2(config-ike-gw)# local address 80.66.0.1
ESR2(config-ike-gw)# local network 80.66.0.1/32 protocol gre
ESR2(config-ike-gw)# remote address 180.10.0.1
ESR2(config-ike-gw)# remote network 180.10.0.1/32 protocol gre
ESR2(config-ike-gw)# mode policy-based
ESR2(config-ike-gw)# exit
Создадим профиль параметров безопасности для IPsec-туннеля. В профиле укажем группу Диффи-Хэллмана 2, алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IPsec-туннеля:
ESR2(config)# security ipsec proposal ipsec_prop1
ESR2(config-ipsec-proposal)# authentication algorithm md5
ESR2(config-ipsec-proposal)# encryption algorithm aes128
ESR2(config-ipsec-proposal)# pfs dh-group 2
ESR2(config-ipsec-proposal)# exit
Создадим политику для IPsec-туннеля. В политике указывается список профилей IPsec-туннеля, по которым могут согласовываться узлы.
ESR2(config)# security ipsec policy ipsec_pol1
ESR2(config-ipsec-policy)# proposal ipsec_prop1
ESR2(config-ipsec-policy)# exit
Создадим IPsec VPN. В VPN указывается шлюз IKE-протокола, политика IP sec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой enable.
ESR2(config)# security ipsec vpn ipsec1
ESR2(config-ipsec-vpn)# mode ike
ESR2(config-ipsec-vpn)# ike establish-tunnel route
ESR2(config-ipsec-vpn)# ike gateway ike_gw1
ESR2(config-ipsec-vpn)# ike ipsec-policy ipsec_pol1
ESR2(config-ipsec-vpn)# enable
ESR2(config-ipsec-vpn)# exit
Источник:
docs.eltex-co.ru
При настройке IPSec на ESR включен способ установления соединения ike establish-tunnel route, при таком режиме IPSec туннель поднимется при наличии транзитного трафика. Loopback интерфейсы необходимы для проверки работоспособности IPSec туннеля (передачи транзитного трафика) и в конфигурации не обязательны.
ESR:
1) Конфигурация:
esr# show running-config
router ospf log-adjacency-changes
router ospf 1
router-id 10.110.0.66
area 0.0.0.1
enable
exit
enable
exit
interface gigabitethernet 1/0/1
ip firewall disable
ip address 100.100.0.2/24
exit
interface loopback 1
ip address 2.2.2.2/32
exit
tunnel gre 1
mtu 1476
ip firewall disable
local address 100.100.0.2
remote address 10.10.0.13
ip address 10.110.0.66/30
ip ospf instance 1
ip ospf area 0.0.0.1
ip ospf
enable
exit
security ike proposal IKEPROP
encryption algorithm aes128
dh-group 2
exit
security ike policy IKEPOL
lifetime seconds 86400
pre-shared-key ascii-text encrypted 8CB5107EA7005AFF
proposal IKEPROP
exit
security ike gateway IKEGW
ike-policy IKEPOL
local address 100.100.0.2
local network 100.100.0.2/32 protocol gre
remote address 10.10.0.13
remote network 10.10.0.13/32 protocol gre
mode policy-based
exit
security ipsec proposal IPPROP
encryption algorithm aes128
exit
security ipsec policy IPPOL
proposal IPPROP
exit
security ipsec vpn IPSEC
mode ike
ike establish-tunnel route
ike gateway IKEGW
ike ipsec-policy IPPOL
enable
exit
ip route 0.0.0.0/0 tunnel gre 1
ip route 10.10.0.0/24 100.100.0.1
2) Информация о состоянии протокола OSPF и IPSec туннеля:
esr# show ip ospf neighbors
Router ID Pri State DTime Interface Router IP
--------- --- ----- ----- ----------------- ---------
10.110.0.65 1 Full/BDR 00:35 gre 1 10.110.0.65
esr# show security ipsec vpn status IPSEC
Currently active IKE SA:
Name: IPSEC
State: Established
Version: v1-only
Unique ID: 3
Local host: 100.100.0.2
Remote host: 10.10.0.13
Role: Initiator
Initiator spi: 0x15dc63f5881abbb0
Responder spi: 0xd45e86e5abb121d9
Encryption algorithm: des
Authentication algorithm: sha1
Diffie-Hellman group: 2
Established: 12 minutes and 34 seconds ago
Rekey time: 12 minutes and 34 seconds
Reauthentication time: 23 hours, 32 minutes and 7 seconds
Child IPsec SAs:
Name: IPSEC
State: Installed
Protocol: esp
Mode: Tunnel
Encryption algorithm: aes128
Authentication algorithm: sha1
Rekey time: 32 minutes
Life time: 47 minutes and 26 seconds
Established: 12 minutes and 34 seconds ago
Traffic statistics:
Input bytes: 540
Output bytes: 540
Input packets: 5
Output packets: 5
Cisco:
1) Конфигурация:
crypto isakmp policy 2
encr aes
authentication pre-share
group 2
crypto isakmp key password address 100.100.0.2
!
crypto ipsec security-association lifetime seconds 86400
!
crypto ipsec transform-set strong esp-aes esp-sha-hmac
!
crypto map mymap local-address FastEthernet0/0
crypto map mymap 119 ipsec-isakmp
set peer 100.100.0.2
set transform-set strong
match address 119
!
!
interface Loopback1
ip address 1.1.1.1 255.255.255.255
!
!
interface Tunnel2
ip address 10.110.0.65 255.255.255.252
ip ospf 1 area 0.0.0.1
ip ospf network broadcast
tunnel source 10.10.0.13
tunnel destination 100.100.0.2
!
!
interface FastEthernet0/0
ip address 10.10.0.13 255.255.255.0
duplex auto
speed auto
crypto map mymap
!
router ospf 1
router-id 10.110.0.65
log-adjacency-changes
!
ip route 100.100.0.0 255.255.255.0 10.10.0.1
ip route 0.0.0.0 0.0.0.0 Tunnel2
!
access-list 119 permit gre host 10.10.0.13 host 100.100.0.2
2) Информация о состоянии протокола OSPF и IPSec туннеля:
Router#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
10.110.0.66 0 FULL/ - 00:00:32 10.110.0.66 Tunnel2
Router#show crypto ipsec sa
interface: FastEthernet0/0
Crypto map tag: mymap, local addr 10.10.0.13
protected vrf: (none)
local ident (addr/mask/prot/port): (10.10.0.13/255.255.255.255/47/0)
remote ident (addr/mask/prot/port): (100.100.0.2/255.255.255.255/47/0)
current_peer 100.100.0.2 port 500
PERMIT, flags={origin_is_acl,}
#pkts encaps: 5, #pkts encrypt: 5, #pkts digest: 5
#pkts decaps: 5, #pkts decrypt: 5, #pkts verify: 5
#pkts compressed: 0, #pkts decompressed: 0
#pkts not compressed: 0, #pkts compr. failed: 0
#pkts not decompressed: 0, #pkts decompress failed: 0
#send errors 0, #recv errors 0
local crypto endpt.: 10.10.0.13, remote crypto endpt.: 100.100.0.2
path mtu 1500, ip mtu 1500, ip mtu idb FastEthernet0/0
current outbound spi: 0xC9A1F292(3382833810)
PFS (Y/N): Y, DH group: group2
inbound esp sas:
spi: 0x7783E2D2(2005131986)
transform: esp-aes esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 2001, flow_id: FPGA:1, sibling_flags 80000046, crypto map: mymap
sa timing: remaining key lifetime (k/sec): (4480312/3033)
IV size: 16 bytes
replay detection support: Y
Status: ACTIVE
inbound ah sas:
inbound pcp sas:
outbound esp sas:
spi: 0xC9A1F292(3382833810)
transform: esp-aes esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 2002, flow_id: FPGA:2, sibling_flags 80000046, crypto map: mymap
sa timing: remaining key lifetime (k/sec): (4480312/3033)
IV size: 16 bytes
replay detection support: Y
Status: ACTIVE
outbound ah sas:
outbound pcp sas:
Источник:
docs.eltex-co.ru
Установление защищенного IPsec VPN соединения с аутентификацией по сертификатам можно разделить на следующие шаги:
- Предварительная настройка интерфейсов и маршрутизации на ELTEX ESR и CISCO iOS.
- Получение/выпуск корневого сертификата - этот шаг выполняется на центрне сертификатов (Certificate Authority, CA).
- Выпуск ключевой пары и их импорт на CISCO iOS
- Конфигурция IPsec на CISCO iOS
- Выпуск ключевой пары (закрытого и открытого ключа) для ELTEX ESR
- Импорт корневого сертификата и ключевой пары на ELTEX ESR
- Конфигурция IPsec на ELTEX ESR
Предварительная настройка интерфейсов и маршрутизации
В предварительной конфигурации маршрутизатора ELTEX ESR разрешим прохождение UDP 500,4500 и ESP трафика в зону self для установления IPsec VPN:
esr# show running-config
object-group service IPsec
port-range 500
port-range 4500
exit
object-group network MAIN
ip address-range 192.0.2.2
exit
security zone untrusted
exit
security zone trusted
exit
interface gigabitethernet 1/0/1
security-zone untrusted
ip address 192.0.2.2/30
exit
interface gigabitethernet 1/0/2
security-zone trusted
ip address 192.168.10.1/24
exit
security zone-pair untrusted self
rule 10
description "IPsec"
action permit
match protocol udp
match destination-address MAIN
match destination-port IPsec
enable
exit
rule 20
description "ESP"
action permit
match protocol esp
match destination-address MAIN
enable
exit
rule 30
description "ICMP"
action permit
match protocol icmp
match destination-address MAIN
enable
exit
exit
security zone-pair trusted untrusted
rule 10
description "PERMIT ALL"
action permit
enable
exit
exit
ip route 0.0.0.0/0 192.0.2.1
В предварительной конфигурации маршрутизатора CISCO iOS настроим сетевые интерфейсы и маршрутизацию:
!
hostname cisco
!
ip domain name cisco.eltex.org
!
interface FastEthernet0/0
ip address 203.0.113.2 255.255.255.252
duplex auto
speed auto
!
interface FastEthernet0/1
ip address 172.16.10.1 255.255.255.0
duplex auto
speed auto
!
ip route 0.0.0.0 0.0.0.0 203.0.113.1
!
ВАЖНО: Необходимо выставить корректную дату на оборудовании, так как сертификаты имеют дату выпуска и выпускаются на определенный срок.
Выставим дату в ручном режиме (так же можно использовать NTP):
esr# set date 12:00:00 14 November 2019
cisco# clock set 12:01:00 14 Nov 2019
Получение/выпуск корневого сертификата - этот шаг выполняется на центрне сертификатов (Certificate Authority, CA)
Для выпуска сертификатов в данном примере используются утилиты openssl.
ВАЖНО: Для использования внутри организации можно использовать self-signed сертификат, но для использования CA вне организации необходимо использовать сертификаты, выданные или подписанные сторонней организацией.
Генерируем секретный ключ:
# openssl genrsa -out ca.key 2048
Создаём self-signed сертификат:
# openssl req -new -x509 -sha1 -days 3650 -key ca.key -out ca.crt
Полученный CA сертификат (ca.crt) и секретный CA ключи (ca.key) будут использоваться для подписи запросов на сертификат VPN клиентов.
Выпуск ключевой пары и их импорт на CISCO iOS
Генерируем закрытый ключ на CISCO iOS:
cisco(config)#crypto key generate rsa general-keys
How many bits in the modulus [512]: 2048
% Generating 1024 bit RSA keys …[OK]
Настроим CA сервер с именем myca:
cisco(config)#crypto ca trustpoint myca
cisco(ca-trustpoint)#enrollment terminal
cisco(ca-trustpoint)#crl optional
cisco(ca-trustpoint)#exit
Копируем содержимое CA сертификата:
# cat ca.crt
-----BEGIN CERTIFICATE-----
MIID7TCCAtWgAwIBAgIJANdwKZKV0XNmMA0GCSqGSIb3DQEBBQUAMIGMMQswCQYD
...
yg==
-----END CERTIFICATE-----
И вставляем содержимое в консоль:
cisco(config)#crypto ca authenticate myca
Enter the base 64 encoded CA certificate.
End with a blank line or the word “quit” on a line by itself
-----BEGIN CERTIFICATE-----
MIID7TCCAtWgAwIBAgIJANdwKZKV0XNmMA0GCSqGSIb3DQEBBQUAMIGMMQswCQYD
...
yg==
-----END CERTIFICATE-----
% Do you accept this certificate? [yes/no]: yes
Trustpoint CA certificate accepted.
% Certificate successfully imported
Сформировать запрос на подписание (CSR, certificate signing request):
cisco(config)#crypto ca enroll myca
% Include the router serial number in the subject name? [yes/no]: yes
% The serial number in the certificate will be: 13A594C9
% Include an IP address in the subject name? [no]: no
Display Certificate Request to terminal? [yes/no]: yes
Certificate Request follows:
MIIBkzCB/QIBADAzMTEwDwYDVQQFEwgxM0E1OTRDOTAeBgkqhkiG9w0BCQIWEWNp
...
sdHxeJkU4jMILCs7dPzkzPPDpJID9NU=
Далее необходимо скопировать запрос из теминала и сформировать файл .csr на сервере центра сертификации для его подписания утилитой openssl:
# cat > cisco.csr
-----BEGIN CERTIFICATE REQUEST-----
MIIBkzCB/QIBADAzMTEwDwYDVQQFEwgxM0E1OTRDOTAeBgkqhkiG9w0BCQIWEWNp
...
sdHxeJkU4jMILCs7dPzkzPPDpJID9NU=
-----END CERTIFICATE REQUEST-----
Подписать запрос на сертификат (esr.csr) CA ключом (ca.key), который был выпущен ранее:
# openssl x509 -req -days 3650 -sha1 -in cisco.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out certs/cisco.crt
Копируем содержимое подписанного сертификата:
# cat cisco.crt
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
И вставляем содержимое в консоль CISCO iOS:
cisco(config)#crypto ca import myca certificate
Enter the base 64 encoded certificate.
End with a blank line or the word “quit” on a line by itself
—–BEGIN CERTIFICATE—–
...
—–END CERTIFICATE—–
% Router Certificate successfully imported
Конфигурация IPsec на CISCO iOS
Укажем DN из сертификата в качестве локального идентификатора:
cisco(config)#crypto isakmp identity dn
Настроим ISAKMP политику (фаза 1):
cisco(config)#crypto isakmp policy 10
cisco(config-isakmp)#encryption 3desc
cisco(config-isakmp)#authentication rsa-sig
cisco(config-isakmp)#group 2
Настроим IPsec политику (фаза 2):
cisco(config)#crypto ipsec transform-set TS esp-des esp-sha-hmac
cisco(cfg-crypto-trans)#exit
Настроим трафик селекторы, используя ACL, и крипто карту:
cisco(config)#crypto map CMAP 10 ipsec-isakmp
cisco(config-crypto-map)#set peer 192.0.2.2
cisco(config-crypto-map)#set transform-set TS
cisco(config-crypto-map)#match address cryptoacl
cisco(config-crypto-map)#exit
cisco(config)#ip access-list extended cryptoacl
cisco(config-ext-nacl)#permit ip 172.16.10 0.0.0.255 192.168.10.0 0.0.0.255
Применим критпо карту на интерфейсе:
cisco(config)#int fastEthernet 0/0
cisco(config-if)#crypto map CMAP
cisco(config-if)#exit
Сгенерировать закрытый ключ для ELTEX ESR
Создать файл с атрибутами, приведенными ниже. Сохранить файл как openssl.cfg:
[req]
default_bits = 2048
default_keyfile = esr.key
distinguished_name = req_distinguished_name
req_extensions = req_ext
[req_distinguished_name]
commonName = Common Name (eg, YOUR name)
commonName_default = esrvpn.eltex.org
countryName = Country Name (2 letter code)
countryName_default = RU
stateOrProvinceName = State or Province Name (full name)
stateOrProvinceName_default = Novosibirsk
localityName = Locality Name (eg, city)
localityName_default = NSK
0.organizationName = Organization Name (eg, company)
0.organizationName_default = ELTEX
[req_ext]
subjectAltName = @alt_names
[alt_names]
DNS.1 = esr.eltex.org
Сформировать запрос на подписание (CSR, certificate signing request) сертификата и закрытый ключ используя файл openssl.cfg:
# openssl req -new -nodes -out esr.csr -config openssl.cfg
Результатом будет получен закрытый ключ (esr.key) и запрос на подписание сертификата (esr.csr).
Подписать запрос на сертификат (esr.csr) CA ключом (ca.key), который был выпущен ранее:
# openssl x509 -req -days 3650 -sha1 -in esr.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out esr.crt
Результатом будет получен подписанный сертификат (esr.crt).
Загрузить корневой сертификат (ca.crt) , закрытый ключ (esr.key) и подписанный сертификат (esr.crt) на ELTEX ESR
Загрузка ключевой пары (esr.key и esr.crt), сертификата CA (ca.crt) и сертификат от CISCO iOS (cisco.crt) выполняется с USB Flash, либо посредством TFTP/FTP/SFTP/SCP.
Проверить имя USB Flash можно командой:
esr# sh storage-devices usb
Просмотреть содержимое:
esr# dir usb://<FLASH_NAME>
Копируем ключевую пару и сертификат CA:
esr# copy usb://<FLASH_NAME>:/ca.crt certificate:ca/ca.crt
esr# copy usb://<FLASH_NAME>:/esr.key certificate:server-key/esr.key
esr# copy usb://<FLASH_NAME>:/esr.crt certificate:server-crt/esr.crt
esr# copy usb://<FLASH_NAME>:/esr.crt certificate:server-crt/cisco.crt
Проверям сертификаты и ключ:
esr-# sh crypto certificates ca
File name Issuer From To
-------------------------------- ------------------------- ------------------------- -------------------------
ca.crt ru1?0???U????novosibirsk 11 14 03:02:48 2019 GMT 11 11 03:02:48 2029 GMT
esr# sh crypto certificates server-key
esr.key Private key: (2048 bit)
esr-# sh crypto certificates server-crt
File name Issuer From To
-------------------------------- ------------------------- ------------------------- -------------------------
cisco.crt ru1?0???U????novosibirsk 11 14 03:36:48 2019 GMT 11 11 03:36:48 2029 GMT
esr.crt ru1?0???U????novosibirsk 11 14 03:25:58 2019 GMT 11 11 03:25:58 2029 GMT
Конфигурация IPsec на ELTEX ESR
Настроим ISAKMP политику (фаза 1):
esr(config)# security ike proposal IKEPROP
esr(config-ike-proposal)# encryption algorithm 3des
esr(config-ike-proposal)# dh-group 2
esr(config-ike-proposal)# exit
Укажем сертификаты и метод аутентификации:
esr(config)# security ike policy IKEPOLICY
esr(config-ike-policy)# certificate ca ca.crt
esr(config-ike-policy)# certificate local-crt esr.crt
esr(config-ike-policy)# certificate local-crt-key esr.key
esr(config-ike-policy)# certificate remote-crt cisco.crt
esr(config-ike-policy)# authentication method rsa-public-key
esr(config-ike-policy)# proposal IKEPROP
esr(config-ike-policy)# exit
Настроим трафик селекторы и режим IPsec:
esr(config)# security ike gateway IKEGW
esr(config-ike-gw)# ike-policy IKEPOLICY
esr(config-ike-gw)# local address 192.0.2.2
esr(config-ike-gw)# local network 192.168.10.0/24
esr(config-ike-gw)# remote address 213.0.113.2
esr(config-ike-gw)# remote network 172.16.10.0/24
esr(config-ike-gw)# mode policy-based
esr(config-ike-gw)# exit
Настроим IPsec политику (фаза 2)
esr(config)# security ipsec proposal IPSECPROP
esr(config-ipsec-proposal)# encryption algorithm des
esr(config-ipsec-proposal)# pfs dh-group 2
esr(config-ipsec-proposal)# exit
esr(config)# security ipsec policy IPSECPOLICY
esr(config-ipsec-policy)# proposal IPSECPROP
esr(config-ipsec-policy)# exit
Установим режим установления IPsec - по наличию входного или выходного трафика (route):
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
Диагностика подключения IPsec VPN
Проверим доступность IP адресов из LAN сегметов:
esr# ping 172.16.10.1 source ip 192.168.10.1
PING 172.16.10.1 (172.16.10.1) from 192.168.10.1 : 56(84) bytes of data.
.!!!!
--- 172.16.10.1 ping statistics ---
5 packets transmitted, 4 received, 20% packet loss, time 4039ms
rtt min/avg/max/mdev = 4.544/24.296/74.151/28.867 ms
Проверим статус IPsec VPN соединения:
esr# sh security ipsec vpn status
Name Local host Remote host Initiator spi Responder spi State
------------------------------- --------------- --------------- ------------------ ------------------ -----------
IPSECVPN 192.0.2.2 213.0.113.2 0x35475c4c0ed0c90f 0x26487c26958d84a4 Established
esr# sh security ipsec vpn status IPSECVPN
Currently active IKE SA:
Name: IPSECVPN
State: Established
Version: v1-only
Unique ID: 1
Local host: 192.0.2.2
Remote host: 213.0.113.2
Role: Initiator
Initiator spi: 0x35475c4c0ed0c90f
Responder spi: 0x26487c26958d84a4
Encryption algorithm: des
Authentication algorithm: sha1
Diffie-Hellman group: 2
Established: 12 seconds ago
Rekey time: 12 seconds
Reauthentication time: 2 hours, 44 minutes and 5 seconds
Child IPsec SAs:
Name: IPSECVPN
State: Installed
Protocol: esp
Mode: Tunnel
Encryption algorithm: des
Authentication algorithm: sha1
Rekey time: 42 minutes and 7 seconds
Life time: 59 minutes and 48 seconds
Established: 12 seconds ago
Traffic statistics:
Input bytes: 336
Output bytes: 336
Input packets: 4
Output packets: 4
-------------------------------------------------------------
Источник:
docs.eltex-co.ru
Задача:
- Выдать клиенту client1 один IP адрес.
- Выдать клиенту client2 три IP адреса.
Решение:
На маршрутизаторе R1 настроим loopback-интерфейс и повешаем наго IP адрес из пула который будем раздовать другим маршрутизаторам:
esr-200# config
esr-200(config)# interface loopback 1
esr-200(config-loopback)# ip address 10.10.10.254/24
esr-200(config-loopback)# exit
Далее настроим интерфейсы к которым подключены клиенты:
esr-200(config)# interface gigabitethernet 1/0/2
esr-200(config-if-gi)# ip unnumbered loopback 1
esr-200(config-if-gi)# ip firewall disable
esr-200(config-if-gi)# exit
esr-200(config)# interface gigabitethernet 1/0/3
esr-200(config-if-gi)# ip unnumbered loopback 1
esr-200(config-if-gi)# ip firewall disable
esr-200(config-if-gi)# exit
И последнее что осталось, это прописать маршрут до IP адресов которые отдаем клиентам:
esr-200(config)# ip route 10.10.10.1/32 interface gigabitethernet 1/0/2 name client1
esr-200(config)# ip route 10.10.10.2/32 interface gigabitethernet 1/0/3 name client2
esr-200(config)# ip route 10.10.10.3/32 interface gigabitethernet 1/0/3 name client2
esr-200(config)# ip route 10.10.10.4/32 interface gigabitethernet 1/0/3 name client2
esr-200(config)# exit
esr-200# commit
esr-200# confirm
А теперь осталось настроить у клиента IP адрес 10.10.10.1 с маской 255.255.255.0 и шлюзом 10.0.0.2 (интерфейс R1 смотрящий в интернет). Точно также делаем на всех ПК воторого клиента.
Источник:
docs.eltex-co.ru
Схема:
Задача:
Настроить NHRP-туннели между маршрутизатором ESR-Spoke и маршрутизаторами Cisco-HUB и Cisco-Spoke. В качестве динамической маршрутизации необходимо настроить OSPF.
Cisco-HUB:
1) Конфигурация:
interface Tunnel1
ip address 10.10.10.1 255.255.255.0
no ip redirects
ip mtu 1472
ip nhrp authentication password
ip nhrp map multicast dynamic
ip nhrp network-id 60
ip nhrp holdtime 360
ip nhrp registration no-unique
ip nhrp registration timeout 60
ip tcp adjust-mss 1432
ip ospf network broadcast
ip ospf priority 255
tunnel source Ethernet0/0
tunnel mode gre multipoint
tunnel key 60
!
!
interface Ethernet0/0
ip address 192.0.2.2 255.255.255.0
!
!
router ospf 1
router-id 10.10.10.1
log-adjacency-changes
auto-cost reference-bandwidth 10000
network 10.10.10.1 0.0.0.0 area 0
!
ip route 192.0.4.0 255.255.255.0 192.0.2.1
ip route 192.168.32.0 255.255.240.0 192.0.2.1
2) Информация о состоянии протоколов OSPF и NHRP:
Router#show ip nhrp
10.10.10.2/32 via 10.10.10.2
Tunnel1 created 01:18:10, expire 00:05:14
Type: dynamic, Flags: registered
NBMA address: 192.0.4.2
10.10.10.3/32 via 10.10.10.3
Tunnel1 created 01:04:52, expire 00:05:44
Type: dynamic, Flags: unique registered
NBMA address: 192.168.39.216
Router#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
10.10.10.2 1 FULL/DROTHER 00:00:34 10.10.10.2 Tunnel1
10.10.10.3 128 FULL/DR 00:00:31 10.10.10.3 Tunnel1
ESR-Spoke:
1) Конфигурация
esr# show running-config
router ospf log-adjacency-changes
router ospf 1
router-id 10.10.10.3
area 0.0.0.0
enable
exit
enable
exit
interface gigabitethernet 1/0/1
ip firewall disable
ip address 192.168.39.216/20
exit
tunnel gre 1
key 60
ttl 30
mtu 1472
multipoint
ip firewall disable
local interface gigabitethernet 1/0/1
ip address 10.10.10.3/24
ip ospf instance 1
ip ospf
ip tcp adjust-mss 1432
ip nhrp authentication password
ip nhrp holding-time 360
ip nhrp map 10.10.10.1 192.0.2.2
ip nhrp nhs 10.10.10.1/24
ip nhrp multicast nhs
ip nhrp enable
enable
exit
ip route 192.0.2.0/24 192.168.39.215
ip route 192.0.4.0/24 192.168.39.215
2) Информация о состоянии протоколов OSPF и NHRP:
esr# show ip ospf neighbors
Router ID Pri State DTime Interface Router IP
--------- --- ----- ----- ----------------- ---------
10.10.10.1 255 Full/BDR 00:36 gre 1 10.10.10.1
esr# show ip nhrp
Tunnel address NBMA address Interface Peer type Expire Created Flags
---------------- ---------------- --------- --------------- --------- ---------- ---------
10.10.10.1 192.0.2.2 gre 1 static -- -- register,
lower-up,
up
10.10.10.2 192.0.4.2 gre 1 cached 0:05:49 00:00:10 used,
lower-up,
up
Cisco-Spoke:
1) Конфигурация:
interface Tunnel1
ip address 10.10.10.2 255.255.255.0
no ip redirects
ip mtu 1472
ip nhrp authentication password
ip nhrp map 10.10.10.1 192.0.2.2
ip nhrp map multicast 192.0.2.2
ip nhrp network-id 60
ip nhrp holdtime 360
ip nhrp nhs 10.10.10.1
ip nhrp registration no-unique
ip nhrp registration timeout 60
ip tcp adjust-mss 1432
ip ospf network broadcast
tunnel source Ethernet0/0
tunnel mode gre multipoint
tunnel key 60
!
!
interface Ethernet0/0
ip address 192.0.4.2 255.255.255.0
!
!
router ospf 1
router-id 10.10.10.2
log-adjacency-changes
auto-cost reference-bandwidth 10000
network 10.10.10.2 0.0.0.0 area 0
!
!
ip route 192.0.2.0 255.255.255.0 192.0.4.1
ip route 192.168.32.0 255.255.240.0 192.0.4.1
2) Информация о состоянии протоколов OSPF и NHRP:
Router#show ip ospf neighbor
Neighbor ID Pri State Dead Time Address Interface
10.10.10.1 255 FULL/DR 00:00:31 10.10.10.1 Tunnel1
Router#show ip nhrp
10.10.10.1/32 via 10.10.10.1
Tunnel1 created 01:36:26, never expire
Type: static, Flags: used
NBMA address: 192.0.2.2
10.10.10.2/32 via 10.10.10.2
Tunnel1 created 00:01:00, expire 00:04:59
Type: dynamic, Flags: router unique local
NBMA address: 192.0.4.2
(no-socket)
10.10.10.3/32 via 10.10.10.3
Tunnel1 created 00:01:00, expire 00:04:59
Type: dynamic, Flags: router
NBMA address: 192.168.39.216
Источник:
docs.eltex-co.ru
Решение:
Первым делом настроим OpenVPN сервер на примере маршрутизатора ESR-200. Для этого нам понадобятся заранее выработанные сертификаты и ключи(ca.crt, dh.pem, server.key, client.key, server.crt, client.crt, ta.key).
Загрузим сертификаты на маршрутизатор. Для этого воспользуемся TFTP сервером (также можно загружать сертификаты и через FTP/SCP либо USB/SD).
esr-200# copy tftp://192.168.16.10:/ca.crt certificate:ca/ca.crt
esr-200# copy tftp://192.168.16.10:/dh.pem certificate:dh/dh.pem
esr-200# copy tftp://192.168.16.10:/server.key certificate:server-key/server.key
esr-200# copy tftp://192.168.16.10:/server.crt certificate:server-crt/server.crt
esr-200# copy tftp://192.168.16.10:/ta.key certificate:ta/ta.key
Далее сама настройка:
esr-200# config
esr-200(config)# remote-access openvpn GenOffice //Создаем сервер и даем ему имя
esr-200(config-openvpn-server)# network 10.10.100.0/24 //Определяем сеть из которой будут выделяться адреса клиентам
esr-200(config-openvpn-server)# protocol tcp //Выбираем протокол по которому будет работать сервер (tcp/udp)
esr-200(config-openvpn-server)# tunnel ip //Выбираем на каком уровне будет работать (l2 ethetnet/l3 ip)
esr-200(config-openvpn-server)# encryption algorithm aes128 //Выбираем алгоритм шифрования
esr-200(config-openvpn-server)# authentication algorithm sha-256 //Алгоритм аутентификации
esr-200(config-openvpn-server)# certificate ca ca.crt //
esr-200(config-openvpn-server)# certificate dh dh.pem //
esr-200(config-openvpn-server)# certificate server-key server.key //указываем загруженные ранее сертификаты
esr-200(config-openvpn-server)# certificate server-crt server.crt //
esr-200(config-openvpn-server)# certificate ta ta.key //
esr-200(config-openvpn-server)# security-zone trusted //Указываем зону безопасности
esr-200(config-openvpn-server)# route 192.168.1.0/24 //Добавляем маршрут на сеть, которая будет доступна для клиентов
esr-200(config-openvpn-server)# enable //Включаем сервер
Предположим что удаленному офису необходимо дать статический IP. Тогда для данного клиента (в примере используется имя сертификата udoffice) необходимо произвести следующие настройки:
esr-200(config-openvpn-server)# username udoffice
esr-200(config-openvpn-user)# ip address 10.10.100.202
esr-200(config-openvpn-user)# exit
Если говорить о клиентах с интернета, то их много и необходимо, что бы они подключались через один сертификат. Для этого активируем функцию duplicate-cn:
esr-200(config-openvpn-server)# duplicate-cn
esr-200(config-openvpn-server)# end
esr-200# commit
esr-200# confirm
На этом настройка сервера завершена. Перейдем к настройке удаленного офиса. Предположем, что там установлен ESR-10. Загрузим на него сертификаты и настроим OpenVPN туннель:
esr-10# copy tftp://192.168.16.10:/ca.crt certificate:ca/ca.crt
esr-10# copy tftp://192.168.16.10:/dh.pem certificate:dh/dh.pem
esr-10# copy tftp://192.168.16.10:/udoffice.key certificate:client-key/udoffice.key
esr-10# copy tftp://192.168.16.10:/udoffice.crt certificate:client-crt/udoffice.crt
esr-10# copy tftp://192.168.16.10:/ta.key certificate:ta/ta.key
esr-10# config
esr-10(config)# tunnel openvpn 1
esr-10(config-openvpn)# ip firewall disable
esr-10(config-openvpn)# remote address 10.10.0.10
esr-10(config-openvpn)# protocol tcp
esr-10(config-openvpn)# tunnel ip
esr-10(config-openvpn)# encryption algorithm aes128
esr-10(config-openvpn)# authentication algorithm sha-256
esr-10(config-openvpn)# certificate ca ca.crt
esr-10(config-openvpn)# certificate dh dh.pem
esr-10(config-openvpn)# certificate client-key udoffice.key
esr-10(config-openvpn)# certificate client-crt udoffice.crt
esr-10(config-openvpn)# certificate ta ta.key
esr-10(config-openvpn)# enable
Все настройки клиента должны соответствовать наcтройкам сервера.
esr-10(config-openvpn)# end
esr-10# commit
esr-10# confirm
Просмотреть статус подключенных клиентов на сервере можно командой show remote-access status openvpn. Статус туннеля на клиенте show tunnels status.
Пример конфигурации клиента Windows
Для подключение к OpenVPN серверу с ОС Windows необходимо установить дополнительное ПО. Пример конфигурации:
Client
remote 10.10.0.10 1194
proto tcp
dev tun
remote-cert-tls server
ca ca.crt
cert client.crt
key client.key
tls-auth ta.key 1
cipher AES-128-CBC
auth SHA256
verb 3
Источник:
docs.eltex-co.ru
Дополнительной особенностью RA IPsec VPN является возможность использования второго фактора аутентификации IPsec – Extended Authentication (XAUTH), вторым фактором аутентификации является пара логин-пароль для клиента IPsec VPN.
Задача:
Настроить Remote Access IPsec VPN между R1 и R2 с использованием второго фактора
аутентификации IPsec - XAUTH. В качестве сервера IPsec VPN настроить маршрутизатор R1, а
маршрутизатор R2 в качестве клиента IPsec VPN.
R2 IP-адрес - 120.11.5.1;
R1 IP-адрес - 180.100.0.1;
Клиентам IPsec VPN:
- выдавать адреса из пула подсети 192.0.2.0/24;
- предоставлять доступ до LAN подсети 10.0.0.0/16;
- группа Диффи-Хэллмана: 2;
- алгоритм шифрования: 3DES;
- алгоритм аутентификации: SHA
Решение:
Конфигурирование R1:
Настроим внешний сетевой интерфейс и определим принадлежность к зоне безопасности:
esr# configure
esr(config)# security zone untrusted
esr(config-zone)# exit
esr(config)# interface gigabitethernet 1/0/1
esr(config-if-gi)# security-zone untrusted
esr(config-if-gi)# ip address 180.100.0.1/24
esr(config-if-gi)# exit
Для настройки правил зон безопасности потребуется создать профиль порта протокола ISAKMP:
esr(config)# object-group service ISAKMP
esr(config-object-group-service)# port-range 500,4500
esr(config-object-group-service)# exit
Создадим профиль протокола IKE. В профиле укажем группу Диффи-Хэллмана 2, алгоритм шифрования 3DES, алгоритм аутентификации SHA1. Данные параметры безопасности используются для защиты IKE-соединения:
esr(config)# security ike proposal IKEPROP
esr(config-ike-proposal)# dh-group 2
esr(config-ike-proposal)# authentication algorithm sha1
esr(config-ike-proposal)# encryption algorithm 3des
esr(config-ike-proposal)# exit
Создадим политику протокола IKE. В политике указывается список профилей протокола IKE, по которым могут согласовываться узлы, ключ аутентификации и метод аутентификации XAUTH по ключу.
esr(config)# security ike policy IKEPOLICY
esr(config-ike-policy)# pre-shared-key hexadecimal 123FFF
esr(config-ike-policy)# authentication method xauth-psk-key
esr(config-ike-policy)# proposal IKEPROP
esr(config-ike-policy)# exit
Создадим профиль доступа и заведем в нем пару логин и пароль для клиента IPsec VPN:
esr(config)# access profile XAUTH
esr(config-access-profile)# user client1
esr(config-profile)# password ascii-text password123
esr(config-profile)# exit
esr(config-access-profile)# exit
Создадим пул адресов назначения, из которого будут выдаваться IP клиентам IPsec VPN:
esr-1000(config)# address-assignment pool CLIENT_POOL
esr-1000(config-pool)# ip prefix 192.0.2.0/24
esr-1000(config-pool)# exit
Создадим шлюз протокола IKE. В данном профиле необходимо указать политику протокола IKE, указать локальную подсеть, в качестве удаленной подсети указать пул адресов назначения, задать режим перенаправления трафика в туннель по политике и использование второго фактора аутентификации XAUTH:
esr(config)# security ike gateway IKEGW
esr(config-ike-gw)# ike-policy IKEPOLICY
esr(config-ike-gw)# local address 180.100.0.1
esr(config-ike-gw)# local network 10.0.0.0/16
esr(config-ike-gw)# remote address any
esr(config-ike-gw)# remote network dynamic pool CLIENT_POOL
esr(config-ike-gw)# dead-peer-detection action clear
esr(config-ike-gw)# mode policy-based
esr(config-ike-gw)# xauth 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 vpn IPSECVPN
esr(config-ipsec-vpn)# mode ike
esr(config-ipsec-vpn)# ike establish-tunnel by-request
esr(config-ipsec-vpn)# ike gateway IKEGW
esr(config-ipsec-vpn)# ike ipsec-policy IPSECPOLICY
esr(config-ipsec-vpn)# enable
esr(config-ipsec-vpn)# exit
Разрешим протокол esp и udp порты 500,4500 в конфигурации firewall для установления IPsec VPN:
esr(config)# security zone-pair untrusted self
esr(config-zone-pair)# rule 1
esr(config-zone-pair-rule)# action permit
esr(config-zone-pair-rule)# match protocol udp
esr(config-zone-pair-rule)# match destination-port ISAKMP
esr(config-zone-pair-rule)# enable
esr(config-zone-pair-rule)# exit
esr(config-zone-pair)# rule 2
esr(config-zone-pair-rule)# action permit
esr(config-zone-pair-rule)# match protocol esp
esr(config-zone-pair-rule)# enable
esr(config-zone-pair-rule)# exit
esr(config-zone-pair)# end
Конфигурирование R2:
Настроим внешний сетевой интерфейс и определим принадлежность к зоне безопасности:
esr# configure
esr(config)# interface gi 1/0/1
esr(config-if)# ip address 120.11.5.1/24
esr(config-if)# security-zone untrusted
esr(config-if)# exit
Для настройки правил зон безопасности потребуется создать профиль порта протокола ISAKMP:
esr(config)# object-group service ISAKMP
esr(config-addr-set)# port-range 500,4500
esr(config-addr-set)# exit
Создадим профиль протокола IKE. В профиле укажем группу Диффи-Хэллмана 2, алгоритм шифрования 3DES, алгоритм аутентификации SHA1. Данные параметры безопасности используются для защиты IKE-соединения:
esr(config)# security ike proposal IKEPROP
esr(config-ike-proposal)# dh-group 2
esr(config-ike-proposal)# authentication algorithm sha1
esr(config-ike-proposal)# encryption algorithm 3des
esr(config-ike-proposal)# exit
Создадим политику протокола IKE. В политике указывается список профилей протокола IKE, по которым могут согласовываться узлы, ключ аутентификации, метод аутентификации XAUTH по ключу и режим аутентификации - клиент:
esr(config)# security ike policy IKEPOLICY
esr(config-ike-policy)# pre-shared-key hexadecimal 123FFF
esr(config-ike-policy)# authentication method xauth-psk-key
esr(config-ike-policy)# authentication mode client
esr(config-ike-policy)# proposal IKEPROP
esr(config-ike-policy)# exit
Создадим профиль доступа и заведем в нем пару логин и пароль:
esr(config)# access profile XAUTH
esr(config-access-profile)# user client1
esr(config-profile)# password ascii-text password123
esr(config-profile)# exit
esr(config-access-profile)# exit
Создадим интерфейс loopback для терминации IP адреса, полученного от IPsec VPN сервера:
esr(config)# interface loopback 8
esr(config-loopback)# exit
Создадим шлюз протокола IKE. В данном профиле указывается политика, интерфейс терминации, режим динамического установления удаленной подсети, выбор профиля доступа для XAUTH и режим перенаправления трафика в туннель по политике:
esr(config)# security ike gateway IKEGW
esr(config-ike-gw)# ike-policy IKEPOLICY
esr(config-ike-gw)# assign-interface loopback 8
esr(config-ike-gw)# local address 120.11.5.1
esr(config-ike-gw)# remote address 180.100.0.1
esr(config-ike-gw)# remote network dynamic client
esr(config-ike-gw)# mode policy-based
esr(config-ike-gw)# xauth access-profile xauth client client1
esr(config-ike-gw)# exit
Создадим профиль параметров безопасности для IPsec-туннеля. В профиле укажем алгоритм шифрования 3DES, алгоритм аутентификации SHA1. Данные параметры безопасности используются для защиты IPsec-туннеля:
esr(config)# security ipsec
esr(config-ipsec-proposal)#
esr(config-ipsec-proposal)#
esr(config-ipsec-proposal)#
proposal IPSECPROP
authentication algorithm md5
encryption algorithm aes128
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-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включимтуннель командой enable:
esr(config)# security ipsec vpn IPSECVPN
esr(config-ipsec-vpn)# mode ike
esr(config-ipsec-vpn)# ike establish-tunnel immediate
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
Источник:
docs.eltex-co.ru
Начиная с версии ПО 1.6 введены режимы работы физичиских интерфейсов: маршрутизируемый и коммутируемый порт. Создание сабинтерфейсов доступно только для маршрутизиремого порта:
ESR(config)# interface gigabitethernet 1/0/1
ESR(config-if-gi)# mode routerport
ESR(config-if-gi)# exit
ESR(config)# interface gigabitethernet 1/0/1.100
ESR(config)#
Изменения конфигурации вступают в действие после применения:
esr# commit
Configuration has been successfully committed
esr# confirm
Configuration has been successfully confirmed
Источник:
docs.eltex-co.ru
Решение:
Для решения поставленной задачи будем использовать бридж и саб интерфейсы (число саб интерфейсов соответствует числу VLAN ID, которые необходимо объеденить, в примере их два).
1) на маршрутизаторе создаем бридж:
bridge 3
ip firewall disable
enable
exit
2) создаем на маршрутизаторе саб интерфейсы и привязываем их к бриджу:
interface gigabitethernet 1/0/4.1001
bridge-group 3
exit
interface gigabitethernet 1/0/4.1002
bridge-group 3
exit
esr# commit
Configuration has been successfully committed
esr# confirm
Configuration has been successfully confirmed
Теперь фреймы ( в том числе броадкаст) будут распространяться между VLAN 1001 и 1002.
Примечание: На bridge 3 можно навесить IP адрес и внести его в зону безопасности или оставить firewall отключенным:
bridge 3
security-zone trusted
ip address 192.0.2.254/24
enable
exit
Теперь после применения конфигурации, IP 192.0.2.254 можно использовать, например, как шлюз для подсети из VLAN 1001 и 1002, и маршрутизировать трафик далее.
Источник:
docs.eltex-co.ru
Решение:
Предварительно настроен ip адрес на интерфейсе gigabitethernet 1/0/1 - 192.168.0.10/24. Сервер NTP(источник синхронизации) имеет ip адрес 192.168.0.1/24
Конфигурация NTP на маршрутизаторе ESR:
Включение синхронизации системных часов с удаленными серверами
esr(config)# ntp enable
Настроика NTP сервера
esr-(config)# ntp server 192.168.0.1
Указать предпочтительность данного NTP сервера(необезательно)
esr-1000(config-ntp)# prefer
Указать интервал времени между отправкой сообщений NTP-серверу
esr(config-ntp)# minpoll 4
esr(config-ntp)# end
esr# commit
esr# confirm
Команда для просмотра текущей конфигурацию протокола NTP:
esr# show ntp configuration
Команда для просмотра текущего состояние NTP-серверов (пиров):
esr# show ntp peers
При использовании firewall необходимо разрешить входящий трафик по
протоколу UDP с портом назначения 123:
security zone untrust
exit
object-group service NTP
port-range 123
exit
interface gigabitethernet 1/0/1
security-zone untrust
ip address 192.168.0.10/24
exit
security zone-pair untrust self
rule 10
action permit
match protocol udp
match source-address any
match destination-address any
match source-port any
match destination-port NTP
enable
exit
exit
Источник:
docs.eltex-co.ru
В данном примере производится ограничения доступа к определенным ресурсам(YouTube, ВКонтакте) на интерфейсе gi 1/0/2 при запросе(Хост), доступ ко всем прочим ресурсам не ограничивается(default action permit в конфигурации ip http profile Test). В object-group url Black ресурс YouTube указан в формате regexp:
esr# sh running-config
object-group url Black
url https://vk.com/
regexp 'youtube.com'
exit
ip http profile Test
default action permit
urls local Black action deny
exit
interface gigabitethernet 1/0/1
description "to_WAN"
ip firewall disable
ip address 192.0.2.1/30
exit
interface gigabitethernet 1/0/2
description "to_LAN"
ip firewall disable
ip address 192.168.0.10/24
ip http proxy Test
ip https proxy Test
exit
nat source
ruleset test
to interface gigabitethernet 1/0/1
rule 1
action source-nat interface
enable
exit
exit
exit
ip route 0.0.0.0/0 192.0.2.2
Проверка работоспособности производилась на версии ПО 1.14.5.
Источник:
docs.eltex-co.ru
Конфигурации маршрутизаторов:
hostname routerA
system jumbo-frames
router ospf 1
router-id 192.168.54.1
area 0.0.0.0
enable
exit
enable
exit
interface gigabitethernet 1/0/1
ip firewall disable
ip address 192.168.54.1/30
ip ospf instance 1
ip ospf
exit
hostname routerB
system jumbo-frames
router ospf 1
router-id 192.168.54.2
area 0.0.0.0
enable
exit
enable
exit
interface gigabitethernet 1/0/1
ip firewall disable
ip address 192.168.54.2/30
ip ospf instance 1
ip ospf
exit
- Установить SFP-модуль ToPGATE-SFP в routerA (для примера будет использоваться интерфейс gi1/0/5) и подождать 15 секунд.
- Для подключения к SFP-модулю на интерфейсе маршрутизатора настроить IP-адрес 192.168.0.23/24
interface gigabitethernet 1/0/5
ip firewall disable
ip address 192.168.0.23/24
exit
- Настроить IP-связность между routerA и SFP-модулем без использования IP-адресов по умолчанию. Для примера будет использоваться адресация в подсети 172.16.16.0/30
3.1. Подключиться из CLI ESR к CLI SFP-модуля по протоколу telnet на IP-адрес по умолчанию 192.168.0.24 используя логин/пароль - admin/admin
routerA# telnet 192.168.0.24
Entering character mode
Escape character is '^]'.
login: admin
password:
Появится меню настройки ToPGATE-SFP
..
|>AAA
| E1
| Envir
| Eth
| flash
| IP
| System
| TDMoP
| VLAN
3.2. Используя клавиши вверх/вниз перейти на раздел меню “IP” и нажать Enter
|>..
| current-config
| hosts
| stat
| stored-config
3.3. Используя клавиши вверх/вниз перейти на раздел меню “stored-config” и нажать Enter
>..
| NetworkAddr 192.168.0.24
| NetworkMask 255.255.255.0
| DefaultGateway 192.168.0.1
| DefaultVlanID 0
| DefaultVlanPri 0
| PhysicalAddr 54:A5:4B:00:67:6A
| SecondaryMAC 54:A5:4B:00:67:6B
| TrustAll Yes
| TrustLocal Yes
| TrustUnkVlan Yes
| DNS1 0.0.0.0
3.4. Назначить SFP-модулю новый IP-адрес
Используя клавиши вверх/вниз перейти на раздел меню “NetworkAddr” и нажать Enter
|---------------------------------------|
|Enter value: |
|192.168.0.24 |
| |
|---------------------------------------|
При помощи клавиши backspase удалить IP-адрес по умолчанию (192.168.0.24). Ввести IP-адрес выделенный для IP-связности routerA и ToPGATE-SFP (для примера используется IP-адрес 172.16.16.2/30)
|---------------------------------------|
|Enter value: |
|172.16.16.2 |
| |
|---------------------------------------|
Нажать клавишу Enter.
3.5. Используя клавиши вверх/вниз перейти на раздел меню “NetworkMask ” и нажать Enter
|---------------------------------------|
|Enter value: |
|255.255.255.0 |
| |
|---------------------------------------|
Исправить маску подсети в соответствии с выделенной маской
|---------------------------------------|
|Enter value: |
|255.255.255.252 |
| |
|---------------------------------------|
Нажать клавишу Enter.
3.6. Используя клавиши вверх/вниз перейти на раздел меню “DefaultGateway” и нажать Enter
|---------------------------------------|
|Enter value: |
|192.168.0.1 |
| |
|---------------------------------------|
Исправить IP-адрес шлюза по умолчанию, на IP-адрес который будет назначен на gi1/0/5 маршрутизатора
|---------------------------------------|
|Enter value: |
|172.16.16.1 |
| |
|---------------------------------------|
Нажать клавишу Enter.
3.7. Выйти в основное меню SFP-модуля
Используя клавиши вверх/вниз перейти на раздел меню “..” и нажать Enter
|>..
| current-config
| hosts
| stat
| stored-config
Используя клавиши вверх/вниз перейти на раздел меню “..” и нажать Enter
| ..
|>AAA
| E1
| Envir
| Eth
| flash
| IP
| System
| TDMoP
| VLAN
3.8. Сохранить выполненные настройки последовательным или одновременным нажатием клавиш “ESC” и “s”
3.9. Выйти из CLI SFP-модуля:
нажать комбинацию клавиш “CTRL”+”5” и нажать на клавишу “e”.
Console escape. Commands are:
l go to line mode
c go to character mode
z suspend telnet
e exit telnet
routerA#
3.10 Извлечь SFP-модуль из маршрутизатора
3.11. Удалить с интерфейса gi1/0/5 установленный ранее IP-адрес 192.168.0.23/24 и назначить IP-адрес выделенный для IP-связности routerA и ToPGATE-SFP (для примера используется IP-адрес 172.16.16.1/30). Также, на интерфейсе можно включить работу протокола OSPF, для обеспечения IP-связности между ToPGATE-SFP установленных в разных маршрутизаторах.
routerA# configure
routerA(config)# interface gigabitethernet 1/0/5
routerA(config-if-gi)# no ip address 192.168.0.23/24
routerA(config-if-gi)# ip address 172.16.16.1/30
routerA(config-if-gi)# ip ospf instance 1
routerA(config-if-gi)# ip ospf
routerA(config-if-gi)# end
routerA# commit
routerA# confirm
3.12 Установить обратно SFP-модуль, подождать 15 секунд и проверить IP-связность routerA c SFP-модулем используя команду ping
routerA# ping 172.16.16.2
PING 172.16.16.2 (172.16.16.2) 56(84) bytes of data.
!!!!!
--- 172.16.16.2 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4049ms
rtt min/avg/max/mdev = 0.268/0.345/0.593/0.125 ms
- Повторить все шаги описанные в разделах 1, 2 и 3 но для пары routerB - ToPGATE-SFPиспользуя другую подсеть для IP-связности (для примера 172.16.16.4/30)
- Проверить результаты конфигурирования:
5.1. Итоговые конфигурации маршрутизаторов должны содержать необходимые команды:
hostname routerA
system jumbo-frames
outer ospf 1
router-id 192.168.54.1
area 0.0.0.0
enable
exit
enable
exit
interface gigabitethernet 1/0/1
ip firewall disable
ip address 192.168.54.1/30
ip ospf instance 1
ip ospf
exit
interface gigabitethernet 1/0/5
ip firewall disable
ip address 172.16.16.1/30
ip ospf instance 1
ip ospf
exit
hostname routerB
system jumbo-frames
router ospf 1
router-id 192.168.54.2
area 0.0.0.0
enable
exit
enable
exit
interface gigabitethernet 1/0/1
ip firewall disable
ip address 192.168.54.2/30
ip ospf instance 1
ip ospf
exit
interface gigabitethernet 1/0/5
ip firewall disable
ip address 172.16.16.5/30
ip ospf instance 1
ip ospf
exit
5.2. В таблицах маршрутизации каждого ESR должна быть информация о подсети, настроенной на другом ESR
routerA# show ip route
Codes: C - connected, S - static, R - RIP derived,
O - OSPF derived, IA - OSPF inter area route,
E1 - OSPF external type 1 route, E2 - OSPF external type 2 route
B - BGP derived, D - DHCP derived, K - kernel route, V - VRRP route
* - FIB route
C * 192.168.54.0/30 [0/0] dev gi1/0/1 [direct 00:00:46]
O * 172.16.16.4/30 [150/20] via 192.168.54.2 on gi1/0/1 [ospf1 01:15:59] (192.168.54.2)
C * 172.16.16.0/30 [0/0] dev gi1/0/5 [direct 01:02:56]
routerB# sh ip route
Codes: C - connected, S - static, R - RIP derived,
O - OSPF derived, IA - OSPF inter area route,
E1 - OSPF external type 1 route, E2 - OSPF external type 2 route
B - BGP derived, D - DHCP derived, K - kernel route, V - VRRP route
* - FIB route
C * 192.168.54.0/30 [0/0] dev gi1/0/1 [direct 03:36:24]
C * 172.16.16.4/30 [0/0] dev gi1/0/5 [direct 05:20:28]
O * 172.16.16.0/30 [150/20] via 192.168.54.1 on gi1/0/1 [ospf1 05:07:29] (192.168.54.1)
- Настроить "проброс" потока E1 между SFP-модулями ToPGATE-SFP
6.1. Подключиться по telnet к SFP-модулю установленному в routerA используя логин/пароль - admin/admin
routerA# telnet 192.168.0.24
Entering character mode
Escape character is '^]'.
login: admin
password:
6.2. Перемещаясь по меню способом описанным в разделе 3 перейти в TDMoP --> 0 --> config
6.3. Аналогично действиям описанном в разделе 3 в качестве удаленного IP (RemoteIP), прописать ip-адрес назначенный на SFP-модуль установленный в routerB
6.4. Аналогично действиям описанном в разделе 3 активировать подключение т.е. Установить для поля “AdminStatus” значение “AdminStatus”
6.5. Аналогично действиям описанном в разделе 3 для поля “VLANID” установить значение “0”
6.6. Сохранить выполненные настройки последовательным или одновременным начанием клавишь “ESC” и “s”
- Повторить все пункты описанные в разделе 6 для SFP-модуля установленного в routerB, прописав в качестве RemoteIPip-адрес назначенный на SFP-модуле установленном в routerA
- Возможно потребуется произвести настройки в разделе “E1” основного меню но это зависит от конфигурации E1 интерфейсов оборудования подключаемого к ToPGATE-SFP.
Источник:
docs.eltex-co.ru
Для решения задачи будем использовать VRF.
Для начала создадим на ESR VRF c именем kids:
esr-12v# config
esr-12v(config)# ip vrf kids
esr-12v(config-vrf)# exit
При необходимости настройки файрвола создадим зоны безопасности. Для внешних интерфейсов untrusted, для внутренних trusted:
esr-12v(config)# security zone trusted
esr-12v(config-zone)# exit
esr-12v(config)# security zone untrusted
esr-12v(config-zone)# exit
Также стоит учесть, что для интерфейсов включенных в VRF потребуются свои зоны безопасности. Создадим их и включим в vrf kids.
esr-12v(config)# security zone trust-kids
esr-12v(config-zone)# ip vrf forwarding kids
esr-12v(config-zone)# exit
esr-12v(config)# security zone untrust-kids
esr-12v(config-zone)# ip vrf forwarding kids
esr-12v(config-zone)# exit
Приступим к настройке интерфейсов для подключения к сети Интернет:
esr-12v(config)# interface gigabitethernet 1/0/1
esr-12v(config-if-gi)# ip address 185.16.15.2/30
esr-12v(config-if-gi)# security-zone untrusted
esr-12v(config-if-gi)# exit
Указываем маршрут в интернет:
esr-12v(config)# ip route 0.0.0.0/0 185.16.15.1
Приступим к интерфейсу с фильтрованным интернетом. Первым делом включаем необходимый интерфейс в vrf kids:
esr-12v(config)# interface gigabitethernet 1/0/2
esr-12v(config-if-gi)# ip vrf forwarding kids
esr-12v(config-if-gi)# ip address 185.16.20.2/30
esr-12v(config-if-gi)# security-zone untrust-kids
esr-12v(config-if-gi)# exit
Точно также указываем маршрут, но с учетом vrf kids:
esr-12v(config)# ip route vrf kids 0.0.0.0/0 185.16.20.1
Создаем интерфейсы под локальные подсети. Подсеть которая будет ходить в фильтрованный интернет необходимо включить в тот же vrf, что и uplink.
esr-12v(config)# interface gigabitethernet 1/0/3
esr-12v(config-if-gi)# ip address 192.168.1.1/24
esr-12v(config-if-gi)# security-zone trusted
esr-12v(config-if-gi)# exit
esr-12v(config)# interface gigabitethernet 1/0/4
esr-12v(config-if-gi)# ip vrf forwarding kids
esr-12v(config-if-gi)# ip address 192.168.2.1/24
esr-12v(config-if-gi)# security-zone trust-kids
esr-12v(config-if-gi)# exit
Далее для каждой подсети настроим nat source:
esr-12v(config)# nat source
esr-12v(config-snat)# ruleset factory
esr-12v(config-snat-ruleset)# to zone untrusted
esr-12v(config-snat-ruleset)# rule 10
esr-12v(config-snat-rule)# action source-nat interface
esr-12v(config-snat-rule)# enable
esr-12v(config-snat-rule)# exit
esr-12v(config-snat-ruleset)# exit
Для фильтрованного интернета ruleset необходимо таже добавить в vrf kids:
esr-12v(config-snat)# ruleset kids
esr-12v(config-snat-ruleset)# ip vrf forwarding kids
esr-12v(config-snat-ruleset)# to zone untrust-kids
esr-12v(config-snat-ruleset)# rule 10
esr-12v(config-snat-rule)# action source-nat interface
esr-12v(config-snat-rule)# enable
esr-12v(config-snat-rule)# exit
esr-12v(config-snat-ruleset)# exit
esr-12v(config-snat)# exit
Далее разрешим трафик между зонами безопасности:
esr-12v(config)# security zone-pair trusted untrusted
esr-12v(config-zone-pair)# rule 1
esr-12v(config-zone-pair-rule)# action permit
esr-12v(config-zone-pair-rule)# enable
esr-12v(config-zone-pair-rule)# exit
esr-12v(config-zone-pair)# exit
esr-12v(config)# security zone-pair trusted trusted
esr-12v(config-zone-pair)# rule 1
esr-12v(config-zone-pair-rule)# action permit
esr-12v(config-zone-pair-rule)# enable
esr-12v(config-zone-pair-rule)# exit
esr-12v(config-zone-pair)# exit
sr-12v(config)# security zone-pair trusted self
esr-12v(config-zone-pair)# rule 1
esr-12v(config-zone-pair-rule)# action permit
esr-12v(config-zone-pair-rule)# enable
esr-12v(config-zone-pair-rule)# exit
esr-12v(config-zone-pair)# exit
Для интерфейсов в vrf kids:
esr-12v(config)# security zone-pair trust-kids untrust-kids
esr-12v(config-zone-pair)# rule 1
esr-12v(config-zone-pair-rule)# action permit
esr-12v(config-zone-pair-rule)# enable
esr-12v(config-zone-pair-rule)# exit
esr-12v(config-zone-pair)# exit
esr-12v(config)# security zone-pair trust-kids trust-kids
esr-12v(config-zone-pair)# rule 1
esr-12v(config-zone-pair-rule)# action permit
esr-12v(config-zone-pair-rule)# enable
esr-12v(config-zone-pair-rule)# exit
esr-12v(config-zone-pair)# exit
esr-12v(config)# security zone-pair trust-kids self
esr-12v(config-zone-pair)# rule 1
esr-12v(config-zone-pair-rule)# action permit
esr-12v(config-zone-pair-rule)# enable
esr-12v(config-zone-pair-rule)# exit
esr-12v(config-zone-pair)# exit
esr-12v(config)# exit
esr-12v# commit
esr-12v# confirm
В итоге получаем конфигурацию следующего вида:
esr-12v# show running-config
ip vrf kids
exit
security zone trusted
exit
security zone untrusted
exit
security zone trust-kids
ip vrf forwarding kids
exit
security zone untrust-kids
ip vrf forwarding kids
exit
interface gigabitethernet 1/0/1
security-zone untrusted
ip address 185.16.15.2/30
exit
interface gigabitethernet 1/0/2
ip vrf forwarding kids
security-zone untrust-kids
ip address 185.16.20.2/30
exit
interface gigabitethernet 1/0/3
security-zone trusted
ip address 192.168.1.1/24
exit
interface gigabitethernet 1/0/4
ip vrf forwarding kids
security-zone trust-kids
ip address 192.168.2.1/24
exit
security zone-pair trusted untrusted
rule 1
action permit
enable
exit
exit
security zone-pair trusted trusted
rule 1
action permit
enable
exit
exit
security zone-pair trust-kids untrust-kids
rule 1
action permit
enable
exit
exit
security zone-pair trust-kids trust-kids
rule 1
action permit
enable
exit
exit
security zone-pair trusted self
rule 1
action permit
enable
exit
exit
security zone-pair trust-kids self
rule 1
action permit
enable
exit
exit
nat source
ruleset factory
to zone untrusted
rule 10
description "replace 'source ip'by outgoing interface ip address"
action source-nat interface
enable
exit
exit
ruleset kids
ip vrf forwarding kids
to zone untrust-kids
rule 10
action source-nat interface
enable
exit
exit
exit
ip route 0.0.0.0/0 185.16.15.1
ip route vrf kids 0.0.0.0/0 185.16.20.1
Источник:
docs.eltex-co.ru
Настройка ESR
Для возможности применения конфигурации, переданной через сеть на ESR необходимо:
- Подключить ESR к сети с заведомо настроенными dhcp и tftp серверами
- Включить dhcp-client на подключенном к сети интерфейсе
- Разрешить применение полученной по сети конфигурации командой "boot host auto-config"
Пример конфигурации на ESR
esr# sh run
hostname esr
boot host auto-config
interface gigabitethernet 1/0/1
ip address dhcp
exit
При следующем старте ESR:
- Применит ip настройки полученные через DHCP-сервер
- Скачает файл-конфигурации с TFTP-сервера
- Применит новую конфигурацию, полученную от TFTP-сервера
Пример настройки компьютера на базе OS Linux для tftp и dhcp-серверов
Задача: Настроить компьютер для выдачи конфигурации ESR по сети
Настройка адресации
ip add add 192.168.2.0/24 dev eth0
где eth0 - сетевая карта компьютера, которая подключена в сеть с ESR
Настройка dhcp-сервера
dhcp-сервер вместе с сетевыми реквизитами дополнительно отдает опций "tftp-server-name", "bootfile-name", с целью сообщить ЕСР параметры подключения к tftp-серверу и имя файла конфигурации, который необходимо загрузить и применить
В примерах для связи ESR и компьютера (под управлением ОС на базе Linux) использована подсеть 192.168.2.0/24, где сервисы tftp-сервер и dhcp-сервер запущены на компьютере с IP адресом 192.168.2.1, а ESR получает IP-адрес из диапозона: 192.168.2.10-192.168.2.50
Установка dhcp-сервера:
sudo apt install -y isc-dhcp-server
Правка файла-конфигурации:
nano /etc/dhcp/dhcpd.conf
/etc/dhcp/dhcpd.conf
- subnet168.2.0 netmask 255.255.255.0 {
- range 192.168.2.10 192.168.2.50;
- option bootfile-name "autoboot.conf";
- option tftp-server-name "192.168.2.1";
- }
Запуск сервиса:
sudo systemctl enable isc-dhcp-server
sudo systemctl restart isc-dhcp-server
Настройка tftp-сервера
Установка сервиса tftp-сервер
sudo apt install tftpd-hpa -y
Внесение изменения в файл настройки tftp-сервера
sudo nano /etc/default/tftpd-hpa
/etc/default/tftpd-hpa
- TFTP_USERNAME="tftp"
- TFTP_DIRECTORY="/srv/tftp"
- TFTP_ADDRESS=":69"
- TFTP_OPTIONS="--ipv4 --secure --create"
Создание папки, из которой tftp-сервер будет отдавать файлы по протоколу tftp
sudo mkdir /srv/tftp
sudo chown tftp:tftp /srv/tftp
Перезапуск сервиса для применения настроек
/etc/init.d/tftpd-hpa restart
Положить в папку для отдачи файлов по tftp-протоколу файл "autoboot.conf" с конфигурацией, которая будет передаваться для применения на ESR
Проверка, что файл лежит в папке:
cat /srv/tftp/autoboot.conf
#!/usr/bin/clash
#19
#1.12.0
#05/11/2020
#18:20:08
hostname esr-boot-usb
interface gigabitethernet 1/0/1
ip address 192.168.0.1/24
Источник:
docs.eltex-co.ru
esr(config)# key-chain auth_ospf
esr(config-keychain)# key 1
esr(config-keychain-key)# key-string ascii-text password
Дополняем конфигурацию на необходимом интерфейсе:
esr(config)# interface gigabitethernet 1/0/1
esr(config-if-gi)# ip ospf authentication algorithm md5
esr(config-if-gi)# ip ospf authentication key-chain auth_ospf
Изменения конфигурации вступят в действие после применения:
esr# commit
Configuration has been successfully committed
esr# confirm
Configuration has been successfully confirmed
Источник:
docs.eltex-co.ru
Решение
1) При использовании route-map:
route-map OUT
rule 1
match ip address 172.16.10.0/24 le 32
action permit
exit
rule 2
action deny
exit
exit
Добавление фильтрации в конфигурацию процесса маршрутизации (для примера используется BGP):
router bgp 1
address-family ipv4
redistribute connected
neighbor 192.168.1.10
remote-as 2
route-map OUT out
update-source 192.168.1.1
enable
exit
enable
exit
exit
Для управления анонсами маршрутной информации рекомендуется использовать route-map.
2) При использовании prefix-list:
ip prefix-list OUT
permit 172.16.10.0/24 le 32
deny 0.0.0.0/0 ge 1 le 32
exit
Добавление фильтрации в конфигурацию процесса маршрутизации(для примера используется BGP)
router bgp 1
address-family ipv4
redistribute connected
neighbor 192.168.1.10
remote-as 2
prefix-list OUT out
update-source 192.168.1.1
enable
exit
enable
exit
exit
Задача №2
Необходимо разрешить анонс всех подсетей.
Важно! Для разрешения анонса маршрутной информации в протоколах EGP необходимо использовать механизмы фильтрации route-map либо prefix-list.
Решение
1) При использовании route-map:
route-map OUT
rule 1
action permit
exit
exit
Добавление фильтрации в конфигурацию процесса маршрутизации (для примера используется BGP):
router bgp 1
address-family ipv4
redistribute connected
neighbor 192.168.1.10
remote-as 2
route-map OUT out
update-source 192.168.1.1
enable
exit
enable
exit
exit
2) При использовании prefix-list:
ip prefix-list OUT
permit 0.0.0.0/0 ge 1 le 32
exit
Добавление фильтрации в конфигурацию процесса маршрутизации (для примера используется BGP)
router bgp 1
address-family ipv4
redistribute connected
neighbor 192.168.1.10
remote-as 2
prefix-list OUT out
update-source 192.168.1.1
enable
exit
enable
exit
exit
Источник:
docs.eltex-co.ru
Поскольку на маршрутизаторах серии ESR используется Stateful Firewall, то при переключении мастерства активные сессий будут разрываться.
Одноко, если VRRP Buckup будет знать об активных сессиях VRRP Master и автоматически поднимет сессии при переходе в состояние VRRP Master, то разрыва сессий не произойдет.
Для организации отказоустойчивой работы необходимо настроить механизм Firewall failover, рассмотрим на примере вышеприведенной схемы:
################################ R1 ######################################
hostname R1
object-group service FAILOVER
port-range 3333
exit
object-group network OWN_IP
ip address-range 192.168.1.148
exit
ip firewall failover sync-type unicast
ip firewall failover source-address 192.168.1.148
ip firewall failover destination-address 192.168.1.250
ip firewall failover port 3333
ip firewall failover vrrp-group 1
ip firewall failover
security zone trust
exit
interface gigabitethernet 1/0/5.50
security-zone trust
ip address 192.168.1.148/24
vrrp id 1
vrrp ip 192.168.1.1/32
vrrp priority 125
vrrp group 1
vrrp
exit
security zone-pair trust self
rule 2
action permit
match protocol udp
match source-address any
match destination-address OWN_IP
match source-port any
match destination-port FAILOVER
enable
exit
rule 3
action permit
match protocol vrrp
match source-address any
match destination-address any
enable
exit
exit
################################ R2 ######################################
hostname R2
object-group service FAILOVER
port-range 3333
exit
object-group network OWN_IP
ip address-range 192.168.1.250
exit
ip firewall failover sync-type unicast
ip firewall failover source-address 192.168.1.250
ip firewall failover destination-address 192.168.1.148
ip firewall failover port 3333
ip firewall failover vrrp-group 1
ip firewall failover
security zone trust
exit
interface gigabitethernet 1/0/5.50
security-zone trust
ip address 192.168.1.250/24
vrrp id 1
vrrp ip 192.168.1.1/32
vrrp priority 100
vrrp group 1
vrrp
exit
security zone-pair trust self
rule 2
action permit
match protocol udp
match source-address any
match destination-address OWN_IP
match source-port any
match destination-port FAILOVER
enable
exit
rule 3
action permit
match protocol vrrp
match source-address any
match destination-address any
enable
exit
exit
Командой show ip firewall failover проверяем наличие обмена между VRRP нодами:
R1# show vrrp
Virtual router Virtual IP Priority Preemption State
-------------- --------------------------------- -------- ---------- ------
1 192.168.1.1/32 125 Enabled Master
R1# show ip firewall failover
Communication interface: gigabitethernet 1/0/5.50
Status: Running
Bytes sent: 2944
Bytes received: 3584
Packets sent: 225
Packets received: 141
Send errors: 0
Receive errors: 0
R2# show vrrp
Virtual router Virtual IP Priority Preemption State
-------------- --------------------------------- -------- ---------- ------
1 192.168.1.1/32 100 Enabled Backup
R2# show ip firewall failover
Communication interface: gigabitethernet 1/0/5.50
Status: Running
Bytes sent: 1072
Bytes received: 500
Packets sent: 40
Packets received: 30
Send errors: 0
Receive errors: 0
Данный механизм поддержан для сервисных маршрутизаторов и для МЭ сертифицированных ФСТЭК по класс 4 тип А.
Источник:
docs.eltex-co.ru
- При подключении маршрутизатора к публичной сети крайне нежелательно открывать доступ до самого маршрутизатора из публичной сети. Если такая необходимость есть - SSH-сервер на маршрутизаторе необходимо запускать на нестандартном TCP-порту (не на 22м)
Для включения на маршрутизаторе SSH-сервера необходимо добавить в глобальную конфигурацию маршрутизатора следующую команду:
esr(config)# ip ssh server
Для запуска SSH-сервера на нестандартном порту, необходимо добавить в глобальную конфигурацию маршрутизатора следующую команду:
esr(config)# ip ssh port 65022
В данном примере, 65022 - номер TCP-порта на котором будет доступен протокол SSH.
По умолчанию на маршрутизаторе указан 22 TCP-порт, который является стандартным для протокола SSH.
- При организации доступа до маршрутизатора из публичной сети желательно ограничить список ip-адресов, которым разрешен доступ до маршрутизатора.
Для примера, на маршрутизаторе уже создан ip-интерфейс, подключенный к публичной сети, и он включен в зону безопасности WAN
esr(config)# security zone WAN
esr(config-zone)# exit
esr(config)# interface gigabitethernet 1/0/1
esr(config-if-gi)# security-zone WAN
esr(config-if-gi)# ip address 192.0.2.1/30
esr(config-if-gi)# exit
esr(config)# ip route 0.0.0.0/0 192.0.2.2
Для разрешения доступа к маршрутизатору из публичной сети с узлов 198.51.100.15 и 203.0.113.74 по протоколу SSH на порт 65022 необходимо применить следующую конфигурацию:
esr(config)# object-group service SSH
esr(config-object-group-service)# port-range 65022
esr(config-object-group-service)# exit
esr(config)#
esr(config)# object-group network REMOTE_SSH
esr(config-object-group-network)# ip address-range 198.51.100.15
esr(config-object-group-network)# ip address-range 203.0.113.74
esr(config-object-group-network)# exit
esr(config)# security zone-pair WAN self
esr(config-zone-pair)# rule 10
esr(config-zone-pair-rule)# action permit
esr(config-zone-pair-rule)# match protocol tcp
esr(config-zone-pair-rule)# match source-address REMOTE_SSH
esr(config-zone-pair-rule)# match destination-port SSH
esr(config-zone-pair-rule)# enable
esr(config-zone-pair-rule)# exit
esr(config-zone-pair)# exit
Любые изменения конфигурации на маршрутизаторах ESR всупают в силу только после выполнения команды commit и confirm в привеллигированном режиме.
esr# commit
esr# confirm
Источник:
docs.eltex-co.ru
Приступим к настройке маршрутизатора в офисе 1. Допустим, что уже имеется некоторая конфигурация:
vlan 100
exit
bridge 100
vlan 100
enable
exit
interface gigabitethernet 1/0/1
ip firewall disable
ip address 192.168.12.1/24
exit
interface gigabitethernet 1/0/2
mode switchport
switchport access vlan 100
exit
На интерфейсе bridge 100 терменируется vlan 100. Интерфейс gigabitethernet 1/0/1 - аплинк в сторону интернета/канала связи. Создадим GRE туннель и добавим его в соответствующий bridge-groupe.
tunnel gre 1
mode ethernet - включаем режим L2.
bridge-group 100
local address 192.168.12.1 - адрес интерфейса аплинка
remote address 192.168.12.2 - внешний адрес маршрутизатора офиса 2.
enable
exit
Теперь приступим к настройке Офиса 2. На нем уже есть конфигурация вида:
interface gigabitethernet 1/0/1
ip firewall disable
ip address 192.168.12.2/24
exit
Добавим Vlan 100 на интерфейс, который необходимо включить в этот Vlan и создадим соответствующий bridge:
vlan 100
exit
bridge 100
vlan 100
enable
exit
interface gigabitethernet 1/0/2
mode switchport
switchport access vlan 100
exit
Далее аналогичным офису 1 способом создаем туннель:
tunnel gre 1
mode ethernet
bridge-group 100
local address 192.168.12.2
remote address 192.168.12.1
enable
exit
Готово.
Источник:
docs.eltex-co.ru
Принцип конфигурирования:
- На ESR настраивается функционал BRAS с указанием параметров RADIUS-сервера с настройками абонентов и WEB-сервера содержащего списки разрешенных/запрещенных url.
- Для абонента BRAS, в настройках RADIUS описываются именf файлов содержащих разрешенные и запрещенные ресурсы.
- На WEB-сервере размещаются списки разрешенных/запрещенных url с именами, соответствующими настройкам в RADIUS.
Принцип работы функционала:
- При авторизации абонента на BRAS:
- ESR получает от RADIUS-сервера имена имена списков разрешенных/запрещенных url;
- Скачивает и применяет соответствующие списки разрешенных/запрещенных url для абонента.
- В момент, когда абонент BRAS запрашивает в интернете тот или иной ресурс, происходит проверка по примененным для него спискам разрешенных/запрещенных url.
Есть возможность составлять списки разрешенных/запрещенных url в формате regexp.
1) Конфигурация BRAS на ESR.
object-group url defaultserv
url https://eltex-co.ru/
exit
syslog console debug
username techsupport
password encrypted
$6$dArYxEkFjWgMtgf8$gtlzWm1YLBrFhqmVdzKu6B7CCBV4TPnYeDK6zCGF3.LuN2NNwFSPZCGatezKJolD4VzeqCKNpNdvOf7q3tF/I1
exit
aaa authentication login auth_test radius
radius-server host 192.168.0.1
key ascii-text encrypted 8CB5107EA7005AFF
source-address 192.168.0.10
exit
aaa radius-profile bras_radius
radius-server host 192.168.0.1
exit
aaa radius-profile bras_radius_servers
radius-server host 192.168.0.1
exit
das-server das
key ascii-text encrypted 8CB5107EA7005AFF
exit
aaa das-profile bras_das
das-server das
exit
line telnet
login authentication auth_test
exit
tech-support login enable
ystem fan-speed auto
vlan 10
exit
ip access-list extended BYPASS
rule 1
action permit
match protocol udp
match source-port 68
match destination-port 67
enable
exit
rule 2
action permit
match protocol udp
match destination-port 53
enable
exit
rule 3
exit
exit
ip access-list extended INTERNET
rule 1
action permit
enable
exit
exit
subscriber-control filters-server-url http://192.168.0.1:8000/ # запрос списков url с http/https сервера(web сервера)
subscriber-control
aaa das-profile bras_das
aaa sessions-radius-profile bras_radius
aaa services-radius-profile bras_radius_servers
nas-ip-address 192.168.0.10
session ip-authentication
bypass-traffic-acl BYPASS
default-service
class-map BYPASS
filter-name local defaultserv
filter-action permit
default-action redirect https://eltex-co.ru/
session-timeout 121
exit
enable
exit
bridge 10
description LocalNetwork
vlan 10
ip firewall disable
ip address 172.16.0.1/24
ip helper-address 192.168.16.1
service-subscriber-control any
location USER
enable
exit
interface gigabitethernet 1/0/1
description to_FreeRadius
ip firewall disable
ip address 192.168.0.10/24
exit
interface gigabitethernet 1/0/3.10
bridge-group 10
ip firewall disable
exit
interface gigabitethernet 1/0/4
description WAN
ip firewall disable
ip address <ipaddr>
exit
security passwords history 0
nat source
ruleset factory
to interface gigabitethernet 1/0/4
rule 10
description "replace 'source ip'by outgoing interface ip address"
action source-nat interface
enable
exit
exit
exit
ip route 0.0.0.0/0 <>
Диагностика:
esr-1200# show subscriber-control sessions status
Session id User name IP address MAC address Interface Domain
-------------------- --------------- --------------- ----------------- ------------------ ---------------
1224979098644774945 Bras_user 172.16.0.20 a8:f9:4b:ac:9f:33 gi1/0/3.10 --
1224979098644774944 Bras_user_2 172.16.0.10 a8:f9:4b:ab:a9:ae gi1/0/3.10 --
esr-1200# show subscriber-control services status
ervice id Session id Service name User name Quota volume Quota time
(Bytes) (Seconds)
-------------------- -------------------- --------------- --------------- -------------- --------------
1261007895663738900 1224979098644774935 A INTERNET Bras_user -- --
1261007895663738899 1224979098644774934 A INTERNETDY Bras_user_2 -- --
esr-1200# clear subscriber-control sessions
Включение debug:
esr-1200# debug
esr-1200(debug)# debug bras error
esr-1200(debug)# debug bras debug
esr-1200(debug)# debug bras coa
esr-1200(debug)# debug bras radius
esr-1200(debug)# debug bras radius-err
esr-1200(debug)# debug bras netlink
esr-1200(debug)# debug bras netlink-err
esr-1200(debug)# debug bras warn
esr-1200(debug)# end
2) Конфигурация freeradius:
freeradius/users:
"172.16.0.20" Cleartext-Password := "172.16.0.20"
User-Name = "Bras_user",
Session-Timeout = 259200,
Idle-Timeout = 259200,
Cisco-Account-Info = "AINTERNET" # INTERNET - название сервиса для клиента с ip 172.16.0.20
"172.16.0.10" Cleartext-Password := "172.16.0.10"
User-Name = "Bras_user_2",
Session-Timeout = 259200,
Idle-Timeout = 259200,
Cisco-Account-Info = "AINTERNETDY" # AINTERNETDY - название сервиса для клиента с ip 172.16.0.10
INTERNET Cleartext-Password := "INTERNET"
User-Name = "INTERNET",
Cisco-AVPair = "subscriber:traffic-class=INTERNET", #INTERNET - название acl на esr(bras)
Cisco-AVPair += "subscriber:filter-id=white;subscriber:filter-action=permit", # white - имя списка доступа url, разрешенных для данного сервиса(INTERNET)
Cisco-AVPair += "subscriber:filter-id=black;subscriber:filter-action=deny", # black - имя списка доступа url, запрещенных для данного сервиса(INTERNET)
Cisco-AVPair += "subscriber:flow-status=enabled"
INTERNETDY Cleartext-Password := "INTERNETDY"
User-Name = "INTERNETDY",
Cisco-AVPair = "subscriber:traffic-class=INTERNET", #INTERNET - название acl на esr(bras)
Cisco-AVPair += "subscriber:filter-id=white;subscriber:filter-action=permit", # white - имя списка доступа url, разрешенных для данного сервиса(INTERNETDY)
Cisco-AVPair += "subscriber:filter-id=black_2;subscriber:filter-action=deny", # black_2 - имя списка доступа url, запрещенных для данного сервиса(INTERNETDY)
Cisco-AVPair += "subscriber:flow-status=enabled"
freeradius/clients.conf:
client BRAS {
ipaddr = 192.168.0.10
secret = password
}
freeradius -X - запуск freeradius в режиме отладки
3) HTTP/HTTPS(WEB) сервер:
Запуск web сервера на Linux из деректории /Документы/http
root@comp:~/Документы/http# python3 -m http.server 8000
В директории /Документы/http хранятся списки доступа с именами black/black_2/white. URL в списках доступа рекомендуется хранить в формате regexp.
Источник:
docs.eltex-co.ru
Рассмотрим пример, в котором необходимо Хосту 1 запретить отправлять трафик ICMP, проходящий через ESR, то есть ESR выступает в качестве firewall, а также узла коммутации. В данном примере используется ESR-1000.
Конфигурация ESR:
esr-1000# sh ru
object-group network host_1
ip address-range 192.168.1.10
exit
system fan-speed auto
no spanning-tree
ecurity zone trusted
exit
bridge 1
ports firewall enable
security-zone trusted
enable
exit
interface gigabitethernet 1/0/23
mode hybrid
bridge-group 1
exit
interface gigabitethernet 1/0/24
mode hybrid
bridge-group 1
exit
security zone-pair trusted trusted
rule 1
action deny
match protocol icmp
match source-address host_1
enable
exit
rule 2
action permit
enable
exit
exit
В данной конфигурации блокируется протокол ICMP для ip пакетов, имеющих src ip 192.168.1.10.
Дамп трафика при запросе по ICMP Хоста 2 с Хоста 1:
esr-1000# monitor gigabitethernet 1/0/23 protocol icmp packets 4
17:37:18.952310 a8:f9:4b:ac:9f:32 > a8:f9:4b:aa:38:1c, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 64, id 11170, offset 0, flags [DF], proto ICMP (1), length 84)
192.168.1.10 > 192.168.1.20: ICMP echo request, id 77, seq 1, length 64
17:37:19.953428 a8:f9:4b:ac:9f:32 > a8:f9:4b:aa:38:1c, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 64, id 11270, offset 0, flags [DF], proto ICMP (1), length 84)
192.168.1.10 > 192.168.1.20: ICMP echo request, id 77, seq 2, length 64
17:37:20.954509 a8:f9:4b:ac:9f:32 > a8:f9:4b:aa:38:1c, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 64, id 11286, offset 0, flags [DF], proto ICMP (1), length 84)
192.168.1.10 > 192.168.1.20: ICMP echo request, id 77, seq 3, length 64
17:37:21.955584 a8:f9:4b:ac:9f:32 > a8:f9:4b:aa:38:1c, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 64, id 11370, offset 0, flags [DF], proto ICMP (1), length 84)
192.168.1.10 > 192.168.1.20: ICMP echo request, id 77, seq 4, length 64
В данном дампе трафика отсутствуют ICMP echo reply.
Дамп трафика при запросе по ICMP Хоста 1 с Хоста 2:
esr-1000# monitor gigabitethernet 1/0/24 protocol icmp packets 4
17:38:23.125035 a8:f9:4b:aa:38:1c > a8:f9:4b:ac:9f:32, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 64, id 3332, offset 0, flags [DF], proto ICMP (1), length 84)
192.168.1.20 > 192.168.1.10: ICMP echo request, id 32, seq 1, length 64
17:38:23.125467 a8:f9:4b:ac:9f:32 > a8:f9:4b:aa:38:1c, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 64, id 14488, offset 0, flags [none], proto ICMP (1), length 84)
192.168.1.10 > 192.168.1.20: ICMP echo reply, id 32, seq 1, length 64
17:38:24.126133 a8:f9:4b:aa:38:1c > a8:f9:4b:ac:9f:32, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 64, id 3383, offset 0, flags [DF], proto ICMP (1), length 84)
192.168.1.20 > 192.168.1.10: ICMP echo request, id 32, seq 2, length 64
17:38:24.126536 a8:f9:4b:ac:9f:32 > a8:f9:4b:aa:38:1c, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 64, id 14560, offset 0, flags [none], proto ICMP (1), length 84)
192.168.1.10 > 192.168.1.20: ICMP echo reply, id 32, seq 2, length 64
Источник:
docs.eltex-co.ru
option rfc3442-classless-routes
8, 10, 192,168,1,1,
16, 192,168, 192,168,1,1,
12, 172,16, 192,168,1,1,
24, 192,168,200, 192,168,1,1;
- Необходимо перевести в hex payload опции, для этого воспользуемся скриптом:
# cat hex.py
def hex_encode(route):
return b"".join([b"%02x" % octet for octet in route])
routes = [
(
# Paylod:
8, 10, 192,168,1,1,
16, 192,168, 192,168,1,1,
12, 172,16, 192,168,1,1,
24, 192,168,200, 192,168,1,1
# end.
)
]
print(b"".join(hex_encode(route) for route in routes))
- Получим байты нагрузки:
# python hex.py
080ac0a8010110c0a8c0a801010cac10c0a8010118c0a8c8c0a80101
- Сконфигурируем опцию на сервере (Начинаем с "0x" и далее байты, полученные в п.2):
sh ru dhcp:
ip dhcp-server pool la
option 121 hex-bytes 0x080ac0a8010110c0a8c0a801010cac10c0a8010118c0a8c8c0a80101
В дампе можно посмотреть содержимое передаваемой опции:
Classless-Static-Route Option 121, length 28: (10.0.0.0/8:192.168.1.1),(192.168.0.0/16:192.168.1.1),(172.16.0.0/12:192.168.1.1),(192.168.200.0/24:192.168.1.1)
На DHCP клиенте:
D * 10.0.0.0/8 [1/0] via 192.168.1.1 [static 03:03:31]
D * 192.168.0.0/16 [1/0] via 192.168.1.1 [static 03:03:31]
D * 192.168.200.0/24 [1/0] via 192.168.1.1 [static 03:03:31]
D * 172.16.0.0/12 [1/0] via 192.168.1.1 static 03:03:31]
Перевод в шеснадцатиричную систему можно выполнить и в ручном режиме, но запись в CLI необходимо начинать с "0x"
Источник:
docs.eltex-co.ru
Список доступных функциональных лицензий ESR
На данный момент для линейки сервисных маршрутизаторов ESR представлены следующие функциональные лицензии:
- BRAS -
- BRAS-DEMO -
- WIFI -
- WIFI DEMO -
- WISLA - лицензия активирует возможность конфигурирования IP SLA тестов в режиме wisla.
- IPS - лицензия открывает доступ к командам настройки системы IDS/IPS.
- IPS-DEMO - лицензия открывает доступ к командам настройки системы IDS/IPS с ограничением производительности (система IDS/IPS будет работать на одном ядре процессора).
- AS DEMO - лицензия открывает доступ к командам настройки системы Antispam.
Поддержка функциональных лицензий на различных моделях ESR
Доступность вышеописанных лицензий на различных моделях линейки сервисных маршрутизаторов ESR представлена ниже в виде таблицы:
|
BRAS-DEMO |
BRAS |
Wi-Fi DEMO |
Wi-Fi |
WISLA |
IPS-DEMO |
IPS |
AS DEMO |
---|---|---|---|---|---|---|---|---|
ESR-10 |
+ | + | + | + | + | + | ||
ESR-12V(F) |
+ | + | + | + | + | + | ||
ESR-20 |
+ | + | + | + | + | + | ||
ESR-21 |
+ | + | + | + | + | + | ||
ESR-100 |
+ | + | + | + | + | + | ||
ESR-200 |
+ | + | + | + | + | + | ||
ESR-1000 |
+ | + | + | + | + | + | + | + |
ESR-1200 |
+ | + | + | + | + | + | + | + |
ESR-1500 |
+ | + | + | + | + | + | + | + |
ESR-1511 | + | + | + | + | + | + | + | + |
ESR-1700 |
+ | + | + | + | + | + | + | + |
ESR-3100 | + | + | + | + | + | + | + | + |
Процедура применения лицензии на ESR
Для применения лицензии на сервисном маршрутизаторе ESR файл с лицензией требуется загрузить на ESR в раздел system:license с помощью команды copy. Поддержана загрузка по сети по протоколам FTP, TFTP, SFTP, SCP, HTTP, а также загрузка с USB и MMC носителя:
esr# copy tftp://192.168.34.2:/licence system:licence
|******************************************| 100% (672B) Licence loaded successfully. Please reboot system to apply changes.
esr-1200#
После этого добавленную лицензию будет видно в выводе команды show licence:
esr# show licence
Active licence not found!
After reboot:
-------------------
Name: Eltex
Version: 1.0
Type: ESR-1200
S/N: NP0C000022
MAC: A8:F9:4B:AB:D7:00
Features:
IPS - Intrusion Prevention System
esr#
esr#
Для активации загруженной лицензии требуется перезагрузка устройства. После перезагрузки лицензия станет активной:
esr# show licence
Licence information
-------------------
Name: Eltex
Version: 1.0
Type: ESR-1200
S/N: NP0C000022
MAC: A8:F9:4B:AB:D7:00
Features:
IPS - Intrusion Prevention System
esr#
esr#
На сервисных маршрутизаторах ESR загружаемая лицензия затирает уже активную лицензию! В случае, если в загружаемой лицензии отсутствует функционал, который был в уже активной лицензии, то после перезагрузки этот функционал перестанет работать:
esr# show licence
Licence information
-------------------
Name: Eltex
Version: 1.0
Type: ESR-1200
S/N: NP0C000022
MAC: A8:F9:4B:AB:D7:00
Features:
WIFI - Wi-Fi controller
After reboot:
------------------
Name: Eltex
Version: 1.0
Type: ESR-1200
S/N: NP0C000022
MAC: A8:F9:4B:AB:D7:00
Features:
IPS - Intrusion Prevention System
esr-1200#
В примере выше после перезагрузки устройства будет заблокирован доступ к функционалу под лицензией WIFI и все текущие настройки в конфигурации, связанные с Wi-Fi, перестанут быть активными.
Таким образом в случае расширения списка доступного функционала, при обращении в техническую поддержку или коммерческий отдел компании "Eltex" необходимо сообщать информацию о списке уже активных лицензий, чтобы новый лицензионный файл уже содержал используемые функциональные лицензии.
Источник:
docs.eltex-co.ru
Для поддержания сессии в активном состоянии необходимо настроить передачу keepalive пакетов. Опция отправки keepalive настраивается в клиенте SSH, например для клиента PuTTY раздел “Соединение”.
В свою очередь, на маршрутизаторе можно выставить время ожидания до закрытия активных сессий TCP (в примере выставлен 1 час):
esr(config)# ip firewall sessions tcp-estabilished-timeout 3600
Изменения конфигурации вступают в действие после применения:
esr# commit
Configuration has been successfully committed
esr# confirm
Configuration has been successfully confirmed
Размер таблиц активных и конкурирующих сессий можно настраивать:
esr(config)# ip firewall sessions max-expect
1-8553600 Size of expectation table
esr(config)# ip firewall sessions max-tracking
1-8553600 Size of connection tracking table
Источник:
docs.eltex-co.ru
Данной командой включается режим приёма широковещательных сообщений от NTP-серверов.
Маршрутизатор работает в качестве NTP-клиента. Если в конфигурации устройства заданы NTP пиры и серверы, то в широковещательном режиме они игнорируются.
Соответственно, при указании NTP сервера дата и время не обновится.
ntp enable
ntp server 115.0.0.2
exit
Для устранения проблемы необходимо удалить ntp broadcast-client из конфигурации:
no ntp broadcast-client enable
esr# commit
Configuration has been successfully committed
esr# confirm
Configuration has been successfully confirmed
Необходимо не забывать, что источник синхронизации должен быть достаточно стабильным с небольшим stratum (1-3).
Источник:
docs.eltex-co.ru
Решение:
Необходимо выделить ресурс RIB для VRF, по умолчанию весь RIB выделен под global таблицу маршрутизации.
Делаем это в режиме конфигурирования VRF:
esr(config)# ip vrf <NAME>
esr(config-vrf)# ip protocols ospf max-routes 12000
esr(config-vrf)# ip protocols bgp max-routes 1200000
esr(config-vrf)# end
Изменения конфигурации вступают в действие после применения:
esr# commit
Configuration has been successfully committed
esr# confirm
Configuration has been successfully confirmed
Источник:
docs.eltex-co.ru
1) Для ОС Windows cкачаем с официального сайта дистрибутив клиента. Для ОС Linux устанавливаем пакет из репозитория разработчика дистрибутива.
Далее все примеры команд будут приведены для OC Windows, пути расположения файлов будут отличаться в зависимости от особенностей конкретного дистрибутива, информацию о расположении можно получить из соответствующих man страниц.
2) Устанавливаем программу. Нажимаем кнопку "Customize" и выбираем установку компонента.
EasyRSA Certificate Management Scripts (специально созданная программа по созданию ключей и сертификатов, которая использует openssl для выполнения действий с ключами и сертификатами) она нам понадобится для генерации ключей и сертификатов.
3) Указываем путь. В будущем он нам понадобится, поэтому запомните его. В нашем случае мы используем стандартный путь: C:\Program Files\OpenVPN.
4) После установки заходим в C:\Program files\OpenVPN\easy-rsa (путь, который указали в п. 3 \easy-rsa).
Открываем vars.example блокнотом и редактируем его (блокнот надо запустить с правами администратора, чтобы иметь права на запись в папку).
Редактируем строки
#set_var EASYRSA_REQ_COUNTRY "US"
#set_var EASYRSA_REQ_PROVINCE "California"
#set_var EASYRSA_REQ_CITY "San Francisco"
#set_var EASYRSA_REQ_ORG "Copyleft Certificate Co"
#set_var EASYRSA_REQ_EMAIL "me@example.net"
#set_var EASYRSA_REQ_OU "My Organizational Unit"
#set_var EASYRSA_CA_EXPIRE 3650
#set_var EASYRSA_CERT_EXPIRE 825
Убираем знак комментария в начале (#) и задаём требуемые значения:
- страна
- регион
- город
- организация
- почта администратора
- подразделение
- время действия корневого и пользовательских сертификатов в днях
Строку #set_var EASYRSA_OPENSSL приводим к виду:
set_var EASYRSA_OPENSSL "..bin/openssl.exe"
Сохраняем файл как vars (без расширения!).
5) Запускаем командную строку от имени администратора, не закрываем окно до конца процесса генерации сертификатов.
6) Поочерёдно выполняем следующие три команды
cd: C:\Program files\OpenVPN\easy-rsa (путь, который указали в п. 3 \easy-rsa).
EasyRSA-Start.bat
В итоге мы должны увидеть вот такое окно:
7) Инициализируем pki командой ./easyrsa init-pki
8) Генерируем ключ Диффи Хельмана - команда ./easyrsa gen-dh
Генерация займёт некоторое время. Дождитесь окончания.
9) Генерируем ключ центра сертификации (CA) - ./easyrsa build-ca nopass
На запросы ввода пароля
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
придумываем и запоминаем пароль, затем вводим его. На запрос
Common Name (eg: your user, host, or server name) [Easy-RSA CA]:
вводим enter
10) Генерируем сертификат сервера - команда ./easyrsa build-server-full ESR nopass
На запросы
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
придумываем и вводим пароль от сертификата, а на запрос
Enter pass phrase for c:/Program Files/OpenVPN/easy-rsa/pki/private/ca.key:
вводим пароль, использованный при генерации СА сертификата. При успешно выполнении увидим текст вида:
Write out database with 1 new entries
Data Base Updated
11) Генерируем сертификат клиента ./easyrsa build-client-full Alli nopass
Тут важно отметить, что имя сертификата (Alli в данном примере) должно совпадать с именем соответствующего пользователя в настройках OpenVPN сервера на ESR. Ответы на вопросы аналогичны предыдущему пункту. Если пользователей несколько - надо генерировать несколько клиентских сертификатов.
12) Выходим из оболочкие EasyRSA командой exit
Генерируем ключ для tls аутентификации:
..\bin\openvpn.exe --genkey secret ta.key
13) Генерация сертификатов окончена.
Сертификат СА.crt, ключ Диффи Хельмана dh.pem будут находиться в папке C:\Program files\OpenVPN\easy-rsa\pki. Сертификаты сервера и клиентов будут в папке C:\Program Files\OpenVPN\easy-rsa\pki\issued. А ключи - в папке C:\Program Files\OpenVPN\easy-rsa\pki\private. Ключ tls-auth ta.key в папке C:\Program Files\OpenVPN\easy-rsa.
14) Переходим к настройке ESR.
Загрузим сертификаты в маршрутизатор. Для этого воспользуемся TFTP сервером (также можно загружать сертификаты и через FTP/SCP либо USB/SD, 192.168.16.10 в данном примере—адрес АРМ с tftp сервером).
esr-200# copy tftp://192.168.16.10:/ca.crt certificate:ca/ca.crt
esr-200# copy tftp://192.168.16.10:/dh.pem certificate:dh/dh.pem
esr-200# copy tftp://192.168.16.10:/ESR.key certificate:server-key/ESR.key
esr-200# copy tftp://192.168.16.10:/ESR.crt certificate:server-crt/ESR.crt
esr-200# copy tftp://192.168.16.10:/ta.key certificate:ta/ta.key
Проверить, что загрузка прошла успешно можно командой
esr-200# sh crypto certificates
Type Total
------------ -------
ca 1
dh 1
server-key 2
server-crt 1
client-key 1
client-crt 1
ta 1
crl 0
Далее выполняем настройку:
esr-200# config
esr-200(config)# remote-access openvpn GenOffice // Создаем сервер и даем ему имя
esr-200(config-openvpn-server)# network 10.10.100.0/24 // Определяем сеть из которой будут выделяться адреса клиентам
esr-200(config-openvpn-server)# protocol tcp // Выбираем протокол по которому будет работать сервер (tcp/udp)
esr-200(config-openvpn-server)# tunnel ip // Выбираем на каком уровне будет работать (l2 ethetnet/l3 ip)
esr-200(config-openvpn-server)# encryption algorithm aes128 //Выбираем алгоритм шифрования
esr-200(config-openvpn-server)# authentication algorithm sha-256 //Алгоритм аутентификации
esr-200(config-openvpn-server)# certificate ca ca.crt //
esr-200(config-openvpn-server)# certificate dh dh.pem //
esr-200(config-openvpn-server)# certificate server-key ESR.key //Указываем загруженные ранее сертификаты
esr-200(config-openvpn-server)# certificate server-crt ESR.crt //
esr-200(config-openvpn-server)# certificate ta ta.key //
esr-200(config-openvpn-server)# security-zone trusted // Указываем зону безопасности
esr-200(config-openvpn-server)# route 192.168.1.0/24, 192.168.3.0/24
// Добавляем маршруты к сетям, которые будут доступны клиентам через удалённое соединение
esr-200(config-openvpn-server)# enable // Включаем сервер
Предположим что клиенту необходимо дать статический IP. Тогда для данного клиента (в примере используется имя сертификата Alli) необходимо произвести следующие настройки:
esr-200(config-openvpn-server)# username Alli
esr-200(config-openvpn-user)# ip address 10.10.100.202
esr-200(config-openvpn-user)# exit
Также, можно указать какую-либо удалённую сеть, находящуюся «за» удалённым клиентом, это делается командой:
esr-200(config-openvpn-user)# subnet 192.168.3.0/24
Даже если никаких специфических настроек для клиента не требуется, его всё равно необходимо завести в настройках сервера!
esr-200(config-openvpn-server)# username Alli
esr-200(config-openvpn-user)# exit
Если необходимо, что бы несколько клиентов подключались через один сертификат, то используем опцию duplicate-cn в настройках сервера:
esr-200(config-openvpn-server)# duplicate-cn
esr-200(config-openvpn-server)# exit
В случае, если на внешнем интерфейсе используется межсетевой экран, необходимо разрешить прохождение трафика из зоны внешнего интерфейса (пусть это будет untrusted) к зоне self, в нашем примере - протокол tcp и порт по умолчанию 1194:
esr-200(config)# object-group service OpenVPN
esr-200(config-object-group-service)# port-range 1194
esr-200(config-object-group-service)# exit
esr-200(config)# security zone-pair untrusted self
esr-200(config-zone-pair)# rule 100
esr-200(config-zone-pair-rule)# action permit
esr-200(config-zone-pair-rule)# match protocol tcp
esr-200(config-zone-pair-rule)# match destination-port OpenVPN
esr-200(config-zone-pair-rule)# enable
esr-200(config-zone-pair-rule)# end
esr-200# commit
esr-200# confirm
Для настройки клиента надо поместить файлы ca.crt, ta.key, и сертификат/ключ пользователя (в нашем примере Alli.crt, Alli.key) в папку OpenVPN\config\client, которая в windows по умолчанию находится в домашней папке пользователя (например для пользователя 123 путь будет C:\Users\123\OpenVPN\config\client) и создать там конфигурационный файл, например ESR-200.ovpn следующего содержания (в строчке remote X.X.X.X заменить на реальный адрес ESR:
client
dev tun
proto tcp
remote X.X.X.X
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
remote-cert-tls server
tls-auth ta.key 1
data-ciphers-fallback AES-128-CBC
data-ciphers AES-128-CBC
auth SHA256
cert Alli.crt
key Alli.key
После сохранения файла настроек в доке панели задач Windows найти значок OpenVPN, щёлкнув правой кнопкой мышки, выбрать нужный сервер (по имени конфигурационного файла, ESR-200 в нашем примере) и нажать подключиться.
Для настройки openvpn клиента на мобильных устройствах, например iOS, надо скачать клиента из AppStore, а конфигурационный файл привести к так называемому унифицированному формату, добавив в конец строки
<ca>
##
</ca>
<cert>
####
</cert>
<key>
####
</key>
key-direction 1
<tls-auth>
###
</tls-auth>
вставив вместо ### содержимое соответствующих сертификатов - ca.crt, Alli.crt, Alli.key, ta.key в нашем примере.
Также необходимо закомментировать (или убрать) строки с указанием сертификатов:
ca ca.crt
cert Alli.crt
key Alli.key
tls-auth ta.key 1
После этого, полученный файл надо передать на мобильное устройство (проще всего как почтовое вложение, или через iTunes) и открыть установленным OpenVPN клиентом.
Унифицированный формат файла можно использовать и для конфигурации настольного клиента.
На маршрутизаторе проверить, что клиент успешно подключен можно командой:
esr-200# sh remote-access status
User IP-address Server
---------------- --------------- --------------------------------------
Alli 192.168.86.2 openvpn(TulOffice)
Обновление ESR FSTEC
>> X-Loader update FAILED!
Такая ошибка иногда возникает при обновлении ESR через SD-карту.
Тогда для обновления нужно использовать TPTP-сервер.
Пошаговая инструкция по обновлению:
1. К ESR подключить только линк к ПК c tftp-сервером (можно через коммутируемую сеть но на МЭ должен быть активен только один линк).
2. В рабочую папку tftp-сервера поместить необходимые для обновления файлы (esr200-1.5.4-build42.FSTEC.uboot, esr200-1.5.4-build42.FSTEC.xload, esr200-1.5.5-build4.FSTEC.firmware)
3. В CLI uboot межсетевого экрана указать ip-адрес назначенный на ПК при помощи команды:
serverip <IP-адрес ПК>
4. В CLI uboot межсетевого экрана назначить межсетевому экрану ip-адрес (должен быть из той-же /24 ip-подсети, что и ПК)
ipaddr <ip-адрес ESR-FSTEC>
5. В CLI uboot межсетевого экрана проверить связность ESR-FSTEC и ПК
ping <IP-адрес ПК>
6. Загрузить необходимые файлы при помощи команды:
tftp_update_xloader esr200-1.5.4-build42.FSTEC.xload
tftp_update_uboot esr200-1.5.4-build42.FSTEC.uboot
tftp_update_firmware esr200-1.5.5-build4.FSTEC.firmware image1
tftp_update_firmware esr200-1.5.5-build4.FSTEC.firmware image2
7. Перезагрузить межсетевой экран (ESR)
reset
Будьте первым!