syslog
Dê uma olhada na página man de iptables
. Ele mostra um alvo chamado LOG
, que pode fazer o que você quiser.
Exemplo
-
Defina o nível de registro para
LOG
para 4.# DROP everything and Log it iptables -A INPUT -j LOG --log-level 4 iptables -A INPUT -j DROP
-
Configure
syslog.conf
para gravar essas mensagens em um arquivo separado.# /etc/syslog.conf kern.warning /var/log/iptables.log
-
Reinicie o syslogd.
Debian / Ubuntu
$ sudo /etc/init.d/sysklogd restart
Fedora / CentOS / RHEL
$ sudo /etc/init.d/syslog restart
NOTA: Este método de registro é chamado de prioridades fixas. Eles são números ou nomes (1,2,3,4, ..) ou (DEBUG, WARN, INFO, etc.).
rsyslog
Se por acaso você estiver usando rsyslog
, você pode criar um filtro baseado em propriedade da seguinte forma:
# /etc/rsyslog.conf
:msg, contains, "NETFILTER" /var/log/iptables.log
:msg, contains, "NETFILTER" ~
Em seguida, adicione o thils à sua lista de regras do iptables que você deseja registrar:
–log-prefix NETFILTER
Como alternativa, você também pode registrar as mensagens usando esse tipo de filtro de propriedade:
:msg, startswith, "iptables: " -/var/log/iptables.log
& ~
:msg, regex, "^\[ *[0-9]*\.[0-9]*\] iptables: " -/var/log/iptables.log
& ~
OBSERVAÇÃO: Este segundo método não exige alterações em iptables
.