Par défaut les logs de shorewall se retrouvent dans le fichier /var/log/messages. Au bout d'un moment cela peut devenir génant pour analyser ces logs.
On va donc déporter ces logs dans un fichier spécifique.
On va utiliser ulogd pour gérer les logs de shorewall
# apt-get install ulogd
On modifie le fichier /etc/ulogd.conf
Remplacer :
[LOGEMU]
file="/var/log/ulog/syslogemu.log"
sync=1
Par
[LOGEMU]
file="/var/log/shorewall.log"
sync=1
Il faut créer le fichier :
# touch /var/log/shorewall.log
Dans le fichier /etc/shorewall/shorewall.conf :
LOGFILE=/var/log/shorewall.log
On dois créer le fichier /etc/shorewall/params :
LOG=ULOG
Remplacer dans tout les fichiers de configuration de shorewall "info" par "$LOG" :
# sed -i 's/info/$LOG/g' /etc/shorewall/*
Pour finir on redémarre shorewall et ulogd :
# /etc/init.d/ulogd restart
# /etc/init.d/shorewall restart
On fini en modifiant le fichier /etc/logrotate.d/shorewall pour ajouter la rotation de logs sur ce nouveau fichier :
/var/log/shorewall-init.log {
weekly
rotate 4
compress
missingok
create 0640 root adm
}
/var/log/shorewall.log {
weekly
rotate 4
compress
missingok
create 0640 root adm
}
On peut maintenant sans problèmes recherches les logs de shorewall dans le fichier /var/log/shorewall.log.