vServer fail2ban Alternative

  • Schönen Guten Abend! (Morgen!) ;-),


    habe mich gestern bereits mit den Einstellungen von Fail2ban herumgeschlagen. Ich habe das Script von Stachi als "aussperren.conf" gespeichert und diese auch in der jail.conf mittels:
    "actionban = /etc/fail2ban/action.d/aussperren.sh <ip> add" und
    "actionunban = /etc/fail2ban/action.d/aussperren.sh <ip> del"
    ausgeführt.


    Sollte ich nun nicht eigentlich auch gebannte IP's im OpenVCP sehen?


    Danke für's Antworten!

  • Zitat von RefleX-mrl;24080

    Ich habe das Script von Stachi als "aussperren.conf" gespeichert


    .conf oder .sh, was jetzt? :D


    Zitat von RefleX-mrl;24080

    Sollte ich nun nicht eigentlich auch gebannte IP's im OpenVCP sehen?


    Stimmen denn alle Berechtigungen usw? Führe das Script doch mit einer Beispiel-IP und add manuell auf der Konsole aus ;)



    MfG Christian

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • Kann jemand mal seine jail.conf posten?


    Bei mir greift das script nicht. Wenn ich es von Hand aufrufe, dann geht es.
    Aber per jail.conf wird nichts in der VCP FW eingetragen.

  • Zitat von MarcR;29181

    Kann jemand mal seine jail.conf posten?



    hi,

    was soll das bringen.
    in der jail sind standard, die verweise auf die filter hinterlegt.

    du musst die filter richtig konfigurieren (failregex).
    wichtig ist dann die ban aktion.


    .....#
    # Default action to take: ban only
    action = #dasgenanntescripthier# <---sync.sh nannten sie es.:)
    ....#


    ,tschau

  • Hallo, ich wollte gerade Fail2Ban mit dem Script neu einrichten. Ich habe das Script getestet und es läuft auch. Jedoch werden die Regeln am unteren Ende der Filterliste eingefügt.


    Bisher habe ich die Firewall so eingestellt, dass ich den Port 80 für eingehende frei habe und alles andere ablehne. Je nach Bedarf werden die benötigten Ports freigeben und die Programme gestartet.


    Gibt es eine Möglichkeit, dass Script so anzupassen, dass die Drop-Regeln von den gesperrten IPs am Anfang eingefügt werden?


    Grüße Jan

  • hallo,
    erst mal tolles script, dankeschön !!


    hab mir das script installiert, leider werden die firewall regeln zwar angelegt, aber danach nicht mehr gelöscht.


    wann ich /pfad/zum/script/script.sh 192.168.1.1 add ausführe wird 192.168.1.1 in der firewall geblockt.
    wenn ich nun /pfad/zum/script/script.sh 192.168.1.1 del ausführe wird 192.168.1.1 aber nicht mehr gelöscht.



    gibt es von dem script eine erweiterung oder ein update ??


    gruß
    woodgee


  • Ändere mal bin /bin/sh in


    Bash
    #!/bin/bash
    #
    # Script um IPs ueber OpenVCP zu bannen
    #

    und teste es nochmal, im ein oder anderen Fall kann es sein das /bin/sh woanderst hinzeigt (z.B Debian Squezze zeigt /bin/sh auf /bin/dash) und somit funktioniert das löschen der Regeln nicht.
    Hatte das Problem auch schonmal auf einen Testystem :)

  • hallo dargoth,


    super, danke für deinen tip.
    schon ändert man das script minimal ab und danach funktionierts wie es soll ;)


    nun werden die regeln auch wieder zurückgesetzt ...


    gruß
    woodgee

  • Ich hab auch gern am anfang die erlaupten ports und am ende ein DROP all.
    Dafür hab ich jetz einfach folgende config:


    Und das Script so angepasst:



    Hässlich, aber scheint zu funktionieren wie gewünscht!
    ACHTUNG: Wenn ihr das übernehmt ohne die nötigen allow-regeln (besonders ssh) kommt ihr u.U. so nicht mehr auf den Server! Dann einfach im Webinterface entfernen!

  • Sagt mal, wie muss der Befehl aussehen, wenn ich mit der Firewall die IPs mittels mod_evasive übergeben und dann blocken will?


    Wird ja wohl sowas in der art sein oder?


    Code
    DOSSystemCommand "su - root -c '/etc/fail2ban/action.d/sync.sh
     %s add''"



    Grüße

  • Zitat von josch;29789

    Ich hab auch gern am anfang die erlaupten ports und am ende ein DROP all.
    Dafür hab ich jetz einfach folgende config:

    Und das Script so angepasst:


    Hässlich, aber scheint zu funktionieren wie gewünscht!
    ACHTUNG: Wenn ihr das übernehmt ohne die nötigen allow-regeln (besonders ssh) kommt ihr u.U. so nicht mehr auf den Server! Dann einfach im Webinterface entfernen!



    Was genau macht denn dein Script jetzt?

  • Habe das Script jetzt zum Laufen bekommen. Allerdings funktioniert die Sperrung des FTP Zugriffs nicht. Seitenaufruf und ssh ist nicht mehr möglich, aber Einwahlversuche über ftp funktionieren. Wie bekomme ich es hin, dass ftp auch geblockt wird?

  • Nein, es sind gar keine Regeln angelegt. Wenn ich jetzt mehrere Verbindugsversuche mit falschen Daten über FTP versuche wird das Script abgearbeitet und die Regeln eingetragen. Dann geht, wie schon geschrieben, kein Webzugriff und ssh zugriff. Aber ftp geht weiterhin.

  • Huhu,

    ich habe gestern das update auf debian 6 gemacht und hatte bis jetzt immer #!/bin/sh drinen stehen was immer funktioniert hat. Heute musste ich auf #!/bin/bash um stellen weil er die Einträge nicht mehr gelöscht hat.

    Gruss

  • Debian Squeeze verwendet standardmäßig dash als Shell ;)
    Falls das nicht gewünscht ist: dpkg-reconfigure dash



    MfG Christian

    "Wer nur noch Enten sieht, hat die Kontrolle über seine Server verloren." (Netzentenfund)

  • hallo an alle!


    ich benutzte das modifizierte script von josh (vielen dank dafür).
    wenn ich fail2ban nun starte, sehe ich im log am ende folgende fehler


    Code
    2011-02-17 20:03:11,130 fail2ban.actions.action: ERROR  firewall.sh alle del returned 100
    2011-02-17 20:03:11,566 fail2ban.actions.action: ERROR  firewall.sh alle del returned 100

    es scheint alles super zu funktionieren. stören tut es mich aber trotzdem, die fehlermeldung erscheint ja nicht um sonst. :confused:


    weiß jemand rat?


    gruß!

  • Ich hab das Script im laufe der Zeit noch ein bisschen geändert. Hier also eine aktualisierte Version die auch unter Squeeze läuft. An der Funktion und Verwendung hat sich nichts geändert.


    Edit: Jetzt ohne $REPLY und somit dash kompatibel.


    Neun von zehn stimmen in meinem Kopf sagen ich bin nicht verrückt, die zehnte summt die Melodie von Tetris.

  • Guten Tag,
    erstmal möchte ich mich für diese Alternative bedanken, jedoch werden die IP Adressen nicht gebannt.

    Zitat

    fail2ban.actions: WARNING [SynDDOS] Ban 108.23.*.*

    Kein Fehler oder ähnliches.
    Ich habe chmod Rechte 777 auf die sync.sh gesetzt.
    Jedoch sehe ich nirgendwo eine openvcpfirewall.txt und openvcpcookie.txt.

    Code
    server:~# updatedb
    server:~# locate openvcpfirewall.txt

    Kein Ergebnis.


    Meine conf sieht so aus:

    Die ist schon mal nicht falsch.


    Als Script verwende ich das o.g.


    Gruß
    Fl0aT


    Edit: Habe zum Test mal die Serververbindungseinstellungen in den init Bereich kopiert, bringt aber nichts.
    Edit2: Habe zum Text auch oben die Zeile auf #!/bin/bash geändert. Funktoniert immer noch nicht.


    Edit: curl war nicht installiert.