Exec timeout 5 0 cisco что это
Основы основ безопасности в Cisco сетях
Всем доброго здравия!
Не так давно начал самостоятельное обучение к сертификации по курсу Cisco CCNA Security. Дело чрезвычайно интересное и полезное, для тех кто сталкивается в жизни с данным вендором. В этом топике хотелось бы ввести, дорогих хаброжителей, в основы основ безопасности Cisco сетях, на примере железок 3-го уровня. Статья не претендует на роль полноценного мануала по безопасности маршрутизаторов, а лишь дает основные понятия подхода к реализации безопасности в Cisco сетях. Топик будит полезен, как для начинающих админов, так и для гуру администрирования, дабы освежить память. И так, с Вашего позволения, поехали:
Сразу оговорюсь, что теории будит мало, в основном лишь комментарии к редко используемым командам. Для примера, я использовал старенькую/тестовую железку, третьего уровня, 28 серии.
В первую очередь необходимо установить длину используемых паролей, в моем случае эта длина будит равна 10 символам:
R1(config)#security passwords min-length 10
Далее, подготовим роутер, для работы через line console, aux port-ы и line vty.
R1(config)#line console 0
R1(config-line)#password cisco
R1(config-line)#exec-timeout 5 0
R1(config-line)#login
R1(config-line)#logging synchronous
Команда exec-timeout говорит нам о том что, при бездействии пользователя в течении 5-ти минут произойдет процесс разлогирования.
Команда logging synchronous запрещает вывод каких-либо консольных сообщений, которые в свою очередь могут прервать ввод команд в консольном режиме. К сожалению по умолчанию она не включена.
R1(config)#line aux 0
R1(config-line)#password ciscoauxpass
R1(config-line)#exec-timeout 5 0
R1(config-line)#login
R1(config)#line vty 0 4
R1(config-line)#password ciscovtypass
R1(config-line)#exec-timeout 5 0
R1(config-line)#login
Воспользуемся командой service password-encryption для шифрования паролей console, aux и vty.
R1(config)# service password-encryption
Создадим пользователей системы:
R1(config)#username user1 password 0 cisco123pass.
Здесь можно выставить password со-значением 0, так как мы уже ввели команду service password-encryption и пароль будит в любом случае хешироваться в MD5. Так же обязательно выставлять каждому новому пользователю secret password:
R1(config)#username user2 secret user123pass
R1(config)#line console 0
R1(config-line)#login local
R1(config-line)#end
R1#exit
R1(config)#line aux 0
R1(config-line)#login local
R1(config-line)#end
R1#exit
R1(config)#line vty 0 4
R1(config-line)#login local
R1(config-line)#end
R1#exit
Еще один маленький штрих:
R1(config)#login block-for 60 attempts 2 within 30
В течении 60 секунд, не будит возможности войти в систему после 2-х неудачных попыток залогиниться. Сконфигурим процесс логирования, при всех возможных попытках доступа в систему:
R1(config)#login on-success log
R1(config)#login on-failure log every 2
R1(config)#exit
Подготовим router для работы с ssh соединениям, для этого создадим пользователя с уровнем привилегий 15 и соответствующими настройками line vty, ключи, ограниченным числом сессий и тайм-аутом для ssh сессий:
R1(config)#username admin privilege 15 secret Cisco12345Admin
R1(config)#line vty 0 4
R1(config-line)#privilege level 15
R1(config-line)#login local
R1(config-line)#transport input ssh
R1(config-line)#exit
R1(config)#crypto key generate rsa general-keys modulus 1024
R1(config)#exit
R1(config)#ip ssh time-out 90
R1(config)#ip ssh maxstartups 2
R1(config)#ip ssh authentication-retries 2
Router(config)#wr
Также, при необходимости существует возможность пробросить на нестандартный ssh порт:
R1(config)#ip ssh port 2009 rotary 9
R1(config)# line vty 4
R1(config)#rotary 9
Конфигурирование AAA: Administrative Role. Это довольно таки сильный механизм и по ней можно написать отдельную статью. В моем случае будит рассмотрен лишь малая его часть. Включаем ААА:
R1#config t
R1(config)#aaa new-model
R1(config)#exit
Включаем для пользователя admin, admin view. Для этого должен быть включен secret password, до того как был включен механизм ААА.
R1(config)#enable secret cisco12345
R1(config)#parser view admin
R1(config-view)#
*Dec 16 22:45:27.587: %PARSER-6-VIEW_CREATED: view ‘admin’
successfully created.
Note: To delete a view, use the command no parser view viewname.
Сделаем привязку пользователя и пароля:
R1(config-view)#secret admin1pass
R1(config-view)#
R1(config-view)#commands?
-RITE-profile Router IP traffic export profile command mode
-RMI Node Config Resource Policy Node Config mode
-RMI Resource Group Resource Group Config mode
-RMI Resource Manager Resource Manager Config mode
-RMI Resource Policy Resource Policy Config mode
-SASL-profile SASL profile configuration mode
-aaa-attr-list AAA attribute list config mode
-aaa-user AAA user definition
-accept-dialin VPDN group accept dialin configuration mode
-accept-dialout VPDN group accept dialout configuration mode
-address-family Address Family configuration mode
R1(config-view)#commands exec include all show
R1(config-view)#commands exec include all config terminal
R1(config-view)#commands exec include all debug
R1(config-view)#end
R1#enable view admin1
Password:admin1pass
Далее необходимо подготовить IOS железки, что то вроде на её безопасную загрузку и устойчивость.
R1(config)#secure boot-image
%IOS_RESILIENCE-5-IMAGE_RESIL_ACTIVE: Successfully secured running image
R1(config)#secure boot-config
%IOS_RESILIENCE-5-CONFIG_RESIL_ACTIVE: Successfully secured config archive [flash:.runcfg-19930301-00131.ar]
Все это проверяется командами:
R1#show flash
R1#show secure bootset
Конфигурим службу syslog на маршрутизаторе. Для этого нам понадобится Kiwi Syslog Daemon или Tftpd32 на отдельном PC, с настройками данных программ, думаю не должно возникнуть особых сложностей, там в принципе все просто. Так же необходимо будит поднять NTP сервер на routre, для синхронизации времени логов.
R1(config)#ntp server 10.1.1.2
R1(config)#ntp update-calendar
R1#show ntp associations
R1#debug ntp all
R1(config)#service timestamps log datetime msec
R1(config)#logging 192.168.1.3
Далее выставляем уровень логирования:
Severity level Keyword Meaning
0 emergencies System unusable
1 alerts Immediate action required
2 critical Critical conditions
3 errors Error conditions
4 warnings Warning conditions
5 notifications Normal but significant condition
6 informational Informational messages
7 debugging Debugging messages
Обычно выбирается уровень 4. Но все зависит от конкретной ситуации.
Ну вот в принципе пока все. Это то что мне удалось узнать из первых уроков курса и ПРОВЕРИТЬ в «боевых» условиях. Надеюсь, что не сильно утомил.
Сайт ARNY.RU
Базовая безопасность CISCO — на сетевом устройстве CISCO задан пароль. По факту многие этим и ограничиваются. Что ещё можно сделать чтобы улучшить защиту? В статье рассказаны довольно простые методы, однако не все с ними знакомы.
Немного теории
Network Foundation Protection (NFP) Framework — интересная концепция, комплексный подход к защите, разработанный CISCO. NFP логически делит устройство на плоскости (planes):
Теперь подробнее о каждой плоскости и о том, зачем её нужно защищать.
Management Plane
Конфигурация, операционная система, протоколы Telnet, SSH, TFTP, FTP, NTP, AAA, SNMP, Syslog, NetFlow. Зачем защищать? Очевидно, что если есть контроль над устройством с помощью одного из этих протоколов, то можно как минимум получать информацию с устройства о его настройках или событиях, как максимум полностью управлять устройством.
Control Plane
Сетевые устройства получают и отправляют друг другу различную информацию. Пример — информация динамических протоколов маршрутизации, роутеры-соседи постоянно отправляют пакеты-приветствия и пакеты-обновления. Кроме этого возникают события, которые должны быть обработаны устройством. Пример — когда у пакета закончился TTL, устройству нужно подготовить и отправить сообщение ICMP. Первой проблемой является то, что пакеты плоскости управления обрабатываются с большой утилизацией CPU и это позволяет проводить DoS-атаки на незащищённое устройство. Вторая проблема защититься от спуфинга, например фейковые пакеты обновлений информации о маршрутах, позволят направлять трафик от устройства по ложным маршрутам или вообще отбрасывать этот трафик.
Data Plane
Основной вид трафика в устройстве. Обрабатывается программно или аппаратно с помощью CISCO Express Forwarding (CEF) при минимальных затратах ресурсов CPU. Здесь нужно защититься от нежелательного трафика в явном виде и также защититься от спуфинга.
Взаимозависимость
Существует взаимозависимость между плоскостями. К примеру, если если сбой в плоскости управления, то устройство не знает как форвардить трафик, соответственно сбой плоскости передачи данных. Другой пример это сбой в плоскости менеджмента, который даёт атакующему контроль над устройством, возможность перенастройки, в результате сбой оставшихся двух плоскостей.
Защита Management Plane
Рассказывать про защиту всех 3 плоскостей не буду, это весьма объёмно и не было такой цели. Цель — простые методы повышения защиты плоскости менеджмента.
Настройка журналирования
Для просмотра событий, в том числе событий безопасности, на устройстве как минимум должен быть включен и настроен сбор логов в буфер устройства:
Далее, сохраним конфу и посмотрим какое сообщение будет:
Как видно в примере выше, действия по конфигурированию устройства имеют уровень 5, поэтому нужно журналировать его (или уровень выше):
Тут нужно учитывать, что чем выше уровень журналирования, тем больше сообщений и тем быстрее заполнится буфер. Буфер записывается циклически, при переполнении старые записи перезаписываются новыми. Буфер организуется в памяти устройства, размер в байтах, значения 16 000 байт должно вполне хватить:
Best practice настраивать отправку сообщений на Syslog сервер и там их парсить (например с помощью Kibana):
Суммируем: лог настраивается отдельно для консоли, буфера устройства, монитора удалённой сессии и Syslog сервера. Для сервера уровень лога определяет команда logging trap. А logging facility это типа такая метка, чтобы с помощью неё сервер распихивал логи по разным файлам и обработчикам.
Настройка времени
Чтобы у событий лога была правильная метка времени, метка должна быть включена:
И время должно быть настроено. Вручную никто не настраивает, особенно когда много устройств, используется сервис NTP. В качестве локального NTP-сервера может быть выбран домен-контроллер с FSMO ролью PDC эмулятор или же, если сеть без домена, сервис NTP может быть без особого труда развёрнут на произвольном сервере. Настройки на устройстве:
NTPv3 и более поздней поддерживает механизм аутентификации между сервером и клиентами. Клиенты настроенные без аутентификации всё равно будут получать время с сервера. Отличие в том, что такие клиенты не аутентифицируют этот сервер как защищенный источник. В рамках статьи про базовую безопасность про NTPv3 говорить не будем.
Модели организации удалённого доступа
Вариант с вводом только пароля рассматривается как небезопасный. Метод локальной базы сам по себе повышает безопасность, так как для входа на устройство нужно знать связку логин/пароль. По этой причине логин admin лучше не использовать, хотя все привыкли так делать.
Есть ещё методы входа с использованием AAA, рассматривать также не будем. Важно то, что даже при наличии настроенного метода входа с серверным AAA, метод локальной базы должен быть обязательно настроен и используется как резервный в случае отказа/недоступности AAA-сервера.
Защита от физического доступа
Советы от Капитана Очевидность, но не так уж редко данными мерами пренебрегают:
Тут подробнее. Режим ROMmon становится недоступным. Если далее при загрузке инициировано прерывание (для Putty Ctrl-Breake), то будет предложено подтвердить действие, после чего конфигурация стирается, сервис восстановления пароля включается и устройство загружается с дефолтной конфигурацией. Важный момент: если Flash не содержит работоспособный IOS (повреждён/удалён), тогда что называется приплыли. Если действие прерывания при загрузке не подтверждено, то устройство загружает как обычно и сервис восстановления пароля остаётся выключенным. Зачем всё это нужно? Чтобы не дать доступ к текущей конфигурации.
Повышение безопасности пароля
Данные команды оставлены в современных версиях IOS лишь для обратной совместимости.
Алгоритмы хеширования пароля
Хеш MD5 больше не считается безопасным для хеширования паролей управления. Если железка новая, IOS 15.3(3)M или новее, то доступны более совершенные алгоритмы хеширования:
Если нужно поставить на новое устройство пароль с другого устройства, то можно посмотреть готовый хеш в конфигурации и использовать его (вместе с соответствующей цифрой):
Алгоритм хеширования выбирается с помощью algorithm-type:
Хеш MD5 — type 5, SHA256 — type 8 и Scrypt — type 9 (самый устойчивый к взлому). Если не указывать algorithm-type, будет по умолчанию использован MD5. Алгоритмы хеширования доступны как для команды enable, так и для команды username.
Защита линий подключений
Сессия с хоста отличного от 192.168.1.11 будет прервана на этапе открытия:
Команда exec timeout 0 0 или no exec-timeout отключает завершение сеанса при бездействии и иногда удобно ей пользоваться. Например, в лабах. Тут её надо вешать на консоль.
Честно говоря не знаю когда это может потребоваться. Её нужно использовать обязательно с командой, предупреждающей что будет разрыв соединения:
Протокол Telnet передаёт инфу (включая пароль) открытым текстом и поэтому от использования данного протокола нужно отказаться на всех сетевых устройствах.
Чтобы была возможность настроить SSH у устройства должна присутствовать поддержка криптографии, которая обеспечивается на уровне прошивки. Указание на возможность использования криптографии для старых прошивок (12.XX) является приставка k9 в названии прошивки:
Для новых прошивок криптография есть по умолчанию. Посмотреть на устройстве можно используя команду show version.
Команда ip ssh time-out задаёт период, в течении которого пользователь должен ввести реквизиты для входа, по умолчанию 120 секунд, возможность настройки от 1 до 120 секунд. После входа в систему работают уже настройки таймаута для VTY.
Команда ip ssh authentication-retries задаёт количество попыток до ввода правильных реквизитов, по умолчанию 3, возможность настройки от 0 до 5.
Просмотреть текущие подключения SSH команда show ssh, посмотреть общую информацию о SSH команда show ip ssh, посмотреть информацию о ключах команда show crypto key mypubkey rsa.
Кроме всего этого устройства CISCO позволяют устанавливать SSH-соединение с одного устройства на другое. При этом настройка SSH на устройстве, которое инициирует подключение, не требуется:
Также следует учитывать количество линий VTY, для маршрутизатора их обычно по умолчанию 5, а для коммутатора 16. Как правильно сказано в комментарии к статье можно включить для маршрутизатора оставшиеся линии, но.. в конфе по умолчанию для маршрутизатора vty 0 4, для коммутатора vty 0 4 и vty 5 15.
Не то чтобы часто, но встречаю примеры настройки, когда человек забыл или не знал, что на коммутаторе линий VTY больше и выполнил настройку SSH только для линий 0 4, а линии 5 15 имеют старую настройку для Telnet с каким-то простым паролем в явном виде. Тогда работает следующий трюк, быстро открываем 5 сессий SSH без ввода реквизитов, просто окна (они прицепятся к линиям 0-4), затем ещё 1 сессию Telnet (линия 5), вводим этот простой пароль и.. удачный логин!
Вряд ли кто-то, кто, допустим, увидел случайно конфигурацию этого коммутатора на мониторе будет так делать (и догадается так сделать), но само по себе такое возможно.
Скрин текста из последней официальной версии CCNA Security:
Улучшения процесса входа в систему
А что делать, если на устройствах настроены уровни привилегий, подключается довольно больше число пользователей для выполнения разных по сути задач? При этом число хостов, с которых происходит подключение тоже большое и настройка списка доступа ACL для линий VTY с указанием IP всех этих хостов скорее неудобство, чем достоинство. С другой стороны отсутствие списка ACL позволяет подключаться с любого хоста и использовать сколько угодно попыток для входа. Как защититься от атаки? Кроме того, применение сложных и длинных паролей это хорошо, но само по себе также не может предотвратить атаку на взлом/подбор пароля.
Улучшенные возможности входа позволяют достаточно замедлить атаку. Тут есть некоторые ограничения:
Команда login block-for обеспечивает защиту как от DoS-атак, так и от попыток взлома пароля и работает 2 режимах:
Чтобы обеспечить доступ администратора к устройству на период режима тишины, применяется список ACL с указанием IP адресов административных хостов с помощью команды login quiet-mode access-class. Как же так? Мы отказались от использования ACL на линиях VTY, стали использовать дополнительные методы для защиты и опять ACL. Получается притянуто за уши и логически несвязно. На самом деле здесь используется небольшое число IP административных хостов, которые гарантированно должны иметь доступ.
Сразу после применения команды login block-for между попытками входа включается задержка в 1 секунду, что уже хорошо. Задержку можно увеличить с помощью команды login delay. Пример конфигурирования:
Чтобы проверить настройки команды login block-for используется команда show login:
Помимо этого команда показывает текущий режим работы (Normal-Mode или Quiet-Mode), время до конца текущего периода наблюдения и количество неудачных попыток входа в текущем периоде наблюдения для Normal-Мode, время до окончания режима тишины для Quiet-Mode.
Внеполосное управление
Существует 2 варианта трафика между хостом администратора и управляемым устройством:
OOB конечно же предпочтительнее и если для внутриполосного управления незащищённые протоколы управления и мониторинга представляют опасность, то для OOB это компромиссное решение. Изначально OOB рассматривалась как отдельная физическая сеть для целей управления. Может где-то так и реализовано, но это чрезвычайно сложно и дорого. Обычно используют выделенный Management-VLAN. Хорошая практика, но в случае большой сети также сложно реализуемо.
Подводим итог: лучше всего выделять под управление отдельную подсеть, затем администраторы подсоединяются к этой сети на рабочем месте или удалённо и уже из неё работают. Доступ к оборудованию ограничивается только на эту подсеть. Тогда всех проблем из раздела «Улучшения процесса входа в систему» можно легко избежать.
Неудачные попытки входа
Для генерации Syslog-сообщения об удачных и неудачных попытках входа применяются команды login on-success log и login on-failure log. В конце каждой команды неявно присутствует параметр every login равный 1, который означает, что сообщение будет генерироваться при каждом удачном/неудачном входе. Параметр можно указать в явном виде, диапазон от 1 до до 65535.
Данные команды являются частью улучшения входа в в систему и должны вводиться после команды login block-for.
Команда show login failures даёт дополнительную информацию о неудачных попытках входа.
Баннер при входе в систему
Рекомендуется к обязательному применению. Зачем? Если кто-то будет пойман на попытках взлома, то ему будет тяжелее отвертеться. Обычный, рядовой пользователь может случайно открыть сессию к устройству, нужно ему в явном виде указать, что не надо сюда пытаться зайти. Не рекомендуется использовать слова типа Welcome.
Баннер задаётся командой banner motd, начало и конец баннера могут быть отмечены любым символом, главное чтобы он не встречался в тексте баннера (в примере *):
Кроме общего баннера MOTD (Message Of The Day) существуют и другие:
Защита конфигурации
Конфигурацию устройств нужно бекапить, на случай поломки устройства. Имея под рукой текущую конфигурацию легко её применить на аналогичное работоспособное устройство.
$H-$T.cfg шаблон для файла, где $H – имя устройства, и $T – текущее время. Для просмотра отправленных копий используется команда show archive. Для роутеров нужна дополнительная строчка:
Резервные копии будут сохраняться на TFTP сразу после выполнения команды write memory. Те, кому такой вариант не нравится, могут воспользоваться расписанием:
Как видно из примера также требуется установка точного времени, возвращаемся к вопросу о NTP. Посмотреть задания можно с помощью команды show kron schedule.
При этом возможно копирование как сервера, так и на сервер конечно:
Нужно точно указывать реквизиты, сервис SCP должен быть указан с двоеточием (как scp:), иначе команда воспримет это как обращение к локальному файлу, а Flash может называться flash: или flash0: и так далее.
Защита IOS
Защищенные файлы не видны из CLI, как будто их и нет. Сохранение файлов только локально, хранение защищённых файлов на вешних источниках не предусмотрено. Используется команда show secure bootset, чтобы просмотреть информацию. Если используется secure boot-config и при загрузке устройства обнаруживается несоответствие текущего конфига сохранённому, то подгружается сохранённый. Аналогично и для secure boot-image. Чтобы обновить защищённые файлы нужно выполнить команды повторно. Если функция включена, то отключить её можно только через сеанс консоли. Восстановление защищённого образа IOS происходит через режим ROMmon:
Восстановление защищённого образа конфига:
Рекомендуется защищённый SNMPv3, хотя по факту он не так уж и часто используется. Чтобы хоть как-то обезопасить SNMPv2, нужно использовать ACL:
Это конечно не сделает сообщения между устройством и SNMP-сервером шифрованными, но лучше чем ничего.
Отключение лишних сервисов
Относится в первую очередь к граничным маршрутизаторам, то есть тем, которые смотрят в интернет. Сервисы нужно отключать чтобы снизить область возможных DoS-атак, да и ресурсы они тоже потребляют.
Сервисы
В устройствах CISCO множество сервисов, которые включены по умолчанию:
Большую часть этих сервисов рекомендуется отключать:
Глобальные настройки
Как минимум нужно отключать в режиме глобальной конфигурации:
На интерфейсах
Необходимо выключать неиспользуемые порты и интерфейсы. На интерфейсах необходимо выключать:
Данные манипуляции легко выполнить с помощью AutoSecure.
Функция AutoSecure
Выполняется AutoSecure с помощью команды auto secure и может быть настроена с помощью опций.
Интерактивный или автоматический режим:
Выполнение только для плоскости менеджмента или для плоскости передачи данных:
Для отдельных сервисов:
Важно обратить внимание, что что команда выполняется из привилегированного режима. Пример результата работы команды auto secure management перед применением в конфигурацию для роутера без подключения к интернету:
Очевидно, что результат работы не идеален, как минимум нужно оставить для линий VTY только SSH, убрать все команды содержащие password, но в целом можно пользоваться как начальным шаблоном для ускорения процесса настройки.
Auto secure firewall
Раз уж заговорили про команду auto secure, то нельзя не сказать про результат работы команды auto secure firewall. Хотя файрвол относится к защите Data Plane, но нужно отметить: очень быстро настраивается CBAC-файрвол. Это удобно для тех роутеров, где старая прошивка и нет ZBF-файрвола.
Пример. Результат выполнения auto secure firewall, интерфейс GigabitEthernet 0/1 смотрит в интернет:
Нужно обратить внимание, что весь трафик, который будет инициирован из вне, запрещён на внешнем интерфейсе фильтром ip access-list extended autosec_firewall_acl. Единственный разрешенный трафик bootpc (насколько понимаю, чтобы была возможность авто-получения IP от провайдера для данного интерфейса). Это никуда не годится. Для нормальной работы фильтр нужно сильно дополнять разрешающими правилами. Что конкретно разрешать зависит от применения роутера. А дырки для обратного трафика файрвол будет пропиливать в этом фильтре динамически.
Пример. Разрешить работу IPSec VPN между роутерами R1 (172.16.1.1/30) и R2 (172.16.1.2/30). Чтобы прошла фаза обмена информацией IKE разрешаем порт UDP 500 (правило 1), чтобы проходили шифрованные пакеты ESP разрешаем порт IP 50 (правило 2). Также удобно чтобы роутеры друг друга пинговали (правило 3). Для R1 (для R2 симметрично):
Поскольку пакеты ESP не содержат UDP или TCP заголовка, а только зашифрованную нагрузку, то ESP не сможет работать в каких-то конкретных реализациях через каких-то провайдеров. В частности, ESP не умеет работать напрямую через NAT. В этих случаях пакеты ESP надо заворачивать в UDP, который уже гарантированно будет доставлен. Делается это с помощью NAT-Traversal (NAT-T, обход NAT). Фильтр при этом видоизменяется в следующий:
Infrastructure ACL
Ну и раз заговорили, что граничный роутер, смотрящий в интернет, снаружи нужно защищать ACL, то CISCO называет такой ACL — Infrastructure ACL. В этом ACL в явном виде должны быть пропилены дырки для некоторых сервисов. Варианта тут 2:
Пример Infrastructure ACL от CISCO (вариант 1, из официального гайда к экзамену 300-101 Route):
Это такая рыба, которую дорабатывать и дорабатывать. Фрагментированные пакеты запрещены, так как это уязвимость. Трафик к внутренним сетевым адресам запрещён, так как работает NAT.
В реалиях всё может быть по-другому. Пример боевого ACL (совместно с CBAC). Насколько он плох или хорош.. люди пользуются:
Широко задействованы группы object-group.
Заключение
В задачи статьи не входило рассмотреть все доступные методы защиты, а только простые и легкореализуемые и то очень выборочно. Использование этих методов поможет повысить безопасность сетевых устройств CISCO.

















