Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente | |||
informatique:applications:fail2ban [2023/02/10 22:48] – ↷ Page déplacée de informatique:linux:applications:fail2ban à informatique:applications:fail2ban Cédric ABONNEL | informatique:applications:fail2ban [2023/02/10 22:48] (Version actuelle) – ↷ Liens modifiés en raison d'un déplacement. Cédric ABONNEL | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Fail2ban contre les attaques brutes-force ====== | ||
+ | |||
+ | Si vous être propriétaire d’un serveur quelconque connecté à Internet, vous n’êtes pas sans savoir qu’il est exposé à de nombreuses attaques. Parmi elles, le brute-force. Cette attaque consiste à trouver votre mot de passe SSH en les essayant tous les uns à la suite des autres ou en utilisant des dictionnaires (ce sont des listes contenant les mots de passe les plus utilisés comme admin, 123456, etc…). Ces attaques sont généralement menées par des robots qui visent des dizaines de serveurs en même temps. Il se connectent sans cesse à votre serveur grâce à votre port SSH et essayent beaucoup de combinaisons de mot de passe jusqu’à trouver le bon (généralement, | ||
+ | |||
+ | Enfin, fois que les pirates ont accès à un serveur, ils peuvent par exemple s’en approprier pour exécuter d’autres attaques brute-force contre d’autres serveurs, ou bien utiliser votre serveur pour spammer des gens (par mail, par exemple). De plus, le responsable, | ||
+ | |||
+ | Il existe beaucoup de solutions, celle que je vais vous présenter aujourd’hui, | ||
+ | |||
+ | Vous pouvez consulter la manuel en anglais [[https:// | ||
+ | |||
+ | ===== Installer Fail2ban ===== | ||
+ | |||
+ | La commande suivante permet d' | ||
+ | |||
+ | <code BASH> | ||
+ | sudo apt install fail2ban | ||
+ | </ | ||
+ | |||
+ | {{informatique: | ||
+ | |||
+ | |||
+ | ===== Configurer fail2ban ===== | ||
+ | |||
+ | Éditons le fichier ''/ | ||
+ | |||
+ | |||
+ | Liste des fichiers et dossier de configuration par défaut de **fail2ban** sous **Raspbian 10** : | ||
+ | < | ||
+ | action.d/ | ||
+ | fail2ban.conf | ||
+ | </ | ||
+ | |||
+ | Il y a deux fichiers principaux de configuration pour **fail2ban** : ''/ | ||
+ | |||
+ | ''/ | ||
+ | |||
+ | ''/ | ||
+ | |||
+ | Les **filtres** qui spécifient les règles de détections d' | ||
+ | |||
+ | Les **actions** qui définissent les règles de bannissement ou non des adresses IP sont à ajouter au dossier **filter.d** | ||
+ | |||
+ | |||
+ | Il est vivement conseillé d' | ||
+ | |||
+ | L' | ||
+ | - jail.conf | ||
+ | - jail.d/ | ||
+ | - jail.local | ||
+ | - jail.d/*. | ||
+ | - local (dans l' | ||
+ | |||
+ | ===== Modifications apportées à fail2ban ===== | ||
+ | |||
+ | sudo nano / | ||
+ | |||
+ | Pour ajouter les options suivantes : | ||
+ | < | ||
+ | [DEFAULT] | ||
+ | ignoreip = 127.0.0.1/ | ||
+ | bantime | ||
+ | maxretry = 2 | ||
+ | destemail = root@localhost | ||
+ | action = %(action_mwl)s | ||
+ | |||
+ | [sshd] | ||
+ | enabled | ||
+ | </ | ||
+ | |||
+ | | ||
+ | Avec **ignoreip**, | ||
+ | |||
+ | **bantime** est le nombre de secondes qu’une adresse va être bloquée si elle attaque votre serveur. 10 minutes est très peu suffisant, un rapide calcul vous permet d’en être sûr. Admettons que vous êtes attaqué par 20 machines différentes, | ||
+ | |||
+ | **maxretry** est le nombre de tentatives auxquelles a le droit un utilisateur avant de se faire bloquer. | ||
+ | |||
+ | **destemail** est l’adresse mail à laquelle seront envoyés les mails de notification (quand une adresse sera bloquée) | ||
+ | |||
+ | **action** permet d' | ||
+ | '' | ||
+ | '' | ||
+ | |||
+ | |||
+ | Ajouter les règles spécifiques | ||
+ | < | ||
+ | [sshd] | ||
+ | enabled = true | ||
+ | port = 1234 | ||
+ | |||
+ | |||
+ | [postfix] | ||
+ | port = smtp, | ||
+ | enabled = true | ||
+ | |||
+ | [dovecot] | ||
+ | port = imaps | ||
+ | enabled = true | ||
+ | |||
+ | </ | ||
+ | |||
+ | N' | ||
+ | |||
+ | |||