UFW: log fuera de syslog

UFW por defecto loguea los bloqueos en el archivo syslog. Para hacer que loguee en otro archivo que queramos en lugar de syslog, crearemos el archivo /etc/rsyslog.d/20-ufw.conf y dentro escribiremos lo siguiente:

# Log kernel generated UFW log messages to file
:msg,contains,"[UFW " /var/log/ufw.log

# Uncomment the following to stop logging anything that matches the last rule.
# Doing this will stop logging kernel generated UFW log messages to the file
# normally containing kern.* messages (eg, /var/log/kern.log)
& ~

Si queremos que los logs se roten para que no ocupen tanto, crearemos el archivo /etc/logrotate.d/ufw con el siguiente contenido:

/var/log/ufw.log
{
rotate 7
daily
missingok
notifempty
delaycompress
compress
postrotate
invoke-rc.d rsyslog reload > /dev/null
endscript
}

Fuente: http://vincom2.wordpress.com/2010/04/07/logging-ufw-to-a-seperate-logfile/

Configurar un firewall de manera simple con ufw

He encontrado este programa para gestionar el firewall y me ha parecido muy bueno. Este es ufw.

Para instalarlo (está en Squeeze y Sid), aptitude install ufw.
Para ponerlo en funcionamiento a través de SSH, haremos lo siguiente:

ufw default deny
ufw logging on
ufw allow ssh/tcp
ufw enable

Si no lo hacemos por SSH y no queremos abrir ese puerto, omitiremos la línea ufw allow ssh/tcp

Para abrir rangos de puertos:

ufw allow proto tcp to any port 1000:2000

Para permitir un rango de IPs:

ufw allow from 1.2.0.0/16 to any port 1234

Hay ejemplos en español en la Wikipedia: http://es.wikipedia.org/wiki/Uncomplicated_Firewall
O en inglés: https://help.ubuntu.com/community/UFW