Oefenweb.fail2ban

fail2ban

CI Ansible Galaxy

Richten Sie fail2ban in Debian-ähnlichen Systemen ein.

Anforderungen

Keine

Variablen

  • fail2ban_loglevel: [standard: 3, oder INFO in neueren Versionen]: Legt die Protokollebene fest (z. B. 1 = FEHLER, 2 = WARNUNG, 3 = INFO, 4 = DEBUG)

  • fail2ban_logtarget: [standard: /var/log/fail2ban.log]: Legt das Protokollziel fest. Dies kann eine Datei, SYSLOG, STDERR oder STDOUT sein.

  • fail2ban_syslog_target: [standard: /var/log/fail2ban.log]:

  • fail2ban_syslog_facility: [standard: 1]:

  • fail2ban_socket: [standard: /var/run/fail2ban/fail2ban.sock]: Legt die Socket-Datei fest, die zur Kommunikation mit dem Daemon verwendet wird.

  • fail2ban_pidfile: [standard: /var/run/fail2ban/fail2ban.pid]: Legt die PID-Datei fest, die zum Speichern der Prozess-ID des Daemons verwendet wird (funktioniert nur bei fail2ban >= 0.8.9).

  • fail2ban_dbpurgeage: [standard: 86400]: Legt das Alter fest, ab dem Sperren aus der Datenbank gelöscht werden sollen.

  • fail2ban_ignoreips: [standard: [127.0.0.1/8]]: Welche IP-Adresse/CIDR-Maske/DNS-Host von den Aktionen von fail2ban ignoriert werden soll.

  • fail2ban_bantime: [standard: 600]: Legt die Sperrzeit fest.

  • fail2ban_maxretry: [standard: 3]: Maximale Anzahl der Versuche, bevor der Host ins Gefängnis kommt.

  • fail2ban_findtime: [standard: 600]: Ein Host wird gesperrt, wenn er während der letzten fail2ban_findtime fail2ban_maxretry erzeugt hat.

  • fail2ban_backend: [standard: auto]: Gibt das Backend an, das zur Änderung von Dateien verwendet wird. Für Debian 12 ist systemd erforderlich.

  • fail2ban_banaction: [standard: iptables-multiport]: Legt die globale/standard Banaction fest.

  • fail2ban_banaction_allports: [standard: iptables-allports]: Legt die globale/standard Banaction für alle Ports fest.

  • fail2ban_mta: [standard: sendmail]: E-Mail-Aktion.

  • fail2ban_protocol: [standard: tcp]: Legt das Standardprotokoll fest.

  • fail2ban_chain: [standard: INPUT]: Gibt die Kette an, in der Sprünge in iptables-* Aktionen hinzugefügt werden müssen.

  • fail2ban_action: [standard: %(action_)s]: Standardaktion. Beachten Sie, dass Variablen (einschließlich der in anderen Konfigurationsdateien definierten Aktionen) in Python-Stil %( und )s eingeschlossen werden müssen, damit sie erweitert werden.

  • fail2ban_sendername: [standard: Fail2ban]: Der 'Von'-Name für E-Mails, die von MTA-Aktionen gesendet werden. Hinweis: Verwenden Sie fail2ban_sender, um die 'Von'-E-Mail-Adresse festzulegen.

  • fail2ban_sender: [optional]: Die 'Von'-Adresse für E-Mails, die von MTA-Aktionen gesendet werden.

  • fail2ban_filterd_path: [optional]: Pfad zum Verzeichnis, das Filter zum Kopieren enthält (beachten Sie den abschließenden Schrägstrich).

  • fail2ban_actiond_path: [optional]: Pfad zum Verzeichnis, das Aktionen zum Kopieren enthält (beachten Sie den abschließenden Schrägstrich).

  • fail2ban_jaild_path: [optional]: Pfad zum Verzeichnis, das Gefängnisse zum Kopieren enthält (beachten Sie den abschließenden Schrägstrich).

  • fail2ban_services [standard siehe defaults/main.yml]: Dienstdefinitionen.

  • fail2ban_services.{n}.name [erforderlich]: Dienstname (z. B. ssh).

  • fail2ban_services.{n}.enabled [standard: true]: Ob aktiviert oder nicht.

  • fail2ban_services.{n}.* [optional]: Name der Option.

  • fail2ban_services.{n}.*.* [optional]: Wert der Option.

Für Version >= 0.11.1

  • fail2ban_bantime_increment: [standard: true]: Erhöht die Sperrzeit nach vorheriger Sperrung.
  • fail2ban_bantime_factor: [standard: 1]: Faktor zur Erhöhung der Sperrzeit für bantime_formula oder bantime_multipliers.
  • fail2ban_bantime_formula: [standard: 'ban.Time * (1<<(ban.Count if ban.Count<20 else 20)) * banFactor']: Formel, die verwendet wird, um die erhöhte Sperrzeit zu berechnen. Beachten Sie, dass Sie entweder bantime_formula oder bantime_multipliers verwenden können, während bantime_multipliers Vorrang hat.
  • fail2ban_bantime_overalljails: [standard: false]: IPs für alle Gefängnisse sperren, wenn mehrere definiert sind.
  • fail2ban_bantime_rndtime: [optional]: Option für clevere Bots, die versuchen, sofort nach der Sperrzeit zuzugreifen.
  • fail2ban_bantime_multipliers: [optional]: Faktor, der anstelle von bantime_formula verwendet wird. Zum Beispiel 1 2 4 8 16 32 64. Beachten Sie, dass für bantime = 600 und bantime_factor=1 dies 600*1*1, 600*1*2... wäre.

Abhängigkeiten

Keine

Beispiel(e)

Einfach

---
- hosts: alle
  roles:
    - oefenweb.fail2ban

Aktivieren Sie den SSHD-Filter (mit nicht standardmäßigen Einstellungen)

---
- hosts: alle
  roles:
    - oefenweb.fail2ban
  vars:
    fail2ban_services:
      # In älteren Versionen von Fail2Ban wird dies als ssh bezeichnet.
      - name: sshd
        port: 2222
        maxretry: 5
        bantime: -1

Fügen Sie benutzerdefinierte Filter hinzu (von außerhalb der Rolle)

---
- hosts: alle
  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

Lizenz

MIT

Autor Informationen

Mischa ter Smitten (basierend auf der Arbeit von ANXS)

Feedback, Fehlerberichte, Anfragen, ...

Sind willkommen!

Über das Projekt

Set up fail2ban in Debian-like systems

Installieren
ansible-galaxy install Oefenweb.fail2ban
Lizenz
mit
Downloads
360k
Besitzer