[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: libssh-Bruteforcer in IPTABLES Chain bannen



Hallo alle,

Am Mittwoch, 30. März 2005 23:03 schrieb Dirk Salva:
> On Wed, Mar 30, 2005 at 09:20:14PM +0200, Peter Wiersig wrote:
> > > Das würde also die Anzahl der Pakete auf Port 22 auf 1/Stunde
> > > begrenzen.
> >
> > Ja, ich hab vergessen, das da noch der Parameter --tcp-flags SYN
> > mit rein muss, damit die Rule nur auf Verbindungsaufbauten
> > reagiert.
>
> Bei mir funktioniert die ganze Regel nicht. Momentan habe ich zwei
> Zeilen, die wie folgt aussehen:
> $IPTABLES -A INPUT -m dstlimit -p TCP --dport ssh --dstlimit 1/min
> --dstlimit-mode srcip-dstip -j ACCEPT $IPTABLES -A INPUT -m dstlimit -p UDP
> --dport ssh --dstlimit 1/min --dstlimit-mode srcip-dstip -j ACCEPT
>
> Damit bekomme ich eine Fehlermeldungen:
> Starting IP filtering...
> iptables v1.2.11: You have to specify --dstlimit-name
> Try iptables -h or 'iptables --help' for more information.
> iptables v1.2.11: You have to specify --dstlimit-name
> Try iptables -h or 'iptables --help' for more information.
>

Ich habe ihm auch nen Namen gegeben, Resultat genau wie bei Dir.

> Dann füge ich --tcp-flags SYN ein (ganz hinten, vor dem -j) und
> bekomme:
> Starting IP filtering...
> iptables v1.2.11: --tcp-flags requires two args.
> Try iptables -h or 'iptables --help' for more information.
> iptables v1.2.11: Unknown arg --tcp-flags
> Try iptables -h or 'iptables --help' for more information.
>

Das entnimmt man man iptables ;-)

 --tcp-flags [!] mask comp
              Match when the TCP flags are as specified.  The first argument 
is the flags  which  we  should  examine,
              written as a comma-separated list, and the second argument is a 
comma-separated list of flags which must
              be set.  Flags are: SYN ACK FIN RST URG PSH ALL NONE.  Hence the 
command
               iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST SYN
              will only match packets with the SYN flag set, and the ACK, FIN 
and RST flags unset.


> Und wenn ich vor dem -j noch --dstlimit-name wie verlangt einfüge,
> fehlt ihm ein Name. Gebe ich als Name ssh an (--dstlimit-name ssh),
> so meckert er:
> Starting IP filtering...
> iptables: No chain/target/match by that name
>

Ich habe dann noch eine DROP-Regel generiert mit dem Namen, hat aber auch 
nichts geändert.
Doch, die Regel funktioniert. Ich kann mich kein zweites Mal einloggen ;-)
Ich bin noch drin, habe aber glücklicherweise eine Whitelist, die zuerst 
greift .....


> Und nun? Ich habe schon nachgelesen, das --tcp-flags nur für TCP
> gilt, habe das also bei UDP rausgenommen. Außerdem benötigt
> --tcp-flags tatsächlich zwei Argumente, wieso geht das bei Dir mit
> nur einem Argument? Was wäre die richtige Angabe? Die Fragen:
>
> Wieso geht das da oben nicht, was mache ich falsch?
>
> Brauche ich für ssh überhaupt UDP?
>

Nein.

> ciao, Dirk

Was ich aber eigentlich sagen will. Das in einer vorherigen Mail erwähnte 
Recent-Modul funktioniert auch  mit Sarge. Die Doku ist noch nicht angepasst.
Damit muss ich aber noch experimentieren, weil ich mich immer noch nur einmal 
einloggen kann. Keine Lust die Verbindung zu kappen, um den IP-Wechsel zu 
testen.

cheers

Guido



Reply to: