User Tools

Site Tools


wiki:shorewall_custom_logging

This is an old revision of the document!


Shorewall custom logging

Custom log file

First make sure you have logging set. Example in /etc/shorewall/policy

#SOURCE DEST  POLICY    LOG LIMIT:    CONNLIMIT:
#       LEVEL BURST   MASK
# fw-to-all
$FW all ACCEPT - -
# net-to-all
net all DROP info -
# all-to-all
all all DROP info -
#LAST LINE -- DO NOT REMOVE

Example from /etc/shorewall/rules

#############################################################################################################
#ACTION SOURCE          DEST            PROTO   DEST    SOURCE          ORIGINAL        RATE            USER/   MARK
#                                               PORT    PORT(S)         DEST            LIMIT           GROUP
#
LOG:info all all

To log events created by Shorewall in a custom file called “firewall.log” in /var/log directory first edit the /etc/shorewall/shorewall.conf file. Edit this line:

LOGFILE=/var/log/firewall.log

You should also change LOGFORMAT to something like

LOGFORMAT="shorewall log: %s %s"

Actual logging is managed by rsyslog daemon. Create a new file called “firewall.conf” in /etc/rsyslog.d/ and add this:

Debian 7 & 8

:msg, contains, "Shorewall:" -/var/log/firewall.log
& ~

Debian 9

From new version of rsyslog (8.4.2, on Debian 9) use “stop” instead of tilda:

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

Now restart rsyslog service and shorewall

Different approach

Set up firewall.log rotation

Create the file /etc/logrotate.d/firewall and put this in it:

/var/log/firewall.log {
        rotate 4
        weekly
        missingok
        notifempty
        delaycompress
        compress
}

Don't forget to check if startup is enabled in /etc/default/shorewall[6]

Tested on

  • Debian 9,10

See also

wiki/shorewall_custom_logging.1760104264.txt.gz · Last modified: by antisa

Except where otherwise noted, content on this wiki is licensed under the following license: CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki