iptables Regeln regeln (sortieren)

  • Tach Gemeinde,

    brauche :helpnew:
    Nutze folgendes script, um via ipset & iptables eine blacklist böser hosts zu generieren. (btw: das script kann ich nur empfehlen)

    https://github.com/trick77/ipset-blacklist

    Jetzt habe ich aber das Problem, dass sich die iptables-Regel mit den fail2ban Regeln "beisst".

    Soll bedeuten, dass zuerst die fail2ban Regeln greifen, bevor die blacklist-Regel greift.

    Im Moment sieht das ganze so aus:

    Code
    num  target                   prot   opt   source                 destination
    1       fail2ban-ssh-ddos  tcp    --     anywhere             anywhere      multiport dports 2909
    2       fail2ban-ssh           tcp    --     anywhere             anywhere      multiport dports 2909
    3       DROP                     all    --     anywhere              anywhere      match-set blacklist src

    Das würde ich gern rumdrehen, sodass es so aussieht (damit mir fail2ban nicht alle connections VOR der Blacklist wegfischt)

    Code
    num  target                   prot   opt   source                 destination
    1       DROP                   all      --       anywhere             anywhere             match-set blacklist src
    2       fail2ban-ssh-ddos  tcp    --      anywhere             anywhere             multiport dports 2909
    3       fail2ban-ssh           tcp    --      anywhere             anywhere             multiport dports 2909

    Die blacklist Regel pushe ich aktuell in der "/etc/network/interfaces" via "post-up iptables -I INPUT 1 -m set --match-set blacklist src -j DROP"

    Habe schon pre-up, up, post-up etc ausprobiert - ohne Erfolg.
    Hat jemand ne Idee wie ich es schaffe, dass " *up iptables -I INPUT 1 -m set --match-set blacklist src -j DROP" auch tut, was es soll und die Regel an erster Stelle einfügt?
    Bin :s und :wallbash:

    Einmal editiert, zuletzt von Eddy2909 (26. Oktober 2015 um 09:41)


  • Das würde ich gern rumdrehen, sodass es so aussieht (damit mir fail2ban nicht alle connections VOR der Blacklist wegfischt)

    Code
    num  target                   prot   opt   source                 destination
    1       DROP                   all      --       anywhere             anywhere             match-set blacklist src
    2       fail2ban-ssh-ddos  tcp    --      anywhere             anywhere             multiport dports 2909
    3       fail2ban-ssh           tcp    --      anywhere             anywhere             multiport dports 2909

    Die blacklist Regel pushe ich aktuell in der "/etc/network/interfaces" via "post-up iptables -I INPUT 1 -m set --match-set blacklist src -j DROP"

    Wie und zu welchem Zeitpunkt werden deine fail2ban-iptables-Regeln gesetzt? Denn wenn Du auch mit "-I INPUT 1" eine Regel setzt, kann diese weiter "nach hinten rutschen" wenn nachträglich für andere Regeln auch "-I INPUT" genutzt wird.

    BTW: In der interfaces-Datei sollte man evtl. "/sbin/iptables" statt "iptables" nutzen.

    Wie ist z. Zt. auf deinem PI, die Ausgabe von:

    Code
    sudo iptables -nvx -L


    ?

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • jap schon richtig - ich weiß :/
    Wann meine fail2ban Regeln gesetzt werden, weiß ich nicht - an dem "wie" will ich aber eigentlich nicht fummeln..
    Auszug aus /etc/fail2ban/action.d/iptables-multiport.conf
    iptables -I <chain> -p <protocol> -m multiport --dports <port> -j fail2ban-<name>

    Ausgabe von iptables -nvx -L:
    Chain INPUT (policy ACCEPT 66216 packets, 52313628 bytes)
    pkts bytes target prot opt in out source destination
    3108 268977 fail2ban-ssh-ddos tcp -- * * 0.0.0.0/0 0.0.0.0/0 multiport dports 2909
    3108 268977 fail2ban-ssh tcp -- * * 0.0.0.0/0 0.0.0.0/0 multiport dports 2909
    23 1781 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 match-set blacklist src

    Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
    pkts bytes target prot opt in out source destination

    Chain OUTPUT (policy ACCEPT 60157 packets, 65234209 bytes)
    pkts bytes target prot opt in out source destination

    Chain fail2ban-ssh (1 references)
    pkts bytes target prot opt in out source destination
    3108 268977 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0

    Chain fail2ban-ssh-ddos (1 references)
    pkts bytes target prot opt in out source destination
    3108 268977 RETURN all -- * * 0.0.0.0/0 0.0.0.0/0

    Einmal editiert, zuletzt von Eddy2909 (25. Oktober 2015 um 13:12)

  • Betr. das "wie", geht es nicht um fummeln sondern um wissen.
    Wie aus der "/etc/fail2ban/action.d/iptables-multiport.conf" ersichtlich ist, wird in der INPUT chain für das fail2ban-<name>-target auch die "insert"-Option -I (und nicht die "append"-Option -A) verwendet.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample


  • Betr. das "wie", geht es nicht um fummeln sondern um wissen.
    Wie aus der "/etc/fail2ban/action.d/iptables-multiport.conf" ersichtlich ist, wird in der INPUT chain für das fail2ban-<name>-target auch die "insert"-Option -I (und nicht die "append"-Option -A) verwendet.

    d.h. was wäre deine empfehlung? Einfach die fail2ban auf -A umändern?
    Hab bei sowas immer nen mulmiges Gefühl, weil ich den eventuellen Rattenschwanz nicht abschätzen kann :(

    Einmal editiert, zuletzt von Eddy2909 (25. Oktober 2015 um 13:30)


  • Einfach die fail2ban auf -A umändern?

    Das weiß ich nicht und das wäre dann ja evtl. fummeln.
    Warte mal ab, evtl. meldet sich ein fail2ban-Experte, mit einer Lösung für dein Problem.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p3 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!