Comment configurer fail2ban pour lire plusieurs journaux dans une prison?

20

Comment puis-je configurer plusieurs chemins de journal pour la même règle?

J'essaie d'écrire une syntaxe comme celle-ci:

[apache-w00tw00t]
enabled  = true
filter   = apache-w00tw00t
action   = iptables-allports
logpath  = /var/log/apache*/*error.log 
logpath  = /var/www/vhosts/site1.com/log/errorlog 
logpath  = /var/www/vhosts/site1.com/subdom/log/errorlog
logpath  = /var/www/vhosts/site3/log/errorlog
logpath  = /var/www/vhosts/site4/log/errorlog
maxretry = 1

Les chemins sont tous différents, donc je ne peux pas utiliser le RE *

Quelle est la syntaxe correcte pour mettre plus de journaux dans une règle?

Max121
la source

Réponses:

20

J'ai essayé d'utiliser la même syntaxe et je n'ai eu aucune erreur lors du lancement de fail2ban. Essayez ceci dans votre jail.conf et si cela ne fonctionne toujours pas, vous pouvez facilement diviser votre règle en plusieurs avec un seul chemin d'accès, par exemple:

[apache-w00tw00t-1]
enabled  = true
filter   = apache-w00tw00t
action   = iptables-allports
logpath  = /var/log/apache*/*error.log 
maxretry = 1

[apache-w00tw00t-2]
enabled  = true
filter   = apache-w00tw00t
action   = iptables-allports
logpath  = /var/www/vhosts/site1.com/log/errorlog 
maxretry = 1

etc.

Cela devrait enfin fonctionner:

[apache-w00tw00t]
enabled  = true
filter   = apache-w00tw00t
action   = iptables-allports
logpath  = /var/www/vhosts/site1.com/log/errorlog
           /var/log/apache*/*error.log
           /var/www/vhosts/site1.com/subdom/log/errorlog
           /var/www/vhosts/site3/log/errorlog
           /var/www/vhosts/site4/log/errorlog  
maxretry = 1

Vous pouvez consulter http://centoshelp.org/security/fail2ban/ pour plus d'informations.

Meriadoc Brandybuck
la source
mon code n'affiche pas d'erreurs, mais ne fonctionne pas comme prévu. Fail2ban ne voit qu'une seule règle de journal. Votre solution est que pour chaque règle, je dois créer un fichier dans / filter.d? exemple [apache-w00tw00t-1] / etc / fail2ban / filter.d / apache-w00tw00t-1.conf [apache-w00tw00t-2] / etc / fail2ban / filter.d / apache-w00tw00t-2.conf etc.
Max121
Oui, je veux dire ça.
Meriadoc Brandybuck
Si vous voulez dire que c'est intéressant, mais ce n'est pas la meilleure solution, je pense, créerait de nombreux doublons avec les mêmes règles. Je pense qu'il existe une solution plus élégante pour fusionner plusieurs journaux en une règle. En tout cas, merci pour la collaboration.
Max121
Veuillez vérifier mes éditions dans ma réponse ci-dessus. Dans l'attente de vos résultats.
Meriadoc Brandybuck
1
La 2ème partie de votre réponse fonctionne parfaitement si vous donnez un espacement "tab" pour les journaux supplémentaires. S'il n'y a pas de "tabulation", fail2ban renvoie une erreur.
Hashid Hameed