Сохранение журнала системных сообщений (логов) на Syslog-сервере

Как организовать сбор логов с интернет-центра на Syslog-сервер, установленный на один из компьютеров локальной сети?

Интернет-центры серии Keenetic могут отправлять системные журналы (логи), содержащие предупреждения, системные сообщения и т.п., на специальный сервер Syslog, предназначенный для сбора и хранения системных сообщений.

В данной статье приведем примеры отправки логов с интернет-центра серии Keenetic на Kiwi Syslog Server Free Edition и Tftpd32, находящиеся в локальной домашней сети.

Пример 1. Настройка Syslog-сервера Kiwi Syslog Server Free Edition и интернет-центра Keenetic.

1.1. Скачайте программу Kiwi Syslog Server Free Edition на компьютер с сайта: http://www.kiwisyslog.com/free-edition.aspx

1.2. Запустите установщик программы. Выберите пункт Install Kiwi Syslog Server as an Application (Установить программу в качестве обычного приложения).

1.3. Далее выберите компоненты, которые вы хотите установить, и папку, в которой будет установлена программа.  

Затем нажмите кнопку Install для инсталляции программы на компьютере и дождитесь окончания процесса установки.

1.4. Далее установите галочку в Run Kiwi Syslog Server для запуска программы и нажмите кнопку Finish.

1.5. Откроется окно программы Kiwi Syslog Server. Зайдите в меню File > Setup для продолжения настройки программы. 

1.6. В меню Rules > Default > Actions нажмите на Log to file. Здесь вы можете указать путь к папке, где будут храниться лог-файлы и имя файла. Для удобства записи логов по дате укажите формат файла %DateISO.txt

1.7. Далее перейдите к меню Inputs и добавьте здесь IP-адрес интернет-центра в домашней сети (в нашем примере интернет-центр имеет IP-адрес 192.168.1.1). Нажмите кнопку OK для сохранения настроек. 

Затем выйдите из программы, нажав на меню File > Exit

1.8. Теперь переходите к настройке интернет-центра. Подключитесь к веб-конфигуратору устройства, зайдите в меню Система > Журнал, в поле Отправлять журнал на внешний сервер укажите IP-адрес компьютера, на котором установлена и запущена программа Kiwi Syslog Server (в нашем примере компьютер с Syslog-сервером имеет IP-адрес 192.168.1.33) и нажмите кнопку Применить.

После нажатия кнопки Применить вы увидите сообщение server 192.168.1.33: added.

1.9. Вновь запустите программу Kiwi Syslog Server. Если на вашем компьютере включен Брандмауэр Windows (Firewall) или другая программа-файервол, вы можете увидеть сообщение о том, что брандмауэр заблокировал приложение:

Нажмите на кнопку Разрешить доступ (Allow) для корректной работы программы.

1.10. Далее появится окно программы, в котором станут отображаться системные логи с интернет-центра Keenetic.

1.11. Теперь на компьютере перейдите в папку, в которой должны сохраняться лог-файлы (путь к папке вы указали в пункте 1.6. данной инструкции). Вы увидите лог-файл формата [дата].txt, который можно просмотреть в любом текстовом редакторе (например, в Блокноте). 

 


 

Пример 2. Настройка Syslog-сервера Tftpd32 и интернет-центра Keenetic.

2.1. Скачайте программу Tftpd32 на компьютер с сайта: http://tftpd32.jounin.net/tftpd32_download.html
Несмотря на название, программа Tftpd32 включает в себя простой в настройке Syslog-сервер.

2.2. Установите программу и запустите ее. Если на вашем компьютере включен Брандмауэр Windows (Firewall) или другая программа-файервол, вы можете увидеть сообщение о том, что брандмауэр заблокировал приложение:

Нажмите на кнопку Разрешить доступ (Allow) для корректной работы программы.

2.3. Вы увидите окно программы Tftpd32. В поле Server interfaces укажите IP-адрес компьютера, на котором будет работать данная программа (Syslog-сервер).

2.4. Затем нажмите кнопку Settings. Убедитесь, что на закладке GLOBAL в разделе Start Services установлена галочка в поле Syslog Server. Далее перейдите на закладку SYSLOG и установите галочку в поле Save syslog message To file и укажите имя лог-файла (например, syslog.txt).

2.5.  Теперь переходите к настройке интернет-центра. Подключитесь к веб-конфигуратору устройства, зайдите в меню Система > Журнал, в поле Отправлять журнал на внешний сервер укажите IP-адрес компьютера, на котором установлена и запущена программа Tftpd32 (в нашем примере компьютер с Syslog-сервером имеет IP-адрес 192.168.1.33) и нажмите кнопку Применить.

После нажатия кнопки Применить вы увидите сообщение server 192.168.1.33: added.

2.6. Теперь в окне программы Tftpd32 на вкладке Syslog server вы должны увидеть системные сообщения (логи), поступающие с интернет-центра Keenetic. 

В папке с программой Tftpd32 также будет сохраняться системный журнал вашего интернет-центра в указанный файл (в нашем примере в файл syslog.txt). Данный файл можно просмотреть в любом текстовом редакторе (например, в Блокноте).

 

Примечание.

 

1. Категории журналирования (local0 - local7) на внешнем Syslog-сервере менять нельзя.

 

2. При необходимости можно выполнить смену номера порта для работы с Syslog-сервером следующей командой:

(config)> system log server {address[:port]}

После выполнения этой команды добавляется ещё один сервер (идентичный предыдущему), но с другим номером порта. Для смены порта нужно удалить старую запись целиком и задать новую.
Веб-интерфейс при смене настроек удаляет все имеющиеся записи и добавляет новую.

 
3. Для пользователей операционных систем семейства Linux (Debian, Ubuntu, Mint, Fedora, SuSe ...) можно организовать сбор логов, например, с помощью компонента/демона rsyslog. Rsyslog способен обрабатывать журнальные сообщения syslog. Rsyslog представляет возможность ведения системного журнала через TCP, SSL, TLS и RELP (Reliable Event Logging Protocol), запись в базы данных (MySQL, PostgreSQL, Oracle и другие), уведомление по электронной почте, полностью конфигурируемый формат сообщений. Rsyslog с легкостью заменяет стандартный syslogd и понимает синтаксис его конфигурационных файлов.
Приведем пример сбора логов с роутера ZyXEL.
Сначала нужно убедиться, что в вашей ОС уже установлен rsyslog, и при необходимости установить его: sudo apt-get install rsyslog
Конфигурация сервера размещена в нескольких файлах:
/etc/rsyslog.conf (основной конфиг)
/etc/rsyslog.d/50-default.conf (конфигурация правил)
В файле /etc/rsyslog.conf в разделе Modules нужно снять комментарии (т.е., убрать #) с модулей, через которые будут поступать логи. В случае с роутером ZyXEL это обычный UDP на 514 порту:
#Provide UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
В файле /etc/rsyslog.d/50-default.conf собраны правила для записи потоков логов в разные файлы. Нужно добавить настройки роутера. На роутере установлен facility local0.
Добавляем соответствующую строчку в файл 50-default.conf:
local0.192.168.1.1 /var/log/syslog/zyxel-router.log
192.168.1.1 — это IP-адрес роутера (при необходимости, можно добавить сеть, например 192.168.1.0/24, если нужно собирать логи с нескольких устройств).
В завершении настройки нужно будет перезапустить демон rsyslog: sudo service rsyslog restart
После выполнения правильной настройки, в лог-файле (в нашем примере в zyxel-router.log) будут сохраняться логи (системные сообщения).
Если вам неудобно читать логи в консоли, можно визуализировать отчетность и воспользоваться пакетом LogAnalizer, представлящим веб-интерфейс для работы с логами.
Внимание! Rsyslog и LogAnalizer указаны в данной статье в качестве рекомендации. Дополнительную информацию по работе с указанными пакетами ищите в Интернете!

KB-3566

Была ли эта статья полезной?
Пользователи, считающие этот материал полезным: 10 из 10
Еще есть вопросы? Отправить запрос

Комментарии

0 комментариев

Войдите в службу, чтобы оставить комментарий.