rsyslog設定

投稿者: | 2010年8月10日
Pocket

対象サーバについて

製品名 OpenBlockS 600
OS(kernel ver) Debian lenny(2.6.29)
CPU 600MHz(AMCC PowerPC 405EX)
メモリ 1GB(DDR2 SDRAM)
ストレージ 8GB(Compact Flash)

ポート状態確認

# netstat -an
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State

→UDP:514番は開いていないことを事前に確認します。

コンフィグ設定

ログの量が多いため、下記のtableに記したログファイル以外(/var/log/messageやsyslogなど)には一切出力しないこととします。

当サーバで受信するfacility/level

アプリケーション、ルータからは以下のfacility/levelで送信します。

アプリケーション facility ログファイル
dhcp3-server facility7.* /var/log/dhcp3-server.log
router facility0.* /var/log/router.log
iptables(LOGを指定した場合) kern.debug /var/log/iptables.log

コンフィグ設定

編集するファイル:/etc/rsyslog.conf

# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

...

#
# First some standard log files.  Log by facility.
#
auth,authpriv.*                 /var/log/auth.log
*.*;auth,authpriv.none,local0.none,local7.none;kern.!=debug              -/var/log/syslog

...

local0.*                        /var/log/router.log
local7.*                        /var/log/dhcp3-server.log
kern.=debug                     /var/log/iptables.log

...

*.=debug;\
        auth,authpriv.none;\
        news.none;mail.none;kern.none   -/var/log/debug
*.=info;*.=notice;*.=warn;\
        auth,authpriv.none;\
        cron,daemon.none;\
        mail,news.none;\
        local0,local7.none      -/var/log/messages

上記設定について

$ModLoad imudp
リモートホストのログをUDPで受け付けるためimudpモジュールをロード
$UDPServerRun 514
514番ポートを使用
*.*;auth,authpriv.none,local0.none,local7.none;kern.!=debug -/var/log/syslog

先頭部分で*.*として全facility/levelを当てはめた上で、不要なログを省いている。

今回は新たにfacility=local0とlocal7の全levelと、kern.debugを省いている。

local0.* /var/log/router.log

本設定にて必要なfacility.levelのみを取得する設定を行っている。

iptablesとdhcp3-serverも同様に設定する。

*.=debug;からの3行

levelがdebugのlogを/var/log/debugに保存し、XXX.noneにて不要なログを省いている。

今回は新たにkern.noneにてkern.debugを除外している。

*.=info;*.=notice;*.=warn;から始まる5行

levelがinfo,notice,warnのlogを/var/log/messagesに保存し、XXX.noneにて不要なログを省いている。

今回は新たにlocal0,local7.noneを設定することにより、local0.info、local0.notice、local0.warn、local7.info、local7.notice、local7.warnを除外している。

サービスを再起動します。

# /etc/init.d/rsyslog restart
Stopping enhanced syslogd: rsyslogd.
Starting enhanced syslogd: rsyslogd.
www:/# netstat -an
udp        0      0 0.0.0.0:514             0.0.0.0:*
udp6       0      0 :::514                  :::*

→UDP:514ポートが開放されました。

Pocket

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です