Не так давно автор этих строк стал обладателем Wi-Fi-точки D-Link DWL-2100AP, которая умеет использовать для хранения логов syslog-сервер. Это очень полезная особенность, поскольку представление логов точки доступа в веб-интерфейсе не отличается юзабельностью. Далее будет показано как настроить syslog-ng на сервере для сбора и хранения логов с Wi-Fi-точки.
Итак. Начальные условия:
- Локальная сеть 192.168.2.0/24.
- Сервер под управлением Ubuntu Server 8.04, имеющий адрес 192.168.2.1.
- Wi-Fi-точка, которой присвоен IP-адрес 192.168.2.5.
Если ваша сеть имеет другое адресное пространство то во всём написанном ниже вам нужно подставлять свои адреса.
По умолчанию в Debian/Ubuntu используется морально устаревший (это исключительно мнение автора) syslogd. Если вы ещё не заменили его на syslog-ng то сделайте это. Для этого достаточно ввести одну единственную команду:
apt-get install syslog-ng
После того как syslog-ng установлен и запущен открываем в редакторе файл /etc/syslog-ng/syslog-ng.conf и добавляем туда следующие строки:
# настраиваем новый источник - сеть. # теперь 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.2.5"); }; # настраиваем логирование информации с источника s_udp, # попадающей под правила фильтра f_wifi, в хранилище df_wifi log { source(s_udp); filter(f_wifi); destination(df_wifi); };
После этого нужно перезапустить syslog-ng:
invoke-rc.d syslog-ng restart
Далее заходим в веб-интерфейс Wi-Fi-точки и идём в меню "Status" -> "Log" и нажимаем там кнопку "Log Server", затем вводим в поле "Log Server / IP address" адрес сервера логов (в данном случае 192.168.2.1). Всё. Остаётся нажать кнопку "Apply" и дождаться завершения перезагрузки точки доступа.
Теперь вся информация, которую раньше вы смотрели через веб-интерфейс точки доступа в меню "Status" -> "Log", вы можете увидеть на сервере в файле /var/log/wifi.log.
Этот лог занимает не так уж и много места, но всё-таки полезно их ротировать. Для того достаточно создать файл /etc/logrotate.d/wifi следующего содержания:
/var/log/wifi.log { weekly rotate 5 compress missingok }
Теперь раз в неделю лог будет ротироваться и будут сохраняться последние пять ротированых логов.
Приятной работы!
Alex 2008-08-06 16:21:59 (#)