« LINUX:Fail2Ban » : différence entre les versions
(Page créée avec « __FORCETOC__ ---- ''→ retour au menu pour contrer les attaques'' ---- =But= "fail2ban" est un logiciel qui se charge d'analyser les log… ») |
Aucun résumé des modifications |
||
Ligne 4 : | Ligne 4 : | ||
---- | ---- | ||
=But= | =But= | ||
"fail2ban" est un logiciel qui se charge d'analyser les logs de divers services installés sur la machine, pour bannir automatiquement un hôte via le firewall "iptables" pour une durée déterminée, après un certain nombre de | "fail2ban" est un logiciel qui se charge d'analyser les logs de divers services installés sur la machine, pour bannir automatiquement un hôte via le firewall "iptables" pour une durée déterminée, après un certain nombre de tentatives infructueuses. Il s'intéresse spécialement aux authentifications. C'est un élément essentiel pour sécuriser son système, et éviter des intrusions via brute-force. | ||
=Installation= | |||
Pour installer ce programme, exécutez la commande suivante: | |||
dnf install fail2ban-server | |||
et éventuellement: | |||
dnf install fail2ban-mail | |||
dnf install fail2ban-sendmail | |||
=Configuration= | |||
=Service= | |||
On doit activer et lancer le service correspondant: | |||
systemctl enable fail2ban | |||
systemctl start fail2ban | |||
=Statuts= | |||
On passer en revue l'état des différents modules et ainsi repérer quelles sont les adresses IP bannies. | |||
Le script suivant y pourvoie; le résultat est placé dans le fichier "f2b.lis": | |||
---- | |||
#!/bin/bash | |||
# statut des modules actifs de Fail2ban | |||
# lister les modules actifs | |||
/usr/bin/fail2ban-client status > f2b.lis | |||
/usr/bin/grep "Jail list:" f2b.lis | /usr/bin/awk -F ":" '{printf("%s\n",$2)}' > temp1.log | |||
/usr/bin/sed -i 's/,/ /g' temp1.log | |||
LISTE=`/usr/bin/cat temp1.log` | |||
/usr/bin/rm -f temp1.log | |||
# passer le statut de chaque module actif | |||
for I in $LISTE | |||
do | |||
echo "======================================" >> f2b.lis | |||
echo $I >> f2b.lis | |||
/usr/bin/fail2ban-client status $I >> f2b.lis | |||
done | |||
---- | |||
Pour repérer directement dans le firewall les adresses IP banies, voici la commande: | |||
/usr/sbin/iptables -L -n | /usr/bin/grep REJECT | /usr/bin/grep all | grep -v "\-\- 0.0.0.0/0" | /usr/bin/sort -u | |||
On pourra remarquer que la règle est liée à un module. | |||
Pour enlever un adresse IP bannie, utilisez la commande suivante: | |||
fail2ban-client set <module> unbanip <adresse IP> | |||
par exemple pour les modules "apache-auth" et "sshd" qui bloques l'adresse IP "192.168.1.20": | |||
fail2ban-client set apache-auth unbanip 192.168.1.20 | |||
fail2ban-client set sshd unbanip 192.168.1.20 | |||
Version du 19 février 2022 à 15:01
→ retour au menu pour contrer les attaques
But
"fail2ban" est un logiciel qui se charge d'analyser les logs de divers services installés sur la machine, pour bannir automatiquement un hôte via le firewall "iptables" pour une durée déterminée, après un certain nombre de tentatives infructueuses. Il s'intéresse spécialement aux authentifications. C'est un élément essentiel pour sécuriser son système, et éviter des intrusions via brute-force.
Installation
Pour installer ce programme, exécutez la commande suivante:
dnf install fail2ban-server
et éventuellement:
dnf install fail2ban-mail dnf install fail2ban-sendmail
Configuration
Service
On doit activer et lancer le service correspondant:
systemctl enable fail2ban systemctl start fail2ban
Statuts
On passer en revue l'état des différents modules et ainsi repérer quelles sont les adresses IP bannies.
Le script suivant y pourvoie; le résultat est placé dans le fichier "f2b.lis":
#!/bin/bash # statut des modules actifs de Fail2ban # lister les modules actifs /usr/bin/fail2ban-client status > f2b.lis /usr/bin/grep "Jail list:" f2b.lis | /usr/bin/awk -F ":" '{printf("%s\n",$2)}' > temp1.log /usr/bin/sed -i 's/,/ /g' temp1.log LISTE=`/usr/bin/cat temp1.log` /usr/bin/rm -f temp1.log # passer le statut de chaque module actif for I in $LISTE do echo "======================================" >> f2b.lis echo $I >> f2b.lis /usr/bin/fail2ban-client status $I >> f2b.lis done
Pour repérer directement dans le firewall les adresses IP banies, voici la commande:
/usr/sbin/iptables -L -n | /usr/bin/grep REJECT | /usr/bin/grep all | grep -v "\-\- 0.0.0.0/0" | /usr/bin/sort -u
On pourra remarquer que la règle est liée à un module.
Pour enlever un adresse IP bannie, utilisez la commande suivante:
fail2ban-client set <module> unbanip <adresse IP>
par exemple pour les modules "apache-auth" et "sshd" qui bloques l'adresse IP "192.168.1.20":
fail2ban-client set apache-auth unbanip 192.168.1.20 fail2ban-client set sshd unbanip 192.168.1.20
→ retour au menu pour contrer les attaques