0 Votes

Modifications pour le document Fail2ban

Modifié par john le 2026/09/20 19:39

Depuis la version 2.1
modifié par john
sur 2026/09/20 19:39
Commentaire de modification : Il n'y a aucun commentaire pour cette version
À la version 1.1
modifié par john
sur 2025/05/24 23:47
Commentaire de modification : Imported from XAR

Résumé

Détails

Propriétés de la Page
Contenu
... ... @@ -1,3 +1,5 @@
1 += Fail2ban : protéger ses services contre les attaques =
2 +
1 1  {{toc/}}
2 2  
3 3  Fail2ban est un outil permettant de protéger les services exposés (comme SSH, nginx ou postfix) contre les attaques répétées par force brute. Il fonctionne en analysant les fichiers de logs et en bannissant automatiquement les adresses IP qui présentent un comportement suspect.
... ... @@ -4,7 +4,7 @@
4 4  
5 5  == Fonctionnement ==
6 6  
7 -Fail2ban surveille les logs (ex : ##/var/log/auth.log##) à la recherche de motifs définis (échec d’authentification, erreurs). Lorsqu’une IP déclenche un certain nombre d’alertes dans un intervalle de temps, une règle temporaire est ajoutée au pare-feu pour bloquer cette IP.
9 +Fail2ban surveille les logs (ex : `/var/log/auth.log`) à la recherche de motifs définis (échec d’authentification, erreurs). Lorsqu’une IP déclenche un certain nombre d’alertes dans un intervalle de temps, une règle temporaire est ajoutée au pare-feu pour bloquer cette IP.
8 8  
9 9  == Installation ==
10 10  
... ... @@ -22,34 +22,27 @@
22 22  
23 23  == Configuration de base ==
24 24  
25 -Le fichier principal est ##/etc/fail2ban/jail.conf##. Il ne faut pas le modifier : il est remplacé à chaque mise à jour. Les réglages personnels vont dans ##/etc/fail2ban/jail.local##, ou dans un fichier de ##/etc/fail2ban/jail.d/##.
27 +Le fichier principal est `/etc/fail2ban/jail.conf`, mais il est recommandé de le **copier vers `jail.local`** pour ne pas perdre la configuration lors d’une mise à jour.
26 26  
27 -Ordre de lecture : ##jail.conf##, puis ##jail.d/*.conf##, puis ##jail.local##, qui l'emporte sur les précédents.
29 +{{code language="bash"}}
30 +sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
31 +{{/code}}
28 28  
29 -{{info}}
30 -Ne pas copier ##jail.conf## entier vers ##jail.local## : la copie fige toutes les valeurs par défaut de la version installée et peut écraser des réglages de ##jail.d## (par exemple le ##banaction## choisi par la distribution). Ne mettre dans ##jail.local## que ce qui diffère.
31 -{{/info}}
32 -
33 33  == Exemple de configuration pour SSH ==
34 34  
35 -Dans ##/etc/fail2ban/jail.local## :
36 -
37 -{{code language="ini"}}
38 -[sshd]
35 +Dans `/etc/fail2ban/jail.local` :
36 +{{code language="ini"}}[sshd]
39 39  enabled = true
40 40  port = ssh
41 41  logpath = %(sshd_log)s
42 42  maxretry = 5
43 43  bantime = 3600
44 -findtime = 600
45 -{{/code}}
42 +findtime = 600{{/code}}
46 46  
47 -* ##maxretry## : nombre d’échecs avant bannissement
48 -* ##bantime## : durée du bannissement en secondes
49 -* ##findtime## : période pendant laquelle les échecs sont comptés
44 +- `maxretry` : nombre d’échecs avant bannissement
45 +- `bantime` : durée du bannissement en secondes
46 +- `findtime` : période pendant laquelle les échecs sont comptés
50 50  
51 -Sur un système où les journaux passent par systemd, remplacer ##logpath## par ##backend = systemd##.
52 -
53 53  == Démarrer et activer le service ==
54 54  
55 55  {{code language="bash"}}
... ... @@ -62,42 +62,40 @@
62 62  {{code language="bash"}}
63 63  sudo fail2ban-client status
64 64  sudo fail2ban-client status sshd
65 -sudo fail2ban-client get sshd actions # action réellement appliquée
66 -sudo fail2ban-client -t # tester la configuration
67 67  {{/code}}
68 68  
69 69  == Débannir une IP manuellement ==
70 70  
71 71  {{code language="bash"}}
72 -sudo fail2ban-client set sshd unbanip <IP>
65 +sudo fail2ban-client set sshd unbanip 192.168.1.50
73 73  {{/code}}
74 74  
75 75  == Étendre la protection à d’autres services ==
76 76  
77 77  Fail2ban peut protéger :
71 +- `nginx` (accès interdits, erreurs 404 répétées)
72 +- `postfix` (auth SMTP ratée)
73 +- `nextcloud` (brute-force sur interface web)
74 +- `sshd` (connexion SSH échouée)
78 78  
79 -* ##nginx## (accès interdits, erreurs 404 répétées)
80 -* ##postfix## (auth SMTP ratée)
81 -* ##nextcloud## (brute-force sur interface web)
82 -* ##sshd## (connexion SSH échouée)
76 +Il suffit d’activer les sections correspondantes dans `jail.local` et de s'assurer que les logs sont bien renseignés.
83 83  
84 -Il suffit d’activer les sections correspondantes dans ##jail.local## et de s'assurer que les logs sont bien renseignés.
85 -
86 86  == Logs et journalisation ==
87 87  
88 -{{code language="bash"}}
89 -/var/log/fail2ban.log
90 -journalctl -u fail2ban
91 -{{/code}}
80 +Les logs de fail2ban se trouvent ici :
81 +{{code language="bash"}}/var/log/fail2ban.log{{/code}}
92 92  
83 +Et on peut aussi surveiller via :
84 +{{code language="bash"}}journalctl -u fail2ban{{/code}}
85 +
93 93  == Liens utiles ==
94 94  
95 -* [[fail2ban.org>>https://www.fail2ban.org/wiki/index.php/Main_Page]]
96 -* [[Liste des filtres disponibles>>https://github.com/fail2ban/fail2ban/tree/master/config/filter.d]]
97 -* [[fail2web (interface web)>>https://github.com/Sean-Der/fail2web]]
88 +* [fail2ban.org](https://www.fail2ban.org/wiki/index.php/Main_Page)
89 +* [Liste des filtres disponibles](https://github.com/fail2ban/fail2ban/tree/master/config/filter.d)
90 +* [Surveillance automatique avec fail2web (UI)](https://github.com/Sean-Der/fail2web)
98 98  
99 99  == Liens internes ==
100 100  
101 101  * [[Retour à la section Réseau & Sécurité>>doc:Wiki Batcave John.TutosLinux.ReseauSecurite.WebHome]]
102 -* [[Retour à la section Tutos Linux>>doc:Wiki Batcave John.TutosLinux.WebHome]]
95 +* [[Retour à la section TutoLinux>>doc:Wiki Batcave John.TutosLinux.WebHome]]
103 103  * [[Retour à l’accueil>>doc:Wiki Batcave John.WebHome]]