Способы логирования
Существует шесть способов сбора лог-информации с устройств Cisco:- Console logging - вывод сообщений на консоль маршрутизатора, т.е. для их чтения нужно быть подключенным к консоли.
- Buffered logging - в этом случае все лог-сообщения будут размещаться в оперативной памяти маршрутизатора. Просмотреть их можно командой show logging, но следует помнить, что буфер сбора логов ограничен и при большом количестве сообщений старые записи будут затёрты более новыми и будут потеряны. Размер буфера можно менять.
- Terminal logging - выводятся лог-сообщения на VTY терминал. По умолчанию функция отключена, чтобы включить надо ввести в терминале команду terminal monitor.
- Syslog - устройство будит посылать лог сообщения на один или несколько внешних syslog серверов.
- SNMP traps - устройство Cisco будет посылать посылать SNMP сообщения (traps) на один или несколько SNMP серверов для сбора событий происходящих на маршрутизаторе.
- AAA accounting - если использовать AAA, то можно заставить устройство отправлять информацию о подключениях администраторов к устройству и командах выполненных на маршрутизаторе во время этого подключения на NAS (Network Access Server) сервер.
- 0 Emergencies Система не работоспособна
- 1 Alerts Необходимо срочное вмешательство
- 2 Critical Критические события
- 3 Errors Сообщения о ошибках
- 4 Warning Всевозможные предупреждения
- 5 Notifications Различные важные уведомления
- 6 Informational Информационные сообшения
- 7 Debugging Отладочые сообщения
Метки времени
В записях логов Cisco возможно использование двух типов меток времени – промежуток времени, прошедший с момента включения устройства (uptime) и текущие дата и время (по-умолчанию).Для настройки uptime используется команда:
(config)#service timestamps log uptimeДля того чтобы заставить маршрутизатор Cisco снабжать все лог сообщения подробным временем их происхождения, следует использовать команду service timestamps log datetime, которая имеет несколько опций:
- msec - указывать миллисекунды в каждой лог записи, без этой опции лог сообщения будут иметь временные отметки глубиной до секунды;
- localtime - эта опция указывает устройству использовать местное время для лог записей, рекомендуется использовать её для упрощения понимания логов. Однако следует помнить о возможной путанице, если несколько маршрутизаторов с разных часовых поясов,буду писать свои логи на один syslog сервер;
- show-timezone - при помощи данной опции можно заставить устройство cisco указывать текущий часовой пояс в каждом лог сообщении, при помощи этой опции можно упростить разбор лог сообщений от нескольких устройств с разными часовыми поясами;
Ещё пара команд для правильного отображения времени в логах.
Для отображения локального времени в логах в памяти устройства применяется команда:
(config)#service timestamps log datetime localtimeНу и ещё одна команда для режима отладки (debugging):
(config)#service timestamps debug datetime localtime
Console logging
Как было сказано выше, для их чтения этого вида логов нужно быть подключенным к консоли устройства. По-умолчанию уровень логирования на консоле 5 (Notifications). Поменять его можно командой:R7(config)# logging console 6или
R7(config)# logging console informationalТакже может быть очень полезной команда logging synchronous на консоль, это упростит чтение логов.
Buffered logging
Запись логов в оперативную память. Как правило, сейчас устройства обладают достаточным количеством оперативной памяти поэтому лог размером, например 52000 байт не будет критичным для устройства Cisco.R7(config)# logging buffered 52000
R7(config)# logging buffered informational
Terminal logging
Terminal logging настроен по-умолчанию, но на VTY терминалы логи не выводятся. Для включения вывода логирования, в момент когда вы подключены к устройству по telnet или ssh необходимо ввести команду terminal monitor в привилегированном режиме. Отключение вывода лог сообщений: terminal no monitorR7(config)# logging monitor warning
R7# terminal monitor
Syslog
Вывод лог информации на syslog сервер. Является наиболее удобным методом анализа логов, в случае, когда имеется большое количество устройств. Метод позволяет централизовать сбор логов. Здесь используются настройки syslog, настраивается категория (facility), уровень логов отправляемых на сервер, ip-адрес syslog сервера и адрес устройства с которого будут отсылаться логи (здесь логично использовать Loopback):R7(config)#logging facility local2Ещё дополнительна команды для удобства чтения логов, она добавляет имя устройства к каждой записи:
R7(config)#logging trap notifications
R7(config)#logging source-interface Loopback1
R7(config)#logging host 10.10.10.1
R7(config)logging origin-id hostname
Безопасность syslog сервера
По-умолчанию большинство syslog серверов принимают все сообщения. Поэтому злоумышленник может зафлудить сервер ложными или не интересными нам сообщениями. Чтобы этого избежать, считается хорошим тоном ограничить прием сообщений syslog сервером, таким образом чтобы он мог работать только с внутренней сетью предприятия, либо (если предприятие большое и ip пространство хорошо спланировано) только с сетями выделенными под управление сетевыми устройствами. Сервер принимает сообщения на порту 514 (UDP).
Также контроль целостности лог файла можно косвенно осуществлять по порядковому номеру записи. У каждой последующей записи увеличивается порядковый номер. Если злоумышленник имеет доступ к лог файлу, то порядковые номера он конечно сможет подделать. Включение порядковых номеров в лог сообщениях осуществляется командой:
R7(config)#service sequence-numbers
Ограничение количества лог сообщений
Это бывает необходимо, так как при происхождении некоторых событий, устройство может сгенерировать тысячи сообщений с секунду, что может перегрузить сервер. Делается это командой:R7(config)#logging rate-limit all 15Но логичнее ставить ограничение по уровням.
R7(config)#logging rate-limit 15 except warningsВ первом случае ограничиваются все сообщения 15-ю сообщениями в секунду, во втором случае ограничивается 15-ю сообщениями в секунду только уровень 4 (Warning).
AAA Accounting
Позволяет получить дополнительную информацию с устройств Cisco, которая не можут быть получена вышеуказанными способами. Для этого может понадобиться сервер TACACS. Об ААА и TACACS я писал здесь.
Полезные команды связанные с логированием
Логирование нарушения списков доступа (ACL). Бывает полезно при разборе сетевых. инцидентов. В стандартных списков доступа в интересующей стройке указывается параметр log, который позволяет фиксировать тип, дату и время нарушения списка доступа. В расширенном списке доступа можно в интересующей строке внести параметр log-input позволяющий получать ещё и такую информацию как интерфейс и MAC-адрес источника.
На контроле списка доступа можно построить логирование попыток доступа к устройству Cisco.
ip access-list extended acl-CiscoAccessНа устройство могут заходить только админы из сети 10.10.10.0/26, все остальные попытки будут отклоняться и логироваться.
permit 10.10.10.0 0.0.0.63
deny any log-input
...
line vty 0 15
access-class acl-CiscoAccess in
Логирование событий серверов и клиентов, работающих на устройстве. Например, для настройки логирования событий SSH сервера используется команда:
(config)#ip ssh logging eventsДля логирования событий синхронизации времени по NTP:
(config)#ntp logging
Дальнейшие команды актуальны только при отсутствии TACACS сервера.
Запись в журнал всех попыток подключения к устройству:(config)# login on-failure logЗапись в лог всех вводимых команд:
(config)# login on-success log
archiveДля настройки логирования информации о переключения пользователя в привилегированный режим и изменения уровня его привилегий (команды enable/disable) на устройстве Cisco используется команда:
log config
logging enable
notify syslog contenttype plaintext
hidekeys
(config)#logging userinfo
А слать логи на несколько внешних syslog серверов как выглядит команда?
AntwortenLöschenЧестно говоря в моих сетях никогда не было более одного syslog-сервера, поэтому даже не интересовался этим вопросом. Теперь после смены работы (как собственно и страны проживания) мой фокус сместился в сторону Juniper и HP-Aruba. Так что и поэкспериментировать сейчас негде, разве что в GNS3.
Löschenспасибо!
AntwortenLöschenПросто дописываете ip адрес логсервера еще и все. Н-р: logging host 20.20.20.1
Löschen