fail2ban funktioniert nicht richtig

  • Hallo zusammen,

    in erster Linie zu Übungszwecken - um mich in die Materie einzuarbeiten - betreibe ich einen Root Server.

    Mich interessiert also nicht nur dass es funktioniert, sondern auch wie und warum es funktioniert.

    Nagut, das wollte ich nur mal vorweg erwähnt haben.


    Ich habe fail2ban installiert und /etc/fail2ban/jail.local konfiguriert:

    Code
    1. ignoreip = 127.0.0.1
    2. bantime = 3600
    3. maxretry = 3
    4. [ssh]
    5. enabled = true
    6. port = ssh
    7. filter = sshd
    8. logpath = /var/log/auth.log
    9. maxretry = 3

    Anschließend /etc/init.d/fail2ban restart


    Wenn ich nun mein Passwort 3x falsch eingebe passiert überhaupt nichts, erst nach 6 Versuchen werde ich rausgeschmissen, kann mich aber sofort danach wieder mit dem korrekten Passwort erfolgreich anmelden.


    fail2ban-client status ssh ergibt folgendes:

    Code
    1. Status for the jail: ssh
    2. |- filter
    3. | |- File list: /var/log/auth.log
    4. | |- Currently failed: 0
    5. | `- Total failed: 11
    6. `- action
    7. |- Currently banned: 1
    8. | `- IP list: XXX.XXX.XXX.XXX
    9. `- Total banned: 1

    So wie ich das sehe wurde meine IP wurde zwar gesperrt, allerdings hat das nichts bewirkt, ich kann mich ja schließlich immer noch anmelden.

    Und warum werde ich erst nach 6 versuchen rausgeschmissen, wenn nach 3 Versuchen doch schon meine IP gesperrt werden sollte?


    Ich habe zwei IP Adressen, IPv4 & IPv6. Liegt es vielleicht daran? Die IPv4 wurde gesperrt, IPv6 jedoch nicht.


    Und außerdem verwende ich nicht den SSH Standardport 22, sondern einen anderen.

    Aber das dürfte ja keine Rolle spielen, da bei fail2ban port = ssh konfiguriert ist.

    Es wird also der Port verwendet, der für SSH konfiguriert ist, sehe ich das richtig?


    Ich hoffe ihr könnt mir etwas auf die Sprünge helfen, vielen Dank schon mal.

  • Welche fail2ban Version verwendest du?


    Ich habe das Gefühl, seit dem letzten Update (weiss grad nicht welche Version ich habe) bannt es auch nicht mehr richtig. Da kommen teilweise noch hunderte fehlgeschlagene Logins, nachdem der "Ban IP..." im logfile ist..

    CentOS 7 / nginx / php-fpm / postfix / rspamd / clamav / dovecot / nextcloud running on RS 1000 SSDx4 G8 / VPS 500 G8 / VPS 2000 G8 Plus

  • Und außerdem verwende ich nicht den SSH Standardport 22, sondern einen anderen.

    Aber das dürfte ja keine Rolle spielen, da bei fail2ban port = ssh konfiguriert ist.

    Es wird also der Port verwendet, der für SSH konfiguriert ist, sehe ich das richtig?

    Hi. Nein, du musst den Port schon manuell einstellen wenn du den SSH-Daemon auf einem Nicht-Standard-Port lauschen lässt. Das ssh ist wohl nur ein Alias für 22 (welcher eben der Standard-Port für SSH ist).

  • Was steht denn in iptables drin? Ist dort alles korrekt blockiert worden?

    Da steht überhaupt nichts drin. iptables -L -n

    Code
    1. Chain INPUT (policy ACCEPT)
    2. target prot opt source destination
    3. Chain FORWARD (policy ACCEPT)
    4. target prot opt source destination
    5. Chain OUTPUT (policy ACCEPT)
    6. target prot opt source destination


    Welche fail2ban Version verwendest du?

    v0.8.13 ist ziemlich alt sehe ich gerade. Warum erhalte ich über apt-get install fail2ban so eine alte Version?

    Ich werde es später nochmal mit dem aktuellen stable Release v0.9.4 probieren.


    Hi. Nein, du musst den Port schon manuell einstellen wenn du den SSH-Daemon auf einem Nicht-Standard-Port lauschen lässt. Das ssh ist wohl nur ein Alias für 22 (welcher eben der Standard-Port für SSH ist).

    Wenn ich den Port manuell eintrage macht das leider auch keinen Unterschied, habe ich gerade getestet.

  • Tja, ich weiß warum da etwas nicht funktioniert hat. Hab wohl ausversehen eine Zeile auskommentiert.


    Jetzt tut sich zumindest mal was bei iptables -L -n


    Aber so richtig funktionieren tut es leider noch nicht. Ich kann mich immer noch anmelden nachdem meine IP gesperrt wurde.