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 Prochaine révision | Révision précédente | ||
| serveurs:installation:fail2ban [2023/08/02 14:24] – [Installer Fail2ban] jpmilcent | serveurs:installation:fail2ban [2026/09/21 09:11] (Version actuelle) – [Utilisations] jpmilcent | ||
|---|---|---|---|
| Ligne 97: | Ligne 97: | ||
| ===== Utilisations ===== | ===== Utilisations ===== | ||
| * Document du client Fail2ban : https:// | * Document du client Fail2ban : https:// | ||
| - | * Vérifier son fonctionnement dans les logs : '' | + | * Vérifier son fonctionnement dans les logs : '' |
| - | * Consulter l' | + | * Consulter l' |
| - | * Sortir de prison une IP : '' | + | * Sortir de prison une IP : '' |
| - | * Réinitialiser | + | * Ajouter manuellement une IP à une prison : '' |
| + | * Réinitialiser une prison : '' | ||
| + | * Enregistrer dans un fichier txt les IPs bannies d'une prison : '' | ||
| + | * Recharger un filtre après modification : '' | ||
| + | * Vérifier que la regex du filtre est bien pris en compte en l' | ||
| + | * Vérifier que l' | ||
| ===== Fai2ban et Wordpress ===== | ===== Fai2ban et Wordpress ===== | ||
| * Une fois Wordpress rendu indexable par les moteurs de recherche, nous risquons d' | * Une fois Wordpress rendu indexable par les moteurs de recherche, nous risquons d' | ||
| - | * Pour vérifier si nous sommes attaqué, vérifier dans les logs du serveur web du jour à l'aide de la commande : '' | + | * Pour vérifier si nous sommes attaqué, vérifier dans les logs du serveur web du jour à l'aide de la commande : '' |
| * Dans cette situation, utiliser un des tutos suivant pour la mise en place : | * Dans cette situation, utiliser un des tutos suivant pour la mise en place : | ||
| * [[https:// | * [[https:// | ||
| Ligne 110: | Ligne 115: | ||
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| - | * Ajouter un nouveau filtre : '' | + | * Ajouter un nouveau filtre : '' |
| * Par défaut, Wordpress retourne une code 200 que le login réussisse ou échoue. Deux solutions : | * Par défaut, Wordpress retourne une code 200 que le login réussisse ou échoue. Deux solutions : | ||
| - modifier Worpdress pour retourner un code 403 si le login échoue | - modifier Worpdress pour retourner un code 403 si le login échoue | ||
| - | - utiliser le code 200 dans la regexp de détection et ne pas mettre trop bas le nombre de tentative d' | + | - utiliser le code 200 dans la regexp de détection et ne pas mettre trop bas le nombre de tentative d' |
| * Nous avons opté pour la solution 2. | * Nous avons opté pour la solution 2. | ||
| * Contenue du fichier : <code properties> | * Contenue du fichier : <code properties> | ||
| Ligne 139: | Ligne 144: | ||
| ignoreregex = | ignoreregex = | ||
| </ | </ | ||
| - | * Tester le filtre : '' | + | * Tester le filtre : '' |
| - | * Éditer le fichier de config : '' | + | * Éditer le fichier de config : '' |
| * Ajouter à la fin du fichier la nouvelle section suivante : <code properties> | * Ajouter à la fin du fichier la nouvelle section suivante : <code properties> | ||
| [nginx-wordpress] | [nginx-wordpress] | ||
| Ligne 151: | Ligne 156: | ||
| findtime = 240 | findtime = 240 | ||
| </ | </ | ||
| - | * Recharger la config de // | + | * Recharger la config de // |
| - | * Pour surveiller cette nouvelle prison : '' | + | * Pour surveiller cette nouvelle prison : '' |
| ===== Problème fail2ban-tmpfiles.conf points to /var/run/ instead of /run ===== | ===== Problème fail2ban-tmpfiles.conf points to /var/run/ instead of /run ===== | ||
| Ligne 171: | Ligne 176: | ||
| * **Contexte** : le service SystemD fail2ban ('' | * **Contexte** : le service SystemD fail2ban ('' | ||
| * **Solution** : Dans le fichier ''/ | * **Solution** : Dans le fichier ''/ | ||
| + | |||
| + | ===== Prison nginx-errors ===== | ||
| + | * Mise en place d'une prison détectant un trop fort tôt de code d' | ||
| + | * Cette prison est <color white/# | ||
| + | | ||
| + | * Créer un fichier de filtre : '' | ||
| + | * Contenu : <code ini> | ||
| + | [Definition] | ||
| + | failregex = ^< | ||
| + | ignoreregex = | ||
| + | </ | ||
| + | * Tester le bon fonctionnement de cette Regexp avec : '' | ||
| + | * Créer un fichier de prison : '' | ||
| + | * Contenu : <code ini> | ||
| + | [nginx-errors] | ||
| + | enabled = true | ||
| + | port = http,https | ||
| + | filter = nginx-errors | ||
| + | logpath = / | ||
| + | maxretry = 6 | ||
| + | findtime = 600 | ||
| + | bantime = 1y | ||
| + | # Le paramètre ci-dessous peu être décommenté pour tester la prison sans bannir les ip | ||
| + | #banaction = dummy | ||
| + | </ | ||
| + | * Recharger la config de // | ||
| + | |||
| + | |||
| + | ===== Vérification d'IP bannies ===== | ||
| + | * Pour vérifier en lot des IPs abusives, vous pouvez utiliser le site : https:// | ||
| + | * Le site IpInfo fournit également des informations : https:// | ||
| + | |||