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

Re: Bloquer les tentatives connexion ssh



Bonsoir,

François Cerbelle wrote:
> Le Mer 1 octobre 2008 14:45, Johan Dindaine a écrit :
>> J'en ai tellement qu'a certain moment le flood ralenti ce serveur. Je me
>> rappelle avoir deja vu sur la liste un programme permetant de banir une IP
>> apres un certain nombres d'essaie mais je n'ai pu retrouver le nom.
>> Pouvez vous me rappeler quel etait celui ci?
> 
> Je suis surpris que personne n'ai proposé une autre solution bien plus
> rapide et légère : le module "recent" de iptables qui va limiter la
> fréquence des tentatives. Tu peux lui dire par exemple :
> pas plus de trois tentatives en 60 secondes, sinon on bloque l'IP pendant
> 60 secondes et on note ca, mais pas plus de 10 fois par minutes
> 
> C'est direct dans le noyau, sans rien de plus qu'une simple règle. Tu
> verra les alertes passer, mais beaucoup moins souvent, elles ne chargeront
> pas tes logs et les trames TCP seront éliminées au plus bas niveau (donc
> moins de charge).
> 
> iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set
> --name SSH
> iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent
> --update --seconds 60 --hitcount 3 --rttl --name SSH -m limit --limit 10/m
> -j LOG
> iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent
> --update --seconds 60 --hitcount 3 --rttl --name SSH -j DROP
> # Accepter les connexions SSH
> iptables -A INPUT -p tcp -m tcp --dport 22 --syn -j ACCEPT

Je viens de m'amuser à ressortir un petit script:

# ./my_script.sh
mercredi 1 octobre 2008, 20:10:28 (UTC+0200)
diamond.example.com [192.168.0.1] 22 (ssh) open
diamond.example.com [192.168.0.1] 22 (ssh) : Connection timed out
diamond.example.com [192.168.0.1] 22 (ssh) : Connection timed out
diamond.example.com [192.168.0.1] 22 (ssh) : Connection timed out
diamond.example.com [192.168.0.1] 22 (ssh) : Connection timed out
 sent 0, rcvd 0
mercredi 1 octobre 2008, 20:10:32 (UTC+0200)
...
diamond.example.com [192.168.0.1] 22 (ssh) open
 sent 0, rcvd 0
mercredi 1 octobre 2008, 20:10:32 (UTC+0200)

Cela devrait rappeler quelque chose à François Boisson :p!

C'est simplement pour mettre en évidence que le module recent gère une
table pour lister les connexions mais que l'on peut atteindre ces
limites très vite.

Autrement, en effet c'est une solution simple et qui dépanne bien.

-- 
Franck Joncourt
http://debian.org - http://smhteam.info/wiki/
Fingerprint : C10E D1D0 EF70 0A2A CACF 9A3C C490 534E 75C0 89FE

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: