Рекомендации по безопасной настройке носят общий характер и подходят для большинства инсталляций. Настоящие рекомендации в значительной степени повышают безопасность эксплуатации устройства, но не являются исчерпывающими. В зависимости от схемы применения устройства необходимо настраивать и другие параметры безопасности. В некоторых специфических случаях выполнение данных рекомендаций может привести к неработоспособности сети. При настройке устройства стоит в первую очередь следовать техническим требованиям и регламентам сетей, в которых будет эксплуатироваться данное устройство.
Общие рекомендации
- Рекомендуется всегда отключать неиспользуемые физические интерфейсы с помощью команды
shutdown. Команда подробно описана в разделе Конфигурирование и мониторинг интерфейсов справочника команд CLI. - Рекомендуется всегда настраивать синхронизацию системных часов с доверенными источниками сетевого времени (NTP). Алгоритм настройки NTP приведён в разделе Настройка NTP настоящего руководства. Подробная информация о командах для настройки NTP приведена в разделе Управление системными часами справочника команд CLI.
- Рекомендуется отключать NTP broadcast client, включённый по умолчанию в заводской конфигурации.
- Не рекомендуется использовать команду ip firewall disable, отключающую межсетевое экранирование. Следует всегда назначать интерфейсам соответствующие зоны безопасности и настраивать корректные правила межсетевого экрана. Алгоритм настройки межсетевого экрана приведён в разделе Конфигурирование Firewall настоящего руководства. Подробная информация о командах для настройки межсетевого экрана приведена в разделе Управление Firewall справочника команд CLI.
Настройка системы логирования событий
Алгоритмы настройки системы логирования событий приведены в подразделе «Настройка Syslog» раздела Мониторинг настоящего руководства.
Подробная информация о командах для настройки системы логирования событий приведена в разделе
Управление SYSLOG справочника команд CLI.
Рекомендации
- Рекомендуется настроить хранение сообщений о событиях в файл syslog на устройстве и передачу этих событий на внешний syslog-сервер.
- Рекомендуется ограничивать размер syslog-файла на устройстве.
- Рекомендуется настраивать ротацию syslog-файлов на устройстве.
- Рекомендуется включать нумерацию сообщений syslog.
- Рекомендуется включать добавление меток timestamp msec к syslog-сообщениям на устройствах ESR-1500 и ESR-1511.
Предупреждения
- Данные, хранящиеся в файловой системе tmpsys:syslog, не сохраняются при перезагрузке устройства. Этот тип файловой системы рекомендуется использовать для хранения оперативных логов.
- Не рекомендуется использовать файловую систему flash:syslog для хранения логов, так как это может привести к преждевременному выходу из строя устройства ESR.
Пример настройки
Задача:
Настроить хранение сообщений о событиях уровня info и выше в файл syslog на устройстве и настроить передачу этих событий на внешний syslog-сервер. Ограничить файл размером 512 Кбайт. Включить ротацию 3 файлов. Включить нумерацию сообщений syslog.
Решение:
Настраиваем хранение syslog-сообщений в файле:
esr(config)# syslog file tmpsys:syslog/default info
Настраиваем ограничение размера и ротацию файлов:
esr(config)# syslog max-files 3 esr(config)# syslog file-size 512
Настраиваем передачу сообщений на внешний сервер:
esr(config)# syslog host mylog 192.168.1.2 info udp 514
Включаем нумерацию сообщений syslog:
esr(config)# syslog sequence-numbers
Настройка политики использования паролей
Алгоритмы настройки политики использования паролей приведены в разделе Настройка ААА настоящего руководства.
Подробная информация о командах для настройки политики использования паролей приведена в разделе Настройка AAA справочника команд CLI.
Рекомендации
- Рекомендуется всегда включать требования на смену пароля по умолчанию пользователя admin.
- Рекомендуется ограничивать время жизни паролей и запрещать повторно использовать, как минимум, предыдущий пароль.
- Рекомендуется выставлять требования минимальной длины пароля больше 8 символов.
- Рекомендуется выставлять требования на использование строчных и прописных букв, цифр и спецсимволов.
Пример настройки
Задача:
- Настроить парольную политику с обязательным требованием смены пароля по умолчанию, временем действия пароля 1 месяц и запретом на использование 12 последних паролей.
- Задать минимальную длину пароля 16 символов, максимальную — 64 символа.
- Пароль должен содержать не менее 3 прописных букв, не менее 5 строчных букв, не менее 4 цифр и не менее 2 спецсимволов. Пароль в обязательном порядке должен содержать все 4 типа символов.
Решение:
Включаем запрос на смену пароля по умолчанию для пользователя admin:
esr(config)# security passwords default-expired
Устанавливаем время жизни пароля 30 дней и запрет на использование предыдущих 12 паролей:
esr(config)# security passwords lifetime 30 esr(config)# security passwords history 12
Устанавливаем ограничения на длину пароля:
esr(config)# security passwords min-length 16 esr(config)# security passwords max-length 24
Устанавливаем ограничения по минимальному количеству символов соответствующих типов:
esr(config)# security passwords upper-case 3 esr(config)# security passwords lower-case 5 esr(config)# security passwords special-case 2 esr(config)# security passwords numeric-count 4 esr(config)# security passwords symbol-types 4
Настройка политики AAA
Алгоритмы настройки политики ААА приведены в разделе Настройка ААА настоящего руководства.
Подробная информация о командах для настройки политики AAA приведена в разделе Настройка ААА справочника команд CLI.
Рекомендации
- Рекомендуется использовать ролевую модель доступа на устройство.
- Рекомендуется использовать персональные учетные записи для аутентификации на устройстве.
- Рекомендуется включать логирование вводимых пользователем команд.
- Рекомендуется использовать несколько методов аутентификации для входа на устройства через консоль, удалённого входа на устройства и повышения привилегий. Оптимальной считается комбинация из аутентификации по одному из протоколов RADIUS/TACACS/LDAP и локальной аутентификации.
- Рекомендуется понизить уровень привилегий встроенной учётной записи admin до 1.
- Рекомендуется настроить логирование изменений локальных учётных записей.
- Рекомендуется настроить логирование изменений политики AAA.
Предупреждения
- Встроенную учётную запись admin удалить нельзя.
- Команда no username admin не удаляет пользователя admin, сбрасывает его конфигурацию в значения по умолчанию. После применения этой команды пользователь admin не будет отображаться в конфигурации.
- Команда no password для пользователя admin также не удаляет пароль пользователя admin, а сбрасывает его в значение по умолчанию. После применения этой команды пароль пользователя admin перестаёт отображаться в конфигурации и становится ‘password'.
- Перед установкой пользователю admin пониженных привилегий у вас должен быть настроен пользователь с уровнем привилегий 15 или задан ENABLE-пароль.
Пример настройки
Задача:
Настроить политику AAA:
- Для удалённого входа по протоколу SSH использовать аутентификации через RADIUS.
- Для входа через локальную консоль использовать аутентификации через RADIUS, в случае отсутствия связи с RADIUS-серверами использовать локальную аутентификацию.
- Использовать ENABLE-пароль, заданный через RADIUS, в случае отсутствия связи с RADIUS-серверами использовать локальный ENABLE-пароль.
- Установить пользователю admin пониженный уровень привилегий.
- Настроить логирование изменений локальных учётных записей.
- Настроить логирование изменений политик ААА.
- Настроить логирование вводимых команд.
Решение:
Создаем локального пользователя local-operator с уровнем привилегий 8:
esr(config)# username local-operator esr(config-user)# password Pa$$w0rd1 esr(config-user)# privilege 8 esr(config-user)# exit
Задаём локальный ENABLE-пароль:
esr(config)# enable password $6e5c4r3e2t!
Понижаем привилегии пользователя admin:
esr(config)# username admin esr(config-user)# privilege 1 esr(config-user)# exit
Настраиваем связь с двумя RADIUS-серверами, основным 192.168.1.11 и резервным 192.168.2.12:
esr(config)# radius-server host 192.168.1.11 esr(config-radius-server)# key ascii-text encrypted 8CB5107EA7005AFF esr(config-radius-server)# priority 100 esr(config-radius-server)# exit esr(config)# radius-server host 192.168.2.12 esr(config-radius-server)# key ascii-text encrypted 8CB5107EA7005AFF esr(config-radius-server)# priority 150 esr(config-radius-server)# exit
Настраиваем политику ААА:
esr(config)# aaa authentication login CONSOLE radius local esr(config)# aaa authentication login SSH radius esr(config)# aaa authentication enable default radius enable esr(config)# aaa authentication mode break esr(config)# line console esr(config-line-console)# login authentication CONSOLE esr(config-line-console)# exit esr(config)# line ssh esr(config-line-ssh)# login authentication SSH esr(config-line-ssh)# exit
Настраиваем логирование:
esr(config)# logging userinfo esr(config)# logging aaa esr(config)# syslog cli-commands
Настройка удалённого управления
Подробная информация о командах настройки удалённого доступа приведена в разделе Настройка доступа SSH, Telnet справочника команд CLI.
Рекомендации
- Рекомендуется отключить удалённое управление по протоколу Telnet.
- Рекомендуется использовать криптостойкие алгоритмы аутентификации sha2-512 и отключить все остальные.
- Рекомендуется использовать криптостойкие алгоритмы шифрования aes256ctr и отключить все остальные.
- Рекомендуется использовать криптостойкий алгоритм обмена ключами шифрования dh-group-exchange-sha256 и отключить все остальные.
- Рекомендуется использовать криптостойкий алгоритм верификации Host-Key для SSH rsa и отключить все остальные.
- Рекомендуется разрешить доступ к удалённому управлению устройством только с определённых IP-адресов.
- Перед началом эксплуатации рекомендуется перегенерировать ключи шифрования.
Пример настройки
Задача:
Отключить протокол Telnet. Сгенерировать новые ключи шифрования. Использовать криптостойкие алгоритмы.
Решение:
Отключаем удаленное управление по протоколу Telnet:
esr(config)# no ip telnet server
Отключаем устаревшие и не криптостойкие алгоритмы:
esr(config)# ip ssh server esr(config)# ip ssh authentication algorithm md5 disable esr(config)# ip ssh authentication algorithm md5-96 disable esr(config)# ip ssh authentication algorithm ripemd160 disable esr(config)# ip ssh authentication algorithm sha1 disable esr(config)# ip ssh authentication algorithm sha1-96 disable esr(config)# ip ssh authentication algorithm sha2-256 disable esr(config)# ip ssh encryption algorithm 3des disable esr(config)# ip ssh encryption algorithm aes128 disable esr(config)# ip ssh encryption algorithm aes128ctr disable esr(config)# ip ssh encryption algorithm aes192 disable esr(config)# ip ssh encryption algorithm aes192ctr disable esr(config)# ip ssh encryption algorithm aes256 disable esr(config)# ip ssh encryption algorithm arcfour disable esr(config)# ip ssh encryption algorithm arcfour128 disable esr(config)# ip ssh encryption algorithm arcfour256 disable esr(config)# ip ssh encryption algorithm blowfish disable esr(config)# ip ssh encryption algorithm cast128 disable esr(config)# ip ssh key-exchange algorithm dh-group-exchange-sha1 disable esr(config)# ip ssh key-exchange algorithm dh-group1-sha1 disable esr(config)# ip ssh key-exchange algorithm dh-group14-sha1 disable esr(config)# ip ssh key-exchange algorithm ecdh-sha2-nistp256 disable esr(config)# ip ssh key-exchange algorithm ecdh-sha2-nistp384 disable esr(config)# ip ssh key-exchange algorithm ecdh-sha2-nistp521 disable esr(config)# ip ssh host-key algorithm dsa disable esr(config)# ip ssh host-key algorithm ecdsa256 disable esr(config)# ip ssh host-key algorithm ecdsa384 disable esr(config)# ip ssh host-key algorithm ecdsa521 disable esr(config)# ip ssh host-key algorithm ed25519 disable
Генерируем новые ключи шифрования:
esr# update ssh-host-key rsa esr# update ssh-host-key rsa 2048
Настройка механизмов защиты от сетевых атак
Алгоритмы настройки механизмов защиты от сетевых атак приведены в разделе Настройка логирования и защиты от сетевых настоящего руководства.
Подробная информация о командах для настройки политики использования паролей приведена в разделе Управление логированием и защитой от сетевых атак справочника команд CLI.
Рекомендации
- Рекомендуется всегда включать защиту от ip spoofing.
- Рекомендуется всегда включать защиту от TCP-пакетов с неправильно выставленными флагами.
- Рекомендуется всегда включать защиту от фрагментированных TCP-пакетов с выставленным флагом SYN.
- Рекомендуется всегда включать защиту от фрагментированных ICMP-пакетов.
- Рекомендуется всегда включать защиту ICMP-пакетов большого размера.
- Рекомендуется всегда включать защиту от незарегистрированных IP-протоколов.
- Рекомендуется включать логирование механизма защиты от сетевых атак.
Пример настройки
Задача:
Настроить механизм защиты от сетевых атак в соответствии с рекомендациями.
Решение:
Включаем защиту от ip spoofing и логирование механизма защиты:
esr(config)# ip firewall screen spy-blocking spoofing esr(config)# logging firewall screen spy-blocking spoofing
Включаем защиту от TCP-пакетов с неправильно выставленными флагами и логирование механизма защиты:
esr(config)# ip firewall screen spy-blocking syn-fin esr(config)# logging firewall screen spy-blocking syn-fin esr(config)# ip firewall screen spy-blocking fin-no-ack esr(config)# logging firewall screen spy-blocking fin-no-ack esr(config)# ip firewall screen spy-blocking tcp-no-flag esr(config)# logging firewall screen spy-blocking tcp-no-flag esr(config)# ip firewall screen spy-blocking tcp-all-flags esr(config)# logging firewall screen spy-blocking tcp-all-flags
Включаем защиту от фрагментированных ICMP-пакетов и логирование механизма защиты:
esr(config)# ip firewall screen suspicious-packets icmp-fragment esr(config)# logging firewall screen suspicious-packets icmp-fragment
Включаем защиту от ICMP-пакетов большого размера и логирование механизма защиты:
esr(config)# ip firewall screen suspicious-packets large-icmp esr(config)# logging firewall screen suspicious-packets large-icmp
Включаем защиту от незарегистрированных IP-протоколов и логирование механизма защиты:
esr(config)# ip firewall screen suspicious-packets unknown-protocols esr(config)# logging firewall screen suspicious-packets unknown-protocols