Реализуем возможность сбора и хранения логов с Wifi-точки Prestige 660HW-T1. Посколько просмотр логов точки доступа через Web-интрефейс не отличается удобством. На сервере или рабочей станции поднимем syslog-ng.
Исходная система:
keiz@vkeiz:~$ cat /etc/issue && uname -a
Ubuntu 10.10 \n \l
Linux vkeiz 2.6.35-22-generic #33-Ubuntu SMP Sun Sep 19 20:32:27 UTC 2010 x86_64 GNU/Linux
- Локальная сеть 192.168.1.0/24
- Сервер под управлением Ubuntu Server 10.10, имеющий адрес 192.168.1.37
- Wi-Fi-точка, которой присвоен IP-адрес 192.168.1.1
Произведем установку syslog-ng из репозитариев Ubuntu:
keiz@vkeiz:~$ sudo aptitude install syslog-ng
Создадим резервную копию конфигурационного файла который будем править:
keiz@vkeiz:~$ sudo cp /etc/syslog-ng/syslog-ng.conf /etc/syslog-ng/syslog-ng.conf.backup
После этого займемся редактированием keiz@vkeiz:~$ sudo nano /etc/syslog-ng/syslog-ng.conf и добавляем туда следующие строки:
все предыдущие можно удалить, кроме @version: 3.0
далее следует:
# настраиваем новый источник - сеть. # теперь syslog-ng будет слушать 514-й udp-порт. source s_udp { udp(); }; # определяем новое хранилище логов с именем df_wifi. # всё что будет направляться в это хранилище будет # складываться в файл /var/log/wifi.log. destination df_wifi { file("/var/log/wifi.log");
}; # определяем новый фильтр. фильтровать будем по адресу клиента. # здесь нужно указать ip-адрес wi-fi точки filter f_wifi { host("192.168.1.1"); }; # настраиваем логирование информации с источника s_udp, # попадающей под правила фильтра f_wifi, в хранилище df_wifi log { source(s_udp); filter(f_wifi); destination(df_wifi); };
После этого нужно перезапустить syslog-ng:
keiz@vkeiz:~$ sudo invoke-rc.d syslog-ng restart * Stopping system logging syslog-ng [ OK ] * Starting system logging syslog-ng [ OK ] keiz@vkeiz:~$
Далее заходим в веб-интерфейс Wi-Fi-точки и идём в меню “Advanced Setup” -> “Logs” и нажимаем там кнопку “Log Settings“, затем вводим в поле “Unix Syslog: Syslog IP Address:” адрес сервера логов (в данном случае 192.168.1.37). И активируем выставив галочку: Active
Всё. Остаётся нажать кнопку “Apply” и дождаться завершения перезагрузки точки доступа.
Теперь вся информация, которую раньше вы смотрели через веб-интерфейс точки доступа в меню “Advanced Setup” -> “Logs“-> «View log», вы можете увидеть на сервере в файле /var/log/wifi.log.
Смотрим в реальном времени, что пишется в лог:
keiz@vkeiz:~$ sudo tail -f /var/log/wifi.log
Jul 6 14:53:18 192.168.1.1 P660HW-T1: src=”217.21.33.78:27716″ dst=”213.85.36.136:10715″ msg=”Firewall default policy: UDP (W to W/PRESTIGE)” note=”ACCESS BLOCK” devID=”C9A424″ cat=”Access Control”
Jul 6 14:53:18 192.168.1.1 P660HW-T1: src=”151.77.137.24:43934″ dst=”213.85.36.136:10715″ msg=”Firewall default policy: UDP (W to W/PRESTIGE)” note=”ACCESS BLOCK” devID=”C9A424″ cat=”Access Control”
Jul 6 14:53:18 192.168.1.1 P660HW-T1: src=”213.85.201.250:20668″ dst=”213.85.36.136:10715″ msg=”Firewall default policy: UDP (W to W/PRESTIGE)” note=”ACCESS BLOCK” devID=”C9A424″ cat=”Access Control”
На текущий момент размер лога:
keiz@vkeiz:~$ dir -hl /var/log/wifi.log
-rw——- 1 root root 484K 2012-07-06 15:03 /var/log/wifi.log
Этот лог занимает не так уж и много места, но всё-таки полезно произвести ротацию. Для того достаточно создать файл keiz@vkeiz:~$ sudo touch /etc/logrotate.d/wifi следующего содержания:
keiz@vkeiz:~$ sudo nano /etc/logrotate.d/wifi — приведем к виду ниже:
/var/log/wifi.log { weekly rotate 5 compress missingok }
Теперь раз в неделю лог будет ротироваться и будут сохраняться последние пять ротированых логов.
На этом всё!
Автор: ekzorchik