Shorewall déporter les logs dans un fichier spécifique

 

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.