How can I enable or setup log message in the iptables firewall?

by on March 28, 2006 · 1 comment· LAST UPDATED March 28, 2006

in

Linux firewall, iptables has the capability to log network activity to the syslog system. This is very useful to detect problems as well as to generate reports of network activity. You can also use this to detect all intrusion detection or unwanted incoming/outgoing connections etc.

LOG module
To enable logging option you need to use LOG iptables/kernel module. It turn on kernel logging of matching packets. When this option is set for a rule, the Linux kernel will print some information on all matching packets (like most IP header fields) via the kernel log.

For example, drop all connection coming from hacker/cracker IP address 202.54.10.202 and log them to syslog:

iptables -A INPUT -s 202.54.10.202 -m limit --limit 5/m --limit-burst 7 -j LOG --log-prefix ‘** FW-DROP-HACKER **’

iptables -A INPUT -s 202.54.10.202 -j DROP

Firewall rules are checked in a sequential manner So first you logged message with first rule and second rule drops the connection.

Where,

  • -m limit --limit 5/m: This will prevent excessive log data to /var/log/message file from being granted. The limit specified is 5/minute (it is maximum average matching rate). And a burst rate of 7 is specified (it is maximum initial number of packets to match).
  • --log-prefix ‘** FW-DROP-HACKER **’: This is nothing but log prefix to dropped rule. Useful to search using grep command:

# grep ‘** FW-DROP-HACKER **’ /var/log/message

LOG module supports other options, read man page of iptables for more information.

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!
1 David February 4, 2010 at 6:17 pm

Great information!

Comments on this FAQ are closed. If you'd like to continue the discussion on this topic, you can do so at our forum.

Previous post:

Next post: