AAA-авторизация через RADIUS
Маршрутизаторы серии ME поддерживают функции аутентификации и авторизации через внешние сервера RADIUS и TACACS+, а также учет сессий TACACS+.
Настройка разделена на 3 этапа:
- Конфигурация сервера.
- Авторизация через RADIUS — AAA.
- Line.
1. Для начала работы с RADIUS-/TACACS-сервером указывается его адрес (при необходимости также указывается vrf):
(config)# radius-server host 192.168.16.55 vrf mgmt-intf
2. Задается IP-адрес, который будет использоваться для отправки пакетов на RADIUS-сервер:
(config-host)# source-address 192.168.17.208
3. Указывается пароль для доступа к RADIUS-серверу:
(config-host)# password ARBUZ
Пароль хранится в конфигурации в зашифрованном виде.
4. Если в сети используется несколько серверов, можно задать им приоритеты:
(config-host)# priority 5000
5. Указываются глобальные параметры: время ожидания ответа RADIUS-сервера и количество попыток обращения к нему:
(config)# radius-server timeout 5 (config)# radius-server retransmit 5
Также есть возможность настроить timeout индивидуально для каждого сервера.
В данном случае финальный вариант будет выглядеть следующим образом:
radius-server host 192.168.16.55 vrf mgmt-intf password encrypted BD8621588A priority 5000 source-address 192.168.17.208 exit radius-server timeout 5 radius-server retransmit 5
Настройка методов аутентификации для будущего списка «RADIUS»
В категории method реализовано 4 параметра аутентификации:
(config)# aaa authentication login RADIUS (config-login)# method Login method Set login method ldap Authentication via LDAP server local Local authentication radius Authentication via RADIUS server tacacs Authentication via TACACS server
Для примера будем использовать следующие методы:
aaa authentication login RADIUS method radius method local exit
Данная конфигурация означает, что если RADIUS-сервер не ответит в течение заданных интервалов (timeout и retransmit), аутентификация будет выполнена на основе локальной базы пользователей маршрутизатора.
Опция aaa accounting login позволяет отправлять на RADIUS-сервер информацию о событиях входа и выхода пользователей:
(config)# aaa accounting login start-stop radius
Следующим шагом настраивается аутентификация входа пользователей при подключении по Telnet/SSH/console через ранее созданный список «RADIUS». Также устанавливается автоматическое закрытие сессии после 5 минут неактивности пользователя:
(config)# line telnet login authentication RADIUS (config)# line telnet session-timeout 5
Защита плоскости управления (Control-Plane и Punt Shapers)
Для защиты маршрутизатора на уровне Control-Plane предусмотрено 2 механизма защиты:
- Блокировка сервисного трафика с помощью конфигурации Control-Plane.
- Ограничение полосы пропускания для сервисного трафика с помощью Punt Shapers.
Control-Plane
С помощью Control-Plane можно полностью заблокировать доступ к маршрутизатору на определённых интерфейсах или для определённого хоста или подсети.
По умолчанию блок Control Plane отсутствует в конфигурации маршрутизатора, а все подключения разрешены.
Для того чтобы создать блок, необходимо воспользоваться командой:
0/ME5200:R5(config)# control-plane [inband\out-of-band]
Конфигурация Control-Plane разбита на 2 логических блока: inband и out-of-band:
- inband — отвечает за работу Control-Plane в GRT и VRF.
- out-of-band — отвечает за работу Control-Plane на интерфейсах управления (mgmt).
Затем необходимо выбрать интерфейсы, на которые будут распространяться правила.
Для inband можно указать cледующие правила: bundle-ether, fortygigabitethernet, gigabitethernet, hundredgigabitethernet, tengigabitethernet, twentyfivegigabitethernet, а также сабинтерфейсы или «all» для того, чтобы правила распространялись на все интерфейсы.
Например:
0/ME5200:R5(config)# control-plane inband interface all 0/ME5200:R5(config)# control-plane out-of-band interface mgmt all
По умолчанию для каждого правила Control-Plane действием по умолчанию является «Запретить остальные соединения».
Добавим разрешающее правило командой allow [protocol]. Для выбора доступны: ftp, hhtp, icmp, icmpv6, netconf, ntp, snmp, ssh, telnet, tftp, tcp/udp + port , а также any для того, чтобы разрешить все протоколы.
0/ME5200:R5(config)# control-plane inband interface all allow icmp
Для того чтобы разрешить протокол для всех хостов, необходимо добавить команду any. Для того чтобы разрешить протокол для определённых хостов, необходимо указать «peer» – address A.B.C.D, A.B.C.D/N или address-range A.B.C.D-A.B.C.D.
Пример OOB-правила:
control-plane out-of-band interface mgmt all <--- Правило для всех интерфейсов управления
allow icmp <--- Разрешим ICMP-Echo для хостов 192.168.0.254 и 192.168.1.254
peer-list example
icmp echo
exit
peer example_peer
source
address 192.168.16.25
exit
peer example_peer2
source
address 192.168.16.25
exit
exit
exit
exit
allow snmp
peer-list example
peer example_peer
source
address-range 192.168.0.128-192.168.0.254 <---Разрешим SNMP диапазону адресов 192.168.0.128-192.168.0.254
exit
exit
exit
exit
allow ssh <---Разрешим SSH для подсети 192.168.0.0/24
peer-list example
peer example_peer
source
address 192.168.0.0/24
exit
exit
exit
exit
allow telnet <---Разрешим Telnet для подсети 192.168.1.0/24
peer-list example
peer example_peer
source
address 192.168.1.0/24
exit
exit
exit
exit
policy drop <--- Пакеты, попавшие под запрещающее правило, будут отброшены
exit
Начиная с версии ПО 3.9.7 поддержана фильтрация ICMPv4/v6 без указания типа пакета, т. е. icmp all.
Для inband-интерфейсов создадим следующее правило:
- На всех интерфейсах разрешим работу всех протоколов для подсети 172.20.20.0/24
- На всех интерфейсах разрешим ICMP-ECHO для подсети 10.0.0.0/8
- На интерфейсах te0/0/1-te0/0/5 разрешим работу всех протоколов для подсети 172.16.0.0/16
Пример inband-правила:
control-plane inband interface all
allow all
peer-list example
peer example_peer
source
address 172.20.20.0/24
exit
exit
exit
allow icmp
peer-list example
icmp echo
exit
peer example_peer
source
address 10.0.0.0/8
exit
exit
exit
exit
control-plane inband interface tengigabitethernet 0/0/1
allow all
peer-list example
peer example_peer
source
address 172.16.0.0/16
exit
exit
exit
exit
control-plane inband interface tengigabitethernet 0/0/2
allow all
peer-list example
peer example_peer
source
address 172.16.0.0/16
exit
exit
exit
exit
control-plane inband interface tengigabitethernet 0/0/3
allow all
peer-list example
peer example_peer
source
address 172.16.0.0/16
exit
exit
exit
exit
control-plane inband interface tengigabitethernet 0/0/4
allow all
peer-list example
peer example_peer
source
address 172.16.0.0/16
exit
exit
exit
exit
Несмотря на то, что в Control-Plane есть возможность ограничивать работу определённых TCP/UDP-портов, ограничить работу некоторых протоколов не получится.
Например, подобное правило не сможет ограничить протокол для cконфигурированных BGP neighbors:
control-plane inband interface all
allow tcp 179 <----- Порт протокола BGP
peer-list example
peer example_peer
source
address 10.0.0.0/8
exit
exit
exit
exit
В том числе, начиная с ПО 3.9.1, с помощью Control-Plane можно ограничить работу следующих протоколов:
OSPF IGMP PIM VRRP RSVP LDP BFD
Punt Shapers
С помощью Punt Shapers можно ограничить полосу пропускания для определенного вида сервисного трафика.
Control-Plane, в отличие от Punt Shapers, предварительно сконфигурирован и изначально имеет оптимальную конфигурацию для большинства сценариев использования.
Посмотреть текущее состояние и конфигурацию Punt Shapers можно с помощью команды show system punt shapers
0/ME5200:R5# show system punt shapers Wed Jan 24 07:24:50 2024 Location 0/0 Type Default (kbps) Configured (kbps) Hardware (kbps) Current load (kbps) Current load (pps) ----------------- --------------- ------------------ ---------------- -------------------- ------------------- arp-ndp 20000 20000 20001 0.000 0 bfd 10000 10000 10001 0.000 0 dhcp 50000 50000 50001 0.000 0 ip-connected 20000 20000 20001 0.000 0 ip-frag 10000 10000 10001 0.000 0 ip-local 200000 200000 200001 0.000 0 ip-mcast 20000 20000 20001 0.000 0 ip-mcast-proto 50000 50000 50001 0.000 0 ip-options 1000 1000 1001 0.000 0 ip-ttl 1000 1000 1001 0.000 0 isis 50000 50000 50001 0.000 0 lacp 1000 1000 1001 0.000 0 lldp 1000 1000 1001 0.000 0 mac-learning 50000 50000 50001 0.000 0 mpls-oam 5000 5000 5001 0.000 0 netflow 200000 200000 200001 0.000 0 ospf 50000 50000 50001 13.872 17 other 1000 1000 1001 0.000 0 pim 20000 20000 20001 0.000 0 rip 50000 50000 50001 0.000 0 stp 5000 5000 5001 0.000 0 udld 10000 10000 10001 0.000 0 vrrp 20000 20000 20001 0.000 0 ---------------- -------------- ----------------- --------------- ------------------- ------------------ common 1000000 1000000 1012500 0.000 0
Изменить конфигурацию Punt Shapers можно в блоке system punt rate-limit с помощью команды flow
Для примера запретим работу multicast и ospf, ограничив их полосу пропускания до 0:
0/ME5200:R5(config)# system punt rate-limit 0/ME5200:R5(config-rate-limit)# flow ip-mcast rate 0 0/ME5200:R5(config-rate-limit)# flow ip-mcast-proto rate 0 0/ME5200:R5(config-rate-limit)# flow ospf rate 0
0/ME5200:R5(config-rate-limit)# do show system punt shapers Thu Jan 25 04:31:17 2024 Location 0/0 Type Default (kbps) Configured (kbps) Hardware (kbps) Current load (kbps) Current load (pps) ----------------- --------------- ------------------ ---------------- -------------------- ------------------- arp-ndp 20000 20000 20000 0.000 0 bfd 10000 10000 10000 0.000 0 dhcp 50000 50000 50000 0.000 0 ip-connected 20000 20000 20000 0.000 0 ip-frag 10000 10000 10000 0.000 0 ip-local 200000 200000 200000 0.000 0 ip-mcast 20000 0 0 0.000 0 ip-mcast-proto 50000 0 0 0.000 0 ip-options 1000 1000 1002 0.000 0 ip-ttl 1000 1000 1002 0.000 0 isis 50000 50000 50000 0.000 0 lacp 1000 1000 1002 0.000 0 lldp 1000 1000 1002 0.000 0 mac-learning 50000 50000 50000 0.000 0 mpls-oam 5000 5000 5000 0.000 0 netflow 200000 200000 200000 0.000 0 ospf 50000 0 0 0.000 0 other 1000 1000 1002 0.000 0 pim 20000 20000 20000 0.000 0 rip 50000 50000 50000 0.000 0 stp 5000 5000 5000 0.000 0 udld 10000 10000 10000 0.000 0 vrrp 20000 20000 20000 0.000 0 ---------------- -------------- ----------------- --------------- ------------------- ------------------ common 1000000 1000000 1012500 0.000 0
Таким образом, можно ограничить работу тех протоколов, которые не позволяет ограничить Control-Plane.
Есть возможность расширить список протоколов с помощью добавления в конфигурацию маршрутизатора команды hw-module enable extended-punt и перезагрузки маршрутизатора.
0/ME5200:R5(config)# do show system punt shapers Thu Jan 25 04:47:44 2024 Location 0/0 Type Default (kbps) Configured (kbps) Hardware (kbps) Current load (kbps) Current load (pps) ----------------- --------------- ------------------ ---------------- -------------------- ------------------- arp-ndp 20000 20000 20000 0.000 0 bfd 10000 10000 10000 16.848 26 dhcp 50000 50000 50000 0.000 0 igmp 20000 20000 20000 0.000 0 ip-connected 20000 20000 20000 0.000 0 ip-frag 10000 10000 10000 0.000 0 ip-local 200000 200000 200000 0.000 0 ip-mcast 20000 0 0 0.000 0 ip-mcast-proto 50000 0 0 0.000 0 ip-options 1000 1000 1002 0.000 0 ip-ttl 1000 1000 1002 0.000 0 isis 50000 50000 50000 0.000 0 lacp 1000 1000 1002 0.000 0 ldp 10000 10000 10000 0.000 0 lldp 1000 1000 1002 0.000 0 mac-learning 50000 50000 50000 0.000 0 mpls-oam 5000 5000 5000 0.000 0 netflow 200000 200000 200000 0.000 0 ospf 50000 0 0 0.000 0 other 1000 1000 1002 0.000 0 pim 20000 20000 20000 0.000 0 rip 50000 50000 50000 0.000 0 stp 5000 5000 5000 0.000 0 udld 10000 10000 10000 0.000 0 vrrp 20000 20000 20000 0.000 0 ---------------- -------------- ----------------- --------------- ------------------- ------------------ common 1000000 1000000 1012500 16.848 26
Настройка ACL для трафика
ACL (Access Control List) — это механизм, используемый в сетевых технологиях для управления доступом к сетевым ресурсам.
IPv4
Создать ACL можно командой: ipv4 access-list [Name]. В качестве названия ACL можно использовать до 63 символов.
ipv4 access-list example <-----Название ACL
seq-num 1
action deny
source 192.168.0.0/16
exit
exitПо умолчанию ACL пропускает весь трафик.
На маршрутизаторах ME отсутствует возможность сконфигурировать description для всего ACL, но вы можете задать описание для каждого правила, используя remark.
ipv4 access-list example_2
seq-num 10
remark Allow_10.10.10.1 <-----Описание
source 10.10.10.1
exit
seq-num 100
action deny
remark Drop_All <-----Описание
exit
exitПосмотреть детальную информацию по ACL можно с помощью команды show ipv4 access-lists detailed:
0/ME5200#show ipv4 access-lists detailed
Tue Jan 17 05:06:00 2023
HW resources: 0/0 ipv4 acl entries <-----Указывает на количество активных правил ACL и распределённых аппаратных ресурсов. По умолчанию аппаратные ресурсы на ACL не выделены.
IPv4 access-list: example <-----Название ACL
Not configured on any interfaces <-----Отображает привязку ACL к конкретному интерфейсу
seq-num 1
action: deny
match: proto any, source 192.168.0.0/16, destination any
IPv4 access-list: example_2 <-----Название ACL
Not configured on any interfaces
seq-num 10, Allow_10.10.10.1 <-----Описание правила
action: permit
match: proto any, source 10.10.10.1, destination any
seq-num 100, Drop_All <-----Описание правила
action: deny
match: proto any, source any, destination anyAccess-list можно назначить на интерфейсы устройства только в направлении ingress. Пример:
interface tengigabitethernet 0/0/1 ipv4 access-group ingress example_2 ipv4 address 10.10.10.2/30 exit
Если назначить ACL на интерфейс, но не распределить аппаратные ресурсы, то правила также не будут работать, а маршрутизатор выдаст сообщение Exceed maximum hw resources.
Для работы ACL необходимо распределить аппаратные ресурсы маршрутизатора с помощью команды hw-module maximum ipv4 acl-entries [number]. Эта команда указывает на то, сколько правил ACL может быть активно на устройстве одновременно.
Приблизительно рассчитать необходимые ресурсы можно по формуле: «Количество правил в ACL * Количество интерфейсов, на которые этот ACL назначен».
Для примера: hw-module maximum ipv4 acl-entries 100
Все изменения в hw-module применяются после перезагрузки устройства. Подробно процесс описан в статье Распределение аппаратных ресурсов маршрутизаторов ME Базы знаний.
После распределения аппаратных ресурсов и перезагрузки устройства в выводе show ipv4 access-lists detailed отобразятся назначенные интерфейсы и занятые ресурсы:
ME5200:R5_10.0.0.1# show ipv4 access-lists detailed
Tue Jan 17 07:09:32 2023
HW resources: 5/100 ipv4 acl entries <----- Активно 5 правил из 100 распределённых
IPv4 access-list: example
Configured on interfaces:
te0/0/4 <----- ACL example назначен на интерфейс te0/0/4 и считается за одно активное правило
seq-num 1
action: deny
match: proto any, source 192.168.0.0/16, destination any
IPv4 access-list: example_2
Configured on interfaces:
te0/0/1 <----- ACL example_2 назначен на интерфейсы te0/0/1 и te0/0/20.77 и считается за четыре активных правила
te0/0/20.77
seq-num 10, Allow_10.10.10.1
action: permit
match: proto any, source 10.10.10.1, destination any
seq-num 100, Drop_All
action: deny
match: proto any, source any, destination anyВ версии 3.5.0 функционал ACL был значительно расширен.
IPv6
В качестве source и destination можно указывать:
- IPv6-адреса — (X:X:X:X::X);
- префиксы — (X:X:X:X::X/N);
- wildcard — (X:X::X/X:X::X).
access-list example_ipv6
seq-num 1
destination
ipv6 2001:db8::/32 <----- IPv6 Prefix
exit
protocol tcp
exit
seq-num 2
destination
ipv6 2001:db8::/32 <----- IPv6 Prefix
exit
protocol udp
exit
seq-num 3
destination
ipv6 2001::1:10:0:1:41/::ff:0:0 <----- IPv6 WildCard
exit
exit
seq-num 4
source
ipv6 fe80::1ff:fe23:4567:890a <----- IPv6 Address
exit
exit
seq-num 10
action deny
exit
exitПоддержка QoS
Для того что включить поддержку QoS в Access-List, необходимо добавить команду hw-module enable acl-qos в конфигурацию маршрутизатора.
access-list Qos
seq-num 10
destination
ipv4 172.20.20.254
exit
set dscp 48
exit
seq-num 20
destination
ipv4 10.0.9.100
exit
set dscp 56
exit
seq-num 30
action deny
dscp 64
exit
exit
L2
Для L2 ACL в качестве source и destination можно указать MAC-адрес — XX:XX:XX:XX:XX:XX.
В том числе, можно указать VLAN ID.
access-list example_mac
seq-num 1
action deny
destination
mac e0:d9:e3:ff:48:01 <----- MAC Address
exit
outer-vid 200 <----- Vlan ID
exit
exitНа маршрутизаторах ME5100 IPv6 и L2 ACL не реализован из за аппаратных особенностей маршрутизатора.
Object-Group
Создание группы возможно с помощью команды object-group network ipv4 [name]
В качестве объектов в группе могут быть использованы IPv4-префиксы (A.B.C.D/N) и хосты (A.B.C.D).
Для примера создадим следующие группы:
object-group network ipv4 group1 address 192.168.0.0/24 address 192.168.1.0/24 exit object-group network ipv4 group2 host 192.168.0.254 host 192.168.1.254 exit
access-list example
seq-num 10
destination
ipv4 group1
exit
protocol icmp <----- Правило будет срабатывать только на ICMP-протокол
remark [Allow_ICMP]
exit
seq-num 20
destination
ipv4 group2
exit
source
ipv4 192.168.3.0/24
exit
exit
seq-num 100
action deny
exit
exitКаждый элемент объектных групп занимает аппаратный ресурс маршрутизатора.
0/ME5200:R5# show access-lists
Fri May 5 04:34:59 2023
access-list example
10, permit, icmp, src[any], dst[group1] L2: 0, IPv4: 0, IPv6: 0 hits
20, permit, any, src[192.168.3.0/24], dst[group2] L2: 0, IPv4: 0, IPv6: 0 hits
100, deny, any, src[any], dst[any] L2: 0, IPv4: 0, IPv6: 0 hits
access-list example_ipv6
1, permit, tcp, src[any], dst[2001:db8::/32] L2: 0, IPv4: 0, IPv6: 0 hits
2, permit, udp, src[any], dst[2001:db8::/32] L2: 0, IPv4: 0, IPv6: 0 hits
3, permit, any, src[any], dst[2001::1:10:0:1:41/::ff:0:0] L2: 0, IPv4: 0, IPv6: 0 hits
4, permit, any, src[fe80::1ff:fe23:4567:890a], dst[any] L2: 0, IPv4: 0, IPv6: 0 hits
10, deny, any, src[any], dst[any] L2: 0, IPv4: 0, IPv6: 0 hits
access-list example_mac
1, deny, any, src[any], dst[mac e0:d9:e3:ff:48:01, mask ff:ff:ff:ff:ff:ff], vid 200 L2: 0, IPv4: 0, IPv6: 0 hits
0/ME5200:R5# show access-lists detailed
Fri May 5 04:35:04 2023
HW resources: 22/1000 acl entries
Access-list: example
Configured on interfaces:
te0/0/20.100, L2: 0, IPv4: 0, IPv6: 0 hits
seq-num 10, [Allow_ICMP]
action: permit
match: proto icmp, tos any, no fragments, flow-label any, vid any, pcp any, dei any, ethertype any
source: ipv4 any, ipv6 any, port any, mac any
destination: ipv4 192.168.0.0/24, ipv6 any, port any, mac any
set: none
total: L2: 0, IPv4: 0, IPv6: 0 hits
seq-num 10, [Allow_ICMP]
action: permit
match: proto icmp, tos any, no fragments, flow-label any, vid any, pcp any, dei any, ethertype any
source: ipv4 any, ipv6 any, port any, mac any
destination: ipv4 192.168.1.0/24, ipv6 any, port any, mac any
set: none
total: L2: 0, IPv4: 0, IPv6: 0 hits
seq-num 20
action: permit
match: proto any, tos any, no fragments, flow-label any, vid any, pcp any, dei any, ethertype any
source: ipv4 192.168.3.0/24, ipv6 any, port any, mac any
destination: ipv4 192.168.0.254, ipv6 any, port any, mac any
set: none
total: L2: 0, IPv4: 0, IPv6: 0 hits
seq-num 20
action: permit
match: proto any, tos any, no fragments, flow-label any, vid any, pcp any, dei any, ethertype any
source: ipv4 192.168.3.0/24, ipv6 any, port any, mac any
destination: ipv4 192.168.1.254, ipv6 any, port any, mac any
set: none
total: L2: 0, IPv4: 0, IPv6: 0 hits
seq-num 100
action: deny
match: proto any, tos any, no fragments, flow-label any, vid any, pcp any, dei any, ethertype any
source: ipv4 any, ipv6 any, port any, mac any
destination: ipv4 any, ipv6 any, port any, mac any
set: none
total: L2: 0, IPv4: 0, IPv6: 0 hits
Access-list: example_ipv6
Configured on interfaces:
te0/0/20.200, L2: 0, IPv4: 0, IPv6: 0 hits
seq-num 1
action: permit
match: proto tcp, tos any, no fragments, flow-label any, vid any, pcp any, dei any, ethertype any
source: ipv4 any, ipv6 any, port any, mac any
destination: ipv4 any, ipv6 2001:db8::/32, port any, mac any
set: none
total: L2: 0, IPv4: 0, IPv6: 0 hits
seq-num 2
action: permit
match: proto udp, tos any, no fragments, flow-label any, vid any, pcp any, dei any, ethertype any
source: ipv4 any, ipv6 any, port any, mac any
destination: ipv4 any, ipv6 2001:db8::/32, port any, mac any
set: none
total: L2: 0, IPv4: 0, IPv6: 0 hits
seq-num 3
action: permit
match: proto any, tos any, no fragments, flow-label any, vid any, pcp any, dei any, ethertype any
source: ipv4 any, ipv6 any, port any, mac any
destination: ipv4 any, ipv6 2001::1:10:0:1:41/::ff:0:0, port any, mac any
set: none
total: L2: 0, IPv4: 0, IPv6: 0 hits
seq-num 4
action: permit
match: proto any, tos any, no fragments, flow-label any, vid any, pcp any, dei any, ethertype any
source: ipv4 any, ipv6 fe80::1ff:fe23:4567:890a, port any, mac any
destination: ipv4 any, ipv6 any, port any, mac any
set: none
total: L2: 0, IPv4: 0, IPv6: 0 hits
seq-num 10
action: deny
match: proto any, tos any, no fragments, flow-label any, vid any, pcp any, dei any, ethertype any
source: ipv4 any, ipv6 any, port any, mac any
destination: ipv4 any, ipv6 any, port any, mac any
set: none
total: L2: 0, IPv4: 0, IPv6: 0 hits
Access-list: example_mac
Configured on interfaces:
te0/0/20, L2: 0, IPv4: 0, IPv6: 0 hits
seq-num 1
action: deny
match: proto any, tos any, no fragments, flow-label any, vid 200, pcp any, dei any, ethertype any
source: ipv4 any, ipv6 any, port any, mac any
destination: ipv4 any, ipv6 any, port any, mac e0:d9:e3:ff:48:01, mask ff:ff:ff:ff:ff:ff
set: none
total: L2: 0, IPv4: 0, IPv6: 0 hitsПарольная политика и защита от подбора пароля
Парольная политика и защита от перебора паролей критически важны для безопасности маршрутизатора.
Начиная с ПО версии 3.9.7 на маршрутизаторах МЕ реализована возможность:
- Блокировки учётных записей после неудачных попыток входа;
- Введения задержек между попытками аутентификации;
- Настройки сложности паролей.
Блокировка учетных записей и задержки
Основные параметры
| Команда | Описание |
|---|---|
tries-before-disconnect | Максимальное количество попыток авторизации до блокировки (по умолчанию: 3, диапазон: 1-10) |
lockout-period | Время блокировки в минутах (диапазон: 1-43200) или «permanent» |
fail-interval | Интервал учета ошибок в минутах (по умолчанию: 15) |
backoff-threshold | Порог попыток авторизации, при превышении которого будет добавлена задержка (по умолчанию: 2, диапазон: 1-3) |
backoff-factor | Начальная задержка в секундах (по умолчанию: 5, диапазон: 5-10) |
aaa authentication retry-options lockout-period permanent fail-interval 10 aaa authentication retry-options backoff-factor 7 aaa authentication retry-options backoff-threshold 3 aaa authentication retry-options tries-before-disconnect 5
Проверить состояние учётных записей можно командой show login lockout [detailed]:
0/FMC0:ME5000_Tech_Support# show login lockout
Wed Apr 23 05:35:39 2025
User Consecutive Latest failure Lockout start Lockout end
failures
---------------- ------------ -------------------- -------------------- ------------
test 4 2025-04-23 05:35:27 N/A N/A
0/FMC0:ME5000_Tech_Support# show login lockout detailed
Wed Apr 23 08:32:04 2025
User 'test':
Consecutive failures: 5
Latest failure: 2025-04-23 05:35:54 <--- Последняя неудачная попытка авторизации
Lockout start: 2025-04-23 05:35:54 <--- Время блокировки учётной записи
Lockout end: N/A <--- Время окончания блокировки учётной записи (N\A при бессрочной блокировке)
Failures:
Timestamp Type Source Valid
-------------------- ------- --------------------- ------
2025-04-23 05:35:12 RHOST 192.168.1.25 V
2025-04-23 05:35:14 RHOST 192.168.1.25 V
2025-04-23 05:35:17 RHOST 192.168.1.25 V
2025-04-23 05:35:27 RHOST 192.168.1.25 V
2025-04-23 05:35:54 RHOST 192.168.1.25 V При попытке подключения к заблокированной учётной записи ssh клиент сообщит об ошибке:
me@me-tech-support:~$ ssh test@192.168.1.1 The account is locked due to 5 failed logins.
Требования к паролям
В ПО 3.9.7 была реализована возможность задать требования к паролям учётных записей.
Для конфигурации требований необходимо перейти в блок конфигурации password-requirements
password-requirements change-type set-transitions 4 <--- 4 перехода между категориями (от одного типа символа к другому) maximum-length 64 <--- Пароль не длиннее 64 символов maximum-lifetime 90 <--- Смена пароля каждые 90 дней minimum-length 10 <--- Пароль не короче 10 символов minimum-lower-cases 2 <--- Не менее 2 строчных букв minimum-numerics 1 <--- Не менее 1 цифры minimum-punctuations 1 <--- Не менее 1 спецсимвола minimum-reuse 2 <--- Пароль должен отличаться от 2 предыдущих паролей minimum-upper-cases 2 <--- Не менее 2 заглавных букв exit
При попытке задать пароль, не соответствующий требованиям, маршрутизатор выдаст ошибку:
0/FMC0:ME5000_Tech_Support(config)# user example 0/FMC0:ME5000_Tech_Support(config-user)# password example_password Error: The password doesn't match the complexity requirements! Note: '+' - match the requirement, '-' - doesn't match + 'minimum-length 10' + 'maximum-length 64' - 'set-transitions 4' - 'minimum-upper-cases 2' + 'minimum-lower-cases 2' + 'minimum-punctuations 1' - 'minimum-numerics 1'
При вводе подходящего пароля ошибки не возникнет:
0/FMC0:ME5000_Tech_Support(config-user)# password Secur3P@ss!2025 0/FMC0:ME5000_Tech_Support(config-user)# commit
Проверить оставшийся срок жизни пароля можно с помощью команды show passwords lifetime:
0/FMC0:ME5000_Tech_Support# show passwords lifetime
Wed Apr 23 10:47:31 2025
User: ad
Password creation date: Tue Apr 1 08:02:52 2025
Password age: 3 weeks, 1 days, 2 hours, 44 minutes
The password will expire in 9 weeks, 4 days, 21 hours, 15 minutes
User: example
Password creation date: Wed Apr 23 10:47:17 2025
Password age: 0 hours, 0 minutes, 14 seconds
The password will expire in 12 weeks, 5 days, 23 hours, 59 minutes
User: test
Password creation date: Wed Apr 23 05:30:05 2025
Password age: 5 hours, 17 minutes, 26 seconds
The password will expire in 12 weeks, 5 days, 18 hours, 42 minutes









