shorewallのLogging

shorewallは複雑なFirewallの設定ができるので重宝しますが、なぜかLogメッセージが/var/log/messageと/var/log/syslogの両方に書き込みsyslogが見づらくなるので修正してみました。shorewallの新旧バージョンによって設定が異なるのようなので整理しました。shorewall.confでログ先を変更しても反映されないのでrsyslog側でメッセージを振り分けます。

Shorewall version 5.0.15.6 [Debian GNU/Linux 9]

/etc/shorewall/shorewall.conf

LOGFILE=/var/log/messages

/etc/rsyslog.d/shorewall.conf

:msg, contains, "Shorewall:" /var/log/shorewall.log
& stop

/etc/logrotate.d/shorewall

/var/log/shorewall-init.log {
    weekly
    rotate 4
    compress
    missingok
    create 0640 root adm
}

/var/log/shorewall {
    weekly
    rotate 52
    compress
    compressext .gz
    missingok
    create 0640 root adm
}

Shorewall version 5.2.3.2 [Debian GNU/Linux 10]

/etc/rsyslog.d/shorewall.conf

:msg, contains, "net-fw" /var/log/shorewall.log
& stop

/etc/logrotate.d/shorewallは上記に同じ