Iptables anti-force brute

Bonsoir,

Je cherche une solution directement depuis iptables afin de bloquer une IP lorsque celle-ci échoue lors de l’authentification sur le service SSH.

Il existe fail2ban, mais je ne veux pas l’utiliser pour différente raison… Je cherche donc à le faire nativement depuis iptables si cela est possible.

Avez-vous une solution ?

Bonne soirée !

Tel que tu l’exprimes, ce n’est pas possible. Iptables n’a aucun moyen de savoir que l’authentification SSH a échoué.

Je m’en doutais presque… J’ai essayé limit qui fait bien son boulot, mais n’agit pas dans le cas d’une auth brute force !

Quel peut être le script à faire tourner afin de bloquer une IP ?

La correspondance [mono]limit[/mono] n’est pas vraiment adaptée à cet usage. Il ne fait aucune distinction entre les sources des paquets, et affecte donc indistinctement les attaquants et les utilisateurs légitimes. Cela peut résulter en un déni de service contre ces derniers si le trafic généré par les attaquants est suffisant. A mon avis [mono]limit[/mono] ne devrait être utilisé que pour protéger les ressources du serveur contre une surcharge (dont l’épuisement causerait un déni de service de toute façon).

Des correspondances plus adaptées sont plutôt à chercher du côté de [mono]connlimit[/mono], [mono]haslimit[/mono] ou [mono]recent[/mono]. Mais là encore elles ne prennent en compte au mieux que le nombre de connexions SSH par adresse source, ça ne vaut pas une solution de type fail2ban ou équivalent qui se base sur les journaux d’échec de SSH.

Salut,
Tout ce que tu pourra faire avec iptables c’est de limiter le nombre de connexion par seconde par ip. Mais concernant ssh, pour ma part depuis que j’ai modifié le port d’écoute, je n’est plus trop de tentative (sur un serveur avec ip publique). Si ça peut t’aider.
Cordialement