Блог Олега Сердюкова

Настройка syslog-сервера на OS X 10.9

Три года назад я писал о настройке syslog-сервера для получения сообщений с TimeCapsule. Рецепт давно устарел, но меня периодически спрашивают, как это сделать в актуальных версиях OS X.

Сначала нужно включить возможность приёма сообщений по сети (источник):

cd /System/Library/LaunchDaemons
sudo /usr/libexec/PlistBuddy -c "add :Sockets:NetworkListener dict" com.apple.syslogd.plist
sudo /usr/libexec/PlistBuddy -c "add :Sockets:NetworkListener:SockServiceName string syslog" com.apple.syslogd.plist
sudo /usr/libexec/PlistBuddy -c "add :Sockets:NetworkListener:SockType string dgram" com.apple.syslogd.plist

Правлю конфигурацию syslog для отправки сообщений в файл AirPort.log:

$ sudo vim /etc/syslog.conf
    #local0.*                       /var/log/appfirewall.log
    local0.*                        /var/log/AirPort.log

Перезапускаю сервис

sudo launchctl unload com.apple.syslogd.plist
sudo launchctl load com.apple.syslogd.plist

Не забываю создать лог-файл:

$ sudo touch /var/log/AirPort.log

Проверяю, что порт syslog 514/udp слушает:

netstat -an | grep udp | grep 514
    udp6       0      0  *.514                  *.*
    udp4       0      0  *.514                  *.*

или

sudo lsof -i:514 -P
    COMMAND   PID USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
    launchd     1 root   46u  IPv4 0x87ad55bd7a9f5129      0t0  UDP *:514
    launchd     1 root  109u  IPv6 0x87ad55bd7bd296e1      0t0  UDP *:514
    syslogd 66469 root    4u  IPv4 0x87ad55bd7a9f5129      0t0  UDP *:514
    syslogd 66469 root    5u  IPv6 0x87ad55bd7bd296e1      0t0  UDP *:514

Сообщения можно отправлять на syslog-сервер.

Внимание: не проверял

Но вот незадача — в Airport Utility 6 настроить отправку нельзя (сам проверить не могу, вижу по отзывам). Решение — вернуть версию 5.6. Как это сделать не пробовал, нашёл рецепт “AirPort Utility 5.6.1 on OS X 10.9 Mavericks” (не пробовал, не проверял, не гарантирую отсутствия троянов, используйте на свой риск).

Настройка в 5.6:

Если получится, то проверить приход сообщений:

$ tail -f  /var/log/AirPort.log

Или зайти в Console.app и выбрать нужный лог:

Comments