Я продолжаю уже можно сказать серию заметок по обзору настройки syslog-ng для сбора логов с домашних сетевых устройств обеспечивающих меня доступом ко всемирной паутине.
Сперва это был Prestige Zyxel 660HW-T1, потом Zyxel Keenetic Lite, а теперь и многофункциональный интернет-центр ZyXEL Keenetic Giga 2. Посмотрим, как дела обстоят у него. Все также просмотр логов точки доступа через Web-интерфейс не отличается удобством, исходя из этого либо на сервере или рабочей станции поднимем syslog-ng. Я рассмотрю установку на примере рабочей станции. Все дальнейшие действия буду проводить на системе используемой в повседневности, а именно Ubuntu 12.04 Desktop amd64. И так есть:
Исходная система:
ekzorchik@srv-monitor:~$ uname -a && lsb_release -a
Linux srv-monitor 3.2.0-23-generic #36-Ubuntu SMP Tue Apr 10 20:39:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
Description: Ubuntu 12.04 LTS
Release: 12.04
Codename: precise
Для справки:
- Локальная сеть 192.168.1.0/24
- Моя рабочая станция под управлением Ubuntu 12.04 Desktop amd64, имеющий адрес 192.168.1.33
- Интернет центр ZyXEL Keenetic Giga 2 которому присвоен IP-адрес 192.168.1.9
Произведем установку syslog-ng из репозитариев Ubuntu 12.04 Desktop:
ekzorchik@srv-monitor:~$ sudo apt-get install syslog-ng
Создадим резервную копию конфигурационного файла который будем править:
ekzorchik@srv-monitor:~$ sudo cp /etc/syslog-ng/syslog-ng.conf /etc/syslog-ng/syslog-ng.conf.backup
ekzorchik@srv-monitor:~$ sudo touch /var/log/zyxel_internet_giga2.log
После этого займемся редактированием и добавляем туда следующие строки:
ekzorchik@srv-monitor:~$ sudo nano /etc/syslog-ng/syslog-ng.conf
очищаем конфигурационный файл и приводим к виду указанному ниже
@version: 3.3
далее следует:
# настраиваем новый источник – сеть.
# теперь syslog-ng будет слушать 514-й udp-порт.
source s_udp {
udp();
};
# определяем новое хранилище логов с именем df_zyxel.
# всё что будет направляться в это хранилище будет
# складываться в файл /var/log/zyxel_internet_giga2.log.
destination df_zyxel {
file(“/var/log/zyxel_internet_giga2.log”);
};
# определяем новый фильтр. фильтровать будем по адресу клиента.
# здесь нужно указать ip-адрес интернет-центра
filter f_zyxel {
host(“192.168.1.9”);
};
# настраиваем логирование информации с источника s_udp,
# попадающей под правила фильтра f_zyxel, в хранилище df_zyxel
log {
source(s_udp);
filter(f_zyxel);
destination(df_zyxel);
};
После этого нужно перезапустить syslog-ng:
ekzorchik@srv-monitor:~$ sudo invoke-rc.d syslog-ng restart
Проверяем, работает ли сервис в системе:
ekzorchik@srv-monitor:~$ sudo netstat -anp | grep syslog-ng
udp 0 0 0.0.0.0:514 0.0.0.0:* 3273/syslog-ng
, сервис работает и слушает порт 514 в системе на прием сообщений.
Далее заходим в веб-интерфейс интернет-центра ZyXEL Keenetic Giga 2 и идём в меню “Система” -> “Журнал“.
указываем, что теперь журнал направлять на удалённый syslog сервер и прописываем IP-адрес этого сервера (моя рабочая станция) на котором настроена служба syslog.
По окончании нажимаем кнопку: “Применить”. И появляется сообщение, что настройки успешно применились.
Перезагружать интернет-центр уже не нужно.
Теперь вся информация, которую раньше вы смотрели через веб-интерфейс посредством меню “Система” -> “Журнал“- можно наблюдать и на рабочей станции в файле /var/log/zyxel_internet_giga2.log.
Смотрим в реальном времени, что пишется в лог:
ekzorchik@srv-monitor:~$ sudo tail -f /var/log/zyxel_internet_giga2.log
Aug 15 22:54:48 192.168.1.9 ndm: Network::StaticNat: static NAT rule has been added.
Aug 15 22:54:51 192.168.1.9 ndm: Core::ConfigurationSaver: configuration saved.
Aug 15 22:55:03 192.168.1.9 ndm: Network::StaticNat: static NAT rule has been removed.
Aug 15 22:55:06 192.168.1.9 ndm: Core::ConfigurationSaver: configuration saved.
Aug 15 22:55:52 192.168.1.9 ndm: Core::ConfigurationSaver: configuration saved.
Aug 15 23:04:52 192.168.1.9 wmond: WifiMaster0/AccessPoint0: (RT2860) STA(90:c1:15:1f:04:81) had associated successfully.
Aug 15 23:04:52 192.168.1.9 wmond: WifiMaster0/AccessPoint0: (RT2860) STA(90:c1:15:1f:04:81) set key done in WPA2/WPA2PSK.
Aug 15 23:04:53 192.168.1.9 ndhcps: _WEBADMIN: get request with vendor identifier dhcpcd 4.0.15.
Aug 15 23:04:53 192.168.1.9 ndhcps: _WEBADMIN: DHCPDISCOVER received from 90:c1:15:1f:04:81.
Aug 15 23:04:53 192.168.1.9 ndhcps: _WEBADMIN: sending OFFER of 192.168.1.39 to 90:c1:15:1f:04:81.
Aug 15 23:04:53 192.168.1.9 ndhcps: _WEBADMIN: get request with vendor identifier dhcpcd 4.0.15.
Aug 15 23:04:53 192.168.1.9 ndhcps: _WEBADMIN: DHCPREQUEST received for 192.168.1.39 from 90:c1:15:1f:04:81.
Aug 15 23:04:53 192.168.1.9 ndhcps: _WEBADMIN: sending ACK of 192.168.1.39 to 90:c1:15:1f:04:81.
Aug 15 23:05:00 192.168.1.9 wmond: WifiMaster0/AccessPoint0: (RT2860) STA(90:c1:15:1f:04:81) had deauthenticated.
Исходя из этого можно по такому же принципу организовать пересылку всех логов с интернет-центра ZyXEL на сервер на котором осуществляется централизованное хранение логов работы, как сетевого оборудования так и различных операционных систем.
На текущий момент размер лога:
ekzorchik@srv-monitor:~$ dir -hl /var/log/zyxel_internet_giga2.log
-rw——- 1 root root 562 Aug 15 22:55 /var/log/zyxel_internet_giga2.log
Этот лог занимает не так уж и много места, но всё-таки полезно произвести ротацию. Для того достаточно создать файл ekzorchik@srv-monitor:~$ sudo touch /etc/logrotate.d/zyxel_keenetic_giga2 следующего содержания:
ekzorchik@srv-monitor:~$ sudo nano /etc/logrotate.d/zyxel_keenetic_giga2 — приведем к виду ниже:
/var/log/zyxel_internet_giga2.log { weekly rotate 5 compress missingok }
Теперь раз в неделю лог будет ротироваться и будут сохраняться последние пять ротированых логов.
Как видите интернет центры домашнего пользования отличаются выдаваемой информацией о своей работе. Могу от себя сказать, что работа данного оборудования меня очень порадовала. Простота и расширенный лог работы лучше позволяет понять, а как это все работает. Следите за публикацией реальных заметок на моем блоге. И конечно же обращайтесь по почте если что не совсем понятно в заметке. На этом всё, с уважением ekzorchik.