Oefenweb.fail2ban

fail2ban

Ustaw fail2ban w systemach podobnych do Debiana.

Wymagania

Brak

Zmienne

  • fail2ban_loglevel: [domyślnie: 3, lub INFO w nowszych wersjach]: Ustawia poziom logowania (np. 1 = BŁĄD, 2 = OSTRZEŻENIE, 3 = INFORMACJA, 4 = DEBUG)

  • fail2ban_logtarget: [domyślnie: /var/log/fail2ban.log]: Ustawia cel logowania. Może to być plik, SYSLOG, STDERR lub STDOUT

  • fail2ban_syslog_target: [domyślnie: /var/log/fail2ban.log]:

  • fail2ban_syslog_facility: [domyślnie: 1]:

  • fail2ban_socket: [domyślnie: /var/run/fail2ban/fail2ban.sock]: Ustawia plik socketu, który służy do komunikacji z demonem

  • fail2ban_pidfile: [domyślnie: /var/run/fail2ban/fail2ban.pid]: Ustawia plik pid, który służy do przechowywania identyfikatora procesu demona (działa tylko w fail2ban >= 0.8.9)

  • fail2ban_dbpurgeage: [domyślnie: 86400]: Ustawia wiek, po którym blokady powinny zostać usunięte z bazy

  • fail2ban_ignoreips: [domyślnie: [127.0.0.1/8]]: Który adres IP/maska CIDR/adres DNS powinien być ignorowany przez fail2ban

  • fail2ban_bantime: [domyślnie: 600]: Ustawia czas banowania

  • fail2ban_maxretry: [domyślnie: 3]: Maksymalna liczba prób przed zablokowaniem hosta

  • fail2ban_findtime: [domyślnie: 600]: Hosta blokuje się, jeśli wygenerował fail2ban_maxretry w ciągu ostatnich fail2ban_findtime

  • fail2ban_backend: [domyślnie: auto]: Określa backend używany do uzyskiwania informacji o modyfikacjach plików. Dla Debiana 12 wymagane jest systemd

  • fail2ban_banaction: [domyślnie: iptables-multiport]: Ustawia globalną/domyslną akcję banowania

  • fail2ban_banaction_allports: [domyślnie: iptables-allports]: Ustawia globalną/domyslną akcję banowania dla wszystkich portów

  • fail2ban_mta: [domyślnie: sendmail]: Akcja e-mail

  • fail2ban_protocol: [domyślnie: tcp]: Ustawia domyślny protokół

  • fail2ban_chain: [domyślnie: INPUT]: Określa łańcuch, w którym należy dodać skoki w akcjach iptables-*

  • fail2ban_action: [domyślnie: %(action_)s]: Domyślna akcja. Uwaga: zmienne (w tym działania zdefiniowane gdzie indziej w plikach konfiguracyjnych) muszą być otoczone znakiem %(...)s, aby mogły być rozwinięte

  • fail2ban_sendername: [domyślnie: Fail2ban]: Nazwa nadawcy dla wysyłanych e-maili przez akcje mta. Uwaga: Użyj fail2ban_sender, aby ustawić adres e-mail nadawcy.

  • fail2ban_sender: [opcjonalne]: Adres nadawcy dla wysyłanych e-maili przez akcje mta.

  • fail2ban_filterd_path: [opcjonalne]: Ścieżka do katalogu zawierającego filtry do skopiowania (uwaga na ukośnik na końcu)

  • fail2ban_actiond_path: [opcjonalne]: Ścieżka do katalogu zawierającego akcje do skopiowania (uwaga na ukośnik na końcu)

  • fail2ban_jaild_path: [opcjonalne]: Ścieżka do katalogu zawierającego więzienia do skopiowania (uwaga na ukośnik na końcu)

  • fail2ban_services [domyślnie zobacz defaults/main.yml]: Definicje usług

  • fail2ban_services.{n}.name [wymagane]: Nazwa usługi (np. ssh)

  • fail2ban_services.{n}.enabled [domyślnie: true]: Czy włączona

  • fail2ban_services.{n}.* [opcjonalne]: Nazwa opcji

  • fail2ban_services.{n}.*.* [opcjonalne]: Wartość opcji

Dla wersji >= 0.11.1

  • fail2ban_bantime_increment: [domyślnie: true]: Zwiększa czas banowania po wcześniejszym zablokowaniu
  • fail2ban_bantime_factor: [domyślnie: 1]: Współczynnik zwiększający czas banowania dla bantime_formula lub bantime_multipliers
  • fail2ban_bantime_formula: [domyślnie: 'ban.Time * (1<<(ban.Count if ban.Count<20 else 20)) * banFactor']: Formuła, która będzie używana do obliczenia zwiększonego czasu banowania. Uwaga: można używać bantime_formula lub bantime_multipliers, przy czym bantime_multipliers ma pierwszeństwo.
  • fail2ban_bantime_overalljails: [domyślnie: false]: Blokuj IP we wszystkich więzieniach, jeśli zdefiniowano wiele
  • fail2ban_bantime_rndtime: [opcjonalne]: Opcja dla sprytnych botów, które próbują uzyskać dostęp po czasie banowania
  • fail2ban_bantime_multipliers: [opcjonalne]: Mnożnik do użycia zamiast bantime_formula. Na przykład 1 2 4 8 16 32 64. Uwaga: dla bantime = 600 i bantime_factor=1, byłyby to 600*1*1, 600*1*2...

Zależności

Brak

Przykłady

Prosty

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

Włącz filtr sshd (z niestandardowymi ustawieniami)

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

Dodaj niestandardowe filtry (na zewnątrz roli)

---
- 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

Licencja

MIT

Informacje o autorze

Mischa ter Smitten (na podstawie prac ANXS)

Opinie, zgłaszanie błędów, prośby, ...

mile widziane!

O projekcie

Set up fail2ban in Debian-like systems

Zainstaluj
ansible-galaxy install Oefenweb.fail2ban
Licencja
mit
Pobrania
361k
Właściciel