vServer fail2ban Alternative

  • "Any" bedeutet so viel wie "vergiss die Regel" ;)


    War zumindest bei mir so: Ich habe per Any sehr(!) kritische Ports geblockt. Das Resultat war, dass der Server fast offenstand :rolleyes:

    Mein Server:
    v(olks)Server 1. Serie: 2,5GHz, 1024MB RAM, 1024MB Swap, 2x60GB-Raid1-HDD, Traffic-Flat
    Node:
    78.46.117.9x | hos-tr2.ex3k4.rz7.hetzner.de

  • Richtig, any ist an dieser Stelle nutzlos.

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

  • Komische Interpretation von "any" seitens OpenVCP :o -- Na, dann mach ich die Änderung mal rückgängig *seufz*

    Mensch was bin ich froh, weder SysCP noch Webmin, Confixx oder Plesk benutzen zu müssen!

  • Hallo,
    ich habe mich gerade eben daran versucht.


    Ich habe mir das aktuellere Script kopiert, die sync.conf und die jail.conf kopiert.


    fail2ban habe ich via apt-get installiert.


    Leider läuft das Script nicht so, wie es sollte (über fail2ban). Führe ich es mit ./sync.sh 123.123.123.123 add aus, funktioniert alles einwandfrei.


    Fehlt mir noch eine konfiguration?


    Sorry für die blöde Nachfrage, habe bisher nie fail2ban im Einsatz gehabt ;)


    Hier die fail2ban.log

    Rechtschreibfehler sind unter Creative Commons BY-NC-ND 3.0 DE lizenziert.

  • Hallo,


    ich hab ein ähnliches Problem wie freepers hier anspricht:
    Meine Freigegebenen Ports stehen oben und anschließend hab ich alle weiteren Ports gesperrt.


    Da die Firewall Regeln von oben nach unten durchgegangen werden, nützt es mir nichts, wenn ganz unten (also nach der Freigabe eines Ports für alle IPs) ein Eintrag vom fail2ban steht. Denn das hat natürlich nach der Freigabe für entsprechenden Port für alle IPs keine Relevanz mehr.


    Gibt es noch eine Möglichkeit in dem Script von stachi die entsprechenden Einträge ganz an den Anfang der Firewall Regeln zu stellen? Evtl. dass man in einem weiteren Parameter die Priorität angibt oder so in der Art.

  • Script funktioniert klasse
    danke dafür


    Wie kann ich eigentlich mit einem neustart von fail2ban die gebannten IP adresse resetten. Also das er keinen erneuten Eintrag vornimmt?

  • Wurde irgend etwas geändert?
    Seit einigen Tagen beobachte ich ein einfrieren von Fail2Ban.


    Mit pstree bekomme ich folgende Ausgabe:

    Code
    |-fail2ban-server-+-sync.sh---sleep
         |                 `-8*[{fail2ban-server}]


    Versuche ich das Script mit ./sync.sh 123.123.123.123 add zu starten, passiert nichts.
    cURL, PHP5-cURL und cURL-SSL sind installiert und getestet.


    Mit curl http://www.google.de bekomme ich auch google angezeigt.

  • Also bei mir hat es heute schon wie gewohnt zugeschlagen




  • Haste mal neu installiert? Über reinstall
    und einmal komplett deinstallieren mit apt remove --purge
    und das dann wieder installieren ...


    könnte vielleicht helfen ... Die Konfigs sind ja nicht sooo viele also ist schnell wieder eingerichtet


    MfG

  • Ich denke, ich habe meine Fehler gefunden.


    Dieser Ordner "/tmp/ovcp" wurde nach einer Aktion nicht gelöscht :(
    Ich vermute, das kam durch einen Neustart als das Script ausgeführt wurde.


    Kann man es so erweitern, dass es beim Start einer Aktion erst kontrolliert, ob dieser Ordner vorhanden ist und wenn ja den löscht und dann erst die Aktion (Ban/Unban) startet.

  • Zitat von Pionier;20540

    Ich denke, ich habe meine Fehler gefunden.


    Dieser Ordner "/tmp/ovcp" wurde nach einer Aktion nicht gelöscht :(
    Ich vermute, das kam durch einen Neustart als das Script ausgeführt wurde.


    Kann man es so erweitern, dass es beim Start einer Aktion erst kontrolliert, ob dieser Ordner vorhanden ist und wenn ja den löscht und dann erst die Aktion (Ban/Unban) startet.


    Edit: Neue Version hier.

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

  • Ich bekomme im Log folgende Fehlermeldung:


    "fail2ban.actions.action: ERROR /etc/fail2ban/action.d/sync.sh 84.175.154.206 add returned 100"



    Kann damit jemand was anfangen? Der Eintrag in der Firewall wird trotzdem erstellt und auch wieder gelöscht.

  • Habe jetzt auch das Skript auf meinem Server laufen, allerdings wird nichts in die Firewall eingetragen. Es wird auch keine Fehlermeldung im Log ausgegeben..


    Code
    2010-06-28 16:54:22,596 fail2ban.actions: WARNING [ssh] Ban 188.98.xxx.xx


    Gibt es eventuell Probleme mit Sonderzeichen im Kennwort, so dass sich das Skript nicht einloggen kann?

  • Das \ hat nix gebracht, allerdings geht es wenn ich ein Kennwort ohne Sonderzeichen benutze. Vielleicht gibts da noch nen Fix? :)


    Allerdings bringt das ganze nix wenn man bereits Regeln definiert hat und die IP-Adressen welche gesperrt werden sollen am Ende stehen. Denn vorher greifen bereits Regeln wodurch die Verbindung trotzdem zu Stande kommt.
    Ist es irgendwie möglich die Regeln an den Anfang der Liste schreiben zu lassen statt an das Ende?

  • Hallo,
    da auch ich mit dem Script keine Regeln löschen konnte, aber anlegen, habe ich mich an die Fehlersuche gemacht.
    Nach kurzer Zeit war klar, die while schleife füllt die Variable $REPLY nicht, obwohl das eigentlich eine Systemvariable ist.


    Lösung, schreibt in der ersten Zeile des Scriptes statt
    #!/bin/sh
    nun
    #!/bin/bash


    Damit wird eine andere Shell genutzt, die sogenannte Bash shell und schwups funktionierte es bei mir.
    Ich nutze Ubuntu 10.
    Wahrscheinlich nutzt Stachi eine andere Shell bzw. eine andere Linux Version.


    Alternativ, müsste man die Schleife anders bauen, damit nicht $REPLY genutzt wird. Es gibt da einige Treffer mit Problemen von While pipe und $Reply in den Suchmaschinen.


    Bei mir hat jedenfalls der o.g. Trick geklappt und freue mich nun über ein funktionierendes Sript :)


    Viel Spaß mit dem Script von Stachi


    Strato(flüchtling)andre

  • Zitat von Stratoandre;22484

    Wahrscheinlich nutzt Stachi eine andere Shell bzw. eine andere Linux Version.


    /bin/sh ist meistens nur ein Link auf eine wirkliche Shell. Und die kann je nach Betriebssystem (-Version) eine andere sein. Vor allem neuere Debian/Ubuntu Versionen neigen dazu dash o.ä. als Standardshell zu verwenden ;)



    MfG Christian

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