Oefenweb.fail2ban

fail2ban

CI Ansible Galaxy

Configurer fail2ban sur des systèmes de type Debian.

Exigences

Aucune

Variables

  • fail2ban_loglevel: [par défaut : 3, ou INFO dans les versions plus récentes] : Définit le niveau de journalisation (par exemple, 1 = ERREUR, 2 = AVERTIR, 3 = INFO, 4 = DEBUG)

  • fail2ban_logtarget: [par défaut : /var/log/fail2ban.log] : Définit la cible de journalisation. Cela peut être un fichier, SYSLOG, STDERR ou STDOUT

  • fail2ban_syslog_target: [par défaut : /var/log/fail2ban.log]

  • fail2ban_syslog_facility: [par défaut : 1]

  • fail2ban_socket: [par défaut : /var/run/fail2ban/fail2ban.sock] : Détermine le fichier de socket, utilisé pour communiquer avec le démon

  • fail2ban_pidfile: [par défaut : /var/run/fail2ban/fail2ban.pid] : Définit le fichier PID, utilisé pour stocker l'identifiant du processus du démon (fonctionne uniquement sur fail2ban >= 0.8.9)

  • fail2ban_dbpurgeage: [par défaut : 86400] : Définit l'ancienneté à partir de laquelle les interdictions doivent être purgées de la base de données

  • fail2ban_ignoreips: [par défaut : [127.0.0.1/8]] : Quelles adresses IP/masque CIDR/hôte DNS doivent être ignorées par les actions de fail2ban

  • fail2ban_bantime: [par défaut : 600] : Définit la durée de l'interdiction

  • fail2ban_maxretry: [par défaut : 3] : Nombre maximum de tentatives avant que l'hôte ne soit mis en prison

  • fail2ban_findtime: [par défaut : 600] : Un hôte est interdit s'il a généré fail2ban_maxretry durant le dernier fail2ban_findtime

  • fail2ban_backend: [par défaut : auto] : Spécifie le backend utilisé pour obtenir les modifications de fichiers. Pour Debian 12, systemd est requis

  • fail2ban_banaction: [par défaut : iptables-multiport] : Définit l'action d'interdiction globale par défaut

  • fail2ban_banaction_allports: [par défaut : iptables-allports] : Définit l'action d'interdiction globale par défaut pour tous les ports

  • fail2ban_mta: [par défaut : sendmail] : Action d'envoi d'email

  • fail2ban_protocol: [par défaut : tcp] : Définit le protocole par défaut

  • fail2ban_chain: [par défaut : INPUT] : Spécifie la chaîne où des sauts doivent être ajoutés dans les actions iptables-*

  • fail2ban_action: [par défaut : %(action_)s] : Action par défaut. Notez que les variables (y compris les actions définies ailleurs dans les fichiers de configuration) doivent être entourées de %( et )s pour être développées

  • fail2ban_sendername: [par défaut : Fail2ban] : Le nom de l'expéditeur pour les emails envoyés par les actions mta. NB : Utilisez fail2ban_sender pour définir l'adresse email de l'expéditeur.

  • fail2ban_sender: [facultatif] : L'adresse de l'expéditeur pour les emails envoyés par les actions mta.

  • fail2ban_filterd_path: [facultatif] : Chemin vers le répertoire contenant les filtres à copier (notez le slash final)

  • fail2ban_actiond_path: [facultatif] : Chemin vers le répertoire contenant les actions à copier (notez le slash final)

  • fail2ban_jaild_path: [facultatif] : Chemin vers le répertoire contenant les prisons à copier (notez le slash final)

  • fail2ban_services [voir defaults/main.yml pour les valeurs par défaut] : Définitions des services

  • fail2ban_services.{n}.name [obligatoire] : Nom du service (par exemple, ssh)

  • fail2ban_services.{n}.enabled [par défaut : true] : Si le service est activé ou non

  • fail2ban_services.{n}.* [facultatif] : Nom de l'option

  • fail2ban_services.{n}.*.* [facultatif] : Valeur de l'option

Pour la version >= 0.11.1

  • fail2ban_bantime_increment: [par défaut : true] : Augmente la durée de l'interdiction après avoir déjà été interdit
  • fail2ban_bantime_factor: [par défaut : 1] : Facteur d'augmentation de la durée de l'interdiction pour bantime_formula ou bantime_multipliers
  • fail2ban_bantime_formula: [par défaut : 'ban.Time * (1<<(ban.Count if ban.Count<20 else 20)) * banFactor'] : Formule utilisée pour calculer la durée d'interdiction augmentée. Notez que vous pouvez utiliser soit bantime_formula soit bantime_multipliers, bantime_multipliers ayant la priorité.
  • fail2ban_bantime_overalljails: [par défaut : false] : Interdire les IP pour toutes les prisons si plusieurs sont définies
  • fail2ban_bantime_rndtime: [facultatif] : Option pour les bots intelligents qui essaient d'accéder immédiatement après la durée d'interdiction
  • fail2ban_bantime_multipliers: [facultatif] : Multiplicateur à utiliser au lieu de bantime_formula. Par exemple, 1 2 4 8 16 32 64. Note : pour bantime = 600 et bantime_factor = 1, ce serait 600*1*1, 600*1*2...

Dépendances

Aucune

Exemples

Simple

---
- hosts: all
  roles:
    - oefenweb.fail2ban

Activer le filtre sshd (avec des paramètres non par défaut)

---
- hosts: all
  roles:
    - oefenweb.fail2ban
  vars:
    fail2ban_services:
      - name: sshd
        port: 2222
        maxretry: 5
        bantime: -1

Ajouter des filtres personnalisés (depuis l'extérieur du rôle)

---
- hosts: all
  roles:
    - oefenweb.fail2ban
  vars:
    fail2ban_filterd_path: ../../../files/fail2ban/etc/fail2ban/filter.d/
    fail2ban_services:
      - name: apache-wordpress-logins
        port: http,https
        filter: apache-wordpress-logins
        logpath: /var/log/apache2/access.log
        maxretry: 5
        findtime: 120

Licence

MIT

Informations sur l'auteur

Mischa ter Smitten (basé sur le travail de ANXS)

Retours, rapports de bogues, demandes, ...

Sont bienvenus !

À propos du projet

Set up fail2ban in Debian-like systems

Installer
ansible-galaxy install Oefenweb.fail2ban
Licence
mit
Téléchargements
351.4k
Propriétaire