Bloker gentagne connect forsøg med iptables

Der kan være mange grunde til at man kan ønske og blokere gentagne “connect” forsøg.

Du kan blokere gentagne SSH connect fordøg med iptables
Du kan blokere gentagne SSH connect fordøg med iptables

Det kan f.eks. være på en FTP server, hvor man ønsker at beskytte mod brute force.

Ja jeg ved at den gennemsnitlige nørd vil takke nej til alt der hedder FTP det er for usikkert, der er desværre stadig systemer derude, der afhænger af FTP

Det må være vores opgave som system udvikler, at gøre dette bedre i fremtiden, fortiden har vi svært  ved at ændre på.

Det kunne også være på ens SSH Port, igen for at beskytte mod brute force.

I IPTables er der heldigvis en let metode til at forhindre dette.

/sbin/iptables -I INPUT -p tcp --dport 21 -m state --state NEW -m recent --set
/sbin/iptables -I INPUT -p tcp --dport 21 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 -j DROP

Jeg vil tillade mig at antage, at du kender de basale iptables flag, så lad os kigge på de sidste par linjer:

-m recent --set

Denne del sørger udelukkende for at vi kan tælle pakkerne, så vi kender forbindelses forsøgene.

-m recent --update --seconds 60 --hitcount 4 -j DROP

Denne del, er den reelle blokering, den siger at hvis der er fire forsøg indenfor 60 sekunder skal den lave en DROP af pakkerne i den resterende del af de 60 sekunder.
Dette burde kunne hjælpe dig med at blokere gentagne connect forsøg, men husk nu: Du kan ikke udelukkende stole på en firewall som sikkerhed, det giver dig en falsk tryghed, reelt set kan dine attacker jo være “heldig” at komme igennem på første brute force forsøg.