Selon votre distribution, modifiez /etc/fail2ban/jail.conf
Mettre à jour la [ssh]
section pour afficher quelque chose comme ceci
[ssh]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
bantime = 3600
maxretry = 3
Modifiez les paramètres selon vos besoins. Il ne bloquera pas spécifiquement root, mais chaque tentative qui échouera. Soyez prudent avec maxretry
et bantime
. Si vous échouez avec votre propre mot de passe, alors qu'il est maxtretry
réglé sur bas, vous vous bloquez pour le bantime
. Redémarrez fail2ban.
Je n'essaierais pas de bloquer l'IP pour toujours car de nombreuses tentatives proviennent d'IP dynamiques qui pourraient bloquer certains utilisateurs légitimes à un moment ultérieur.
(Certaines distributions offrent un fichier jail.options pour vos modifications. C'est l'endroit préféré pour mettre vos modifications car il ne devrait pas être affecté par les mises à jour écrasant la conf.)
Copiez ce code dans un nouveau fichier /etc/fail2ban/filter.d/sshd-root.conf:
Sachez que vous devrez peut-être modifier le failregex pour identifier avec précision les tentatives de connexion root échouées - utilisez:
pour tester qu'il identifie les entrées de journal correctes.
Ensuite, vous devez modifier votre jail.local pour utiliser le nouveau filtre - ajoutez quelque chose comme:
Évidemment, vous devez ajuster ces valeurs en fonction de vos besoins. Les paramètres ci-dessus supprimeront tous les paquets entrants de l'adresse IP incriminée après trois tentatives de connexion en tant que root, et relâcheront à nouveau l'adresse IP après une semaine.
la source
Puisque la valeur par défaut a
/etc/fail2ban/filter.d/sshd.conf
déjà une expression régulière pour AllowUsers et DenyUsers ...Ce qui suit:
exampleusername
depuis des IP externesroot
ou toutes les connexions sur le réseau local (192.168.0. *)La ligne `/ etc / ssh / sshd_config ':
Et dans
/etc/fail2ban/jail.conf
:la source
Comment avez-vous bloqué les connexions ssh? / bin / false ou l'option sshd_config DenyUsers?
Je ne peux pas penser à une réponse de ma tête, mais l'IIRC denyhosts analyse le fichier journal, alors voyez simplement si vous obtenez une entrée ayant échoué dans le fichier journal après que quelqu'un essaie de se connecter pour rooter avec désactivé
la source
/etc/ssh/sshd_config
, et suis passéPermitRootLogin
de oui à non. Je ne sais pas si cela est pertinent, mais j'ai rssh installé pour autoriser uniquement certains utilisateurs à se connecter en utilisant sftp mais pas autoriser ssh.