Fail2ban regle ...
Fermé
Steph
-
9 mars 2012 à 09:32
massi-85 Messages postés 311 Date d'inscription mercredi 2 novembre 2011 Statut Membre Dernière intervention 5 février 2014 - 10 avril 2012 à 12:32
massi-85 Messages postés 311 Date d'inscription mercredi 2 novembre 2011 Statut Membre Dernière intervention 5 février 2014 - 10 avril 2012 à 12:32
A voir également:
- Fail2ban regle ...
- Règle en cm sur téléphone - Guide
- Gmail regle de classement - Guide
- Regle excel - Guide
- Regle tarot 3 bouts meme pli - Forum Loisirs / Divertissements
- Word règle verticale bloquée ✓ - Forum Word
7 réponses
massi-85
Messages postés
311
Date d'inscription
mercredi 2 novembre 2011
Statut
Membre
Dernière intervention
5 février 2014
74
9 mars 2012 à 10:32
9 mars 2012 à 10:32
- Déjà sans parler de fail2ban, change d'abord ton port ( si tu l'as laisser par Default )
- Désactive le root au ssh, c'est celui qui est le plus attaquer par brut force.
- Créer toi un utilisateurs, et change lui c'est droit avec visudo.
- N'autorise que cet utilisateurs a utilisé le ssh.
Après fail2ban c'est un autre problème.
Il nous faudrait ton fichier conf pour voir d'ou viens le problème.
- Désactive le root au ssh, c'est celui qui est le plus attaquer par brut force.
- Créer toi un utilisateurs, et change lui c'est droit avec visudo.
- N'autorise que cet utilisateurs a utilisé le ssh.
Après fail2ban c'est un autre problème.
Il nous faudrait ton fichier conf pour voir d'ou viens le problème.
Steph_30
Messages postés
5
Date d'inscription
vendredi 9 mars 2012
Statut
Membre
Dernière intervention
11 mars 2012
9 mars 2012 à 11:12
9 mars 2012 à 11:12
Bonjour massi-85 et merci de me répondre ...
Je vais tenter de suivre tes conseils pour les utilisateurs et port relatif au ssh.
En attendant, voici mes fichiers de conf de fail2ban :
Je sais qu'il ne faut pas surcharger ce fichier, mais j'ai quand même activer la partie ssh.
J'ai créé le fichier jail.local
Le filre associé est :
Et le sshd.local qui va avec :
Du côté des actions :
Avec tout ça, lorsque je tape la commande :
fail2ban-regex "Mar 8 10:26:05 de468 sshd[11335]: Failed password for root from 1.2.3.4 port XXXXXX ssh2" "Failed [-/\w]+ for .* from <HOST>"
Le système me répond :
J'espère donner suffisamment de données pour éclaircir la situation.
Merci encore pour l'aide
Je vais tenter de suivre tes conseils pour les utilisateurs et port relatif au ssh.
En attendant, voici mes fichiers de conf de fail2ban :
cat jail.conf # Fail2Ban configuration file. # # This file was composed for Debian systems from the original one # provided now under /usr/share/doc/fail2ban/examples/jail.conf # for additional examples. # # To avoid merges during upgrades DO NOT MODIFY THIS FILE # and rather provide your changes in /etc/fail2ban/jail.local # # Author: Yaroslav O. Halchenko <debian@onerussian.com> # # $Revision: 281 $ # # The DEFAULT allows a global definition of the options. They can be override # in each jail afterwards. [DEFAULT] # "ignoreip" can be an IP address, a CIDR mask or a DNS host ignoreip = 127.0.0.1 bantime = 600 maxretry = 3 # "backend" specifies the backend used to get files modification. Available # options are "gamin", "polling" and "auto". # yoh: For some reason Debian shipped python-gamin didn't work as expected # This issue left ToDo, so polling is default backend for now backend = polling # # Destination email address used solely for the interpolations in # jail.{conf,local} configuration files. destemail = root@localhost # Default action to take: ban only action = iptables[name=%(__name__)s, port=%(port)s] # Following actions can be chosen as an alternatives to the above action. # To activate, just copy/paste+uncomment chosen 2 (excluding comments) lines # into jail.local # Default action to take: ban & send an e-mail with whois report # to the destemail. # action = iptables[name=%(__name__)s, port=%(port)s] # mail-whois[name=%(__name__)s, dest=%(destemail)s] # Default action to take: ban & send an e-mail with whois report # and relevant log lines to the destemail. # action = iptables[name=%(__name__)s, port=%(port)s] # mail-whois-lines[name=%(__name__)s, dest=%(destemail)s, logpath=%(logpath)s] # Next jails corresponds to the standard configuration in Fail2ban 0.6 # which was shipped in Debian. Please enable any defined here jail by including # # [SECTION_NAME] # enabled = true # # in /etc/fail2ban/jail.local. # [ssh] enabled = true port = ssh filter = sshd logpath = /var/logauth.log maxretry = 6 # # HTTP servers # [apache] enabled = false port = http filter = apache-auth logpath = /var/log/apache*/*access.log maxretry = 6 [apache-noscript] enabled = false port = http filter = apache-noscript logpath = /var/log/apache*/*error.log maxretry = 6 # # FTP servers # [vsftpd] enabled = false port = ftp filter = vsftpd logpath = /var/log/auth.log maxretry = 6 [proftpd] enabled = false port = ftp filter = proftpd logpath = /var/log/proftpd/proftpd.log maxretry = 6 [wuftpd] enabled = false port = ftp filter = wuftpd logpath = /var/log/auth.log maxretry = 6 # # Mail servers # [postfix] enabled = false port = smtp filter = postfix logpath = /var/log/postfix.log [couriersmtp] enabled = false port = smtp filter = couriersmtp logpath = /var/log/mail.log [sasl] enabled = false port = smtp filter = sasl logpath = /var/log/mail.log
Je sais qu'il ne faut pas surcharger ce fichier, mais j'ai quand même activer la partie ssh.
J'ai créé le fichier jail.local
cat jail.local [ssh-iptables] enabled = true filter = sshd action = iptables[name=SSH, port=ssh, protocol=tcp] logpath = /var/logauth.log maxretry = 5 findtime = 600
Le filre associé est :
cat filter.d/sshd.conf # Fail2Ban configuration file # # Author: Cyril Jaquier # # $Revision: 471 $ # [Definition] # Option: failregex # Notes.: regex to match the password failures messages in the logfile. The # host must be matched by a group named "host". The tag "<HOST>" can # be used for standard IP/hostname matching. # Values: TEXT # failregex = (?:(?:Authentication failure|Failed [-/\w+]+) for(?: [iI](?:llegal|nvalid) user)?|[Ii](?:llegal|nvalid) user|ROOT LOGIN REFUSED) .*(?: from|FROM) <HOST>(?: port \d*)?(?: ssh\d*)?\s*$ # Option: ignoreregex # Notes.: regex to ignore. If this regex matches, the line is ignored. # Values: TEXT # ignoreregex =
Et le sshd.local qui va avec :
cat filter.d/sshd.local [definition] failregex = Failed [-/\w]+ for .* from <HOST> # Option: ignoreregex # Notes.: regex to ignore. If this regex matches, the line is ignored. # Values: TEXT # ignoreregex =
Du côté des actions :
cat action.d/iptables.conf # Fail2Ban configuration file # # Author: Cyril Jaquier # # $Revision: 455 $ # [Definition] # Option: fwstart # Notes.: command executed once at the start of Fail2Ban. # Values: CMD # actionstart = iptables -N fail2ban-<name> iptables -A fail2ban-<name> -j RETURN iptables -I INPUT -p <protocol> --dport <port> -j fail2ban-<name> # Option: fwend # Notes.: command executed once at the end of Fail2Ban # Values: CMD # actionstop = iptables -D INPUT -p <protocol> --dport <port> -j fail2ban-<name> iptables -F fail2ban-<name> iptables -X fail2ban-<name> # Option: fwcheck # Notes.: command executed once before each fwban command # Values: CMD # actioncheck = iptables -n -L INPUT | grep -q fail2ban-<name> # Option: fwban # Notes.: command executed when banning an IP. Take care that the # command is executed with Fail2Ban user rights. # Tags: <ip> IP address # <failures> number of failures # <time> unix timestamp of the ban time # Values: CMD # actionban = iptables -I fail2ban-<name> 1 -s <ip> -j DROP # Option: fwunban # Notes.: command executed when unbanning an IP. Take care that the # command is executed with Fail2Ban user rights. # Tags: <ip> IP address # <failures> number of failures # <time> unix timestamp of the ban time # Values: CMD # actionunban = iptables -D fail2ban-<name> -s <ip> -j DROP [Init] # Defaut name of the chain # name = default # Option: port # Notes.: specifies port to monitor # Values: [ NUM | STRING ] Default: # port = ssh # Option: protocol # Notes.: internally used by config reader for interpolations. # Values: [ tcp | udp | icmp | all ] Default: tcp # protocol = tcp
Avec tout ça, lorsque je tape la commande :
fail2ban-regex "Mar 8 10:26:05 de468 sshd[11335]: Failed password for root from 1.2.3.4 port XXXXXX ssh2" "Failed [-/\w]+ for .* from <HOST>"
Le système me répond :
Success, the following data were found: Date: Thu Mar 08 10:26:05 2012 IP : 1.2.3.4 Date template hits: 1 hit: Month Day Hour:Minute:Second 0 hit: Weekday Month Day Hour:Minute:Second Year 0 hit: Year/Month/Day Hour:Minute:Second 0 hit: Day/Month/Year:Hour:Minute:Second 0 hit: TAI64N 0 hit: Epoch Benchmark. Executing 1000... Performance Avg: 0.07336878776550293 ms Max: 0.13804435729980469 ms (Run 246) Min: 0.068902969360351562 ms (Run 990)
J'espère donner suffisamment de données pour éclaircir la situation.
Merci encore pour l'aide
massi-85
Messages postés
311
Date d'inscription
mercredi 2 novembre 2011
Statut
Membre
Dernière intervention
5 février 2014
74
9 mars 2012 à 12:19
9 mars 2012 à 12:19
J'peux savoir a quoi sa te sert de taper la commande : fail2ban-regex /var/logauth.log "Failed [-/\w]+ for .* from <HOST>" ?
massi-85
Messages postés
311
Date d'inscription
mercredi 2 novembre 2011
Statut
Membre
Dernière intervention
5 février 2014
74
9 mars 2012 à 12:21
9 mars 2012 à 12:21
Mais moi y'a un truq que je comprend pas c'est le :
fail2ban-regex "Mar 8 10:26:05 de468 sshd[11335]: Failed password for root from 1.2.3.4 port XXXXXX ssh2" "Failed [-/\w]+ for .* from <HOST>"
1.2.3.4 port XXXXXXX .. a l'origine tu as une adresse IP et un port ici.
fail2ban-regex "Mar 8 10:26:05 de468 sshd[11335]: Failed password for root from 1.2.3.4 port XXXXXX ssh2" "Failed [-/\w]+ for .* from <HOST>"
1.2.3.4 port XXXXXXX .. a l'origine tu as une adresse IP et un port ici.
Steph_30
Messages postés
5
Date d'inscription
vendredi 9 mars 2012
Statut
Membre
Dernière intervention
11 mars 2012
Modifié par Steph_30 le 9/03/2012 à 13:16
Modifié par Steph_30 le 9/03/2012 à 13:16
Hello,
Sur le site de fail2ban, (http://www.fail2ban.org/wiki/index.php/MANUAL_0_8#Testing) ils expliquent qu'on peut tester les configurations des filtres mis en place de plusieurs manières :
fail2ban-regex "chaine_a_tester" "expression reg"
et
fail2ban-regexp fichier "expression reg"
(il y a d'autres combinaisons)
Donc fail2ban-regex /var/logauth.log "Failed [-/\w]+ for .* from <HOST>" correspond à ce 2ème test (selon moi).
(en même temps, et au moment où j'écris, je me demande si ce 2ème cas n'est pas traité comme le premier, à savoir que la commande prend /var/logauth.log comme une chaine et non un fichier --> je vais vérifier)
Pour ta 2ème remarque, j'ai effectivement une adresse réelle à la place de 1.2.3.4 et un vrai numéro de port à la place de xxxx.
Je deviens un brin parano en ce moment, donc je les ai cachés .... ok, c'est un peu n'importe quoi.
Merci de ton aide
Stéphane
Sur le site de fail2ban, (http://www.fail2ban.org/wiki/index.php/MANUAL_0_8#Testing) ils expliquent qu'on peut tester les configurations des filtres mis en place de plusieurs manières :
fail2ban-regex "chaine_a_tester" "expression reg"
et
fail2ban-regexp fichier "expression reg"
(il y a d'autres combinaisons)
Donc fail2ban-regex /var/logauth.log "Failed [-/\w]+ for .* from <HOST>" correspond à ce 2ème test (selon moi).
(en même temps, et au moment où j'écris, je me demande si ce 2ème cas n'est pas traité comme le premier, à savoir que la commande prend /var/logauth.log comme une chaine et non un fichier --> je vais vérifier)
Pour ta 2ème remarque, j'ai effectivement une adresse réelle à la place de 1.2.3.4 et un vrai numéro de port à la place de xxxx.
Je deviens un brin parano en ce moment, donc je les ai cachés .... ok, c'est un peu n'importe quoi.
Merci de ton aide
Stéphane
massi-85
Messages postés
311
Date d'inscription
mercredi 2 novembre 2011
Statut
Membre
Dernière intervention
5 février 2014
74
9 mars 2012 à 14:35
9 mars 2012 à 14:35
ah oui d'accord. Cette ligne indique que l'adresse IP "1.2.3.4 " a essayer de se connecter avec l'utilisateur root mais c'est planter. Donc c'est normal ! Au bout de 3 fois cette adresse devrait être banni pendant un lapes de temps que tu as définie.
Après le test avec : fail2ban-regex /var/logauth.log "Failed [-/\w]+ for .* from <HOST> je ne le comprends pas trop.
essaye juste fail2ban-regex /var/logauth.log
Après le test avec : fail2ban-regex /var/logauth.log "Failed [-/\w]+ for .* from <HOST> je ne le comprends pas trop.
essaye juste fail2ban-regex /var/logauth.log
Steph_30
Messages postés
5
Date d'inscription
vendredi 9 mars 2012
Statut
Membre
Dernière intervention
11 mars 2012
9 mars 2012 à 14:54
9 mars 2012 à 14:54
Exact, l'utilisateur d'adresse IP 1.2.3.4 a tenté sa chance et a échoué, mais il a été filtré par l'expression régulière et donc il est repéré. Et comme tu dis, au bout de 3 fois (en fait 5), il est banni pendant 600 secondes. Ca permet d'éviter à des robots de venir scanner sans cesse un port avec un nouveau mot de passe.
Pour le test fail2ban-regex /var/logauth.log "Failed [-/\w]+ for .* from <HOST>
En fait, fail2ban-regex permet de tester si une expression régulière qu'on va utiliser pour le filtrage fonctionne.
Pour les phases de test, les dev de fail2ban préconisent de tester :
1 - une ligne du log (où il y a un accès refusé) avec l'expression régulière.
2 - Si ça marche, on peut tester le log entier en lui passant le fichier.
Mais, tout ça, c'est pour la version 0.8... et je suis avec la version 0.7.5 (je sais, je sais, j'aurais dû regarder, mais j'ai fait l'install avec aptitude et j'ai cru avoir la dernière version).
Sur les version 0.7.5, cette fonctionnalité n'existe pas (tester une expression régulière sur un fichier).
Par contre, il y a quand même un soucis car aucune adresse n'est repérée dans mon log. Or, j'ai à peu près 100 attaques dedans (c'est un peu la fête au niveau de mon serveur en ce moment).
Est ce que fail2ban ne s'occupe que des nouvelles entrées dans le log ou bien, il analyse tout le log ?
Bref, je nage en eaux très troubles.
Comment avoir plus d'information de la part de fail2ban ?
Merci de ton aide
Pour le test fail2ban-regex /var/logauth.log "Failed [-/\w]+ for .* from <HOST>
En fait, fail2ban-regex permet de tester si une expression régulière qu'on va utiliser pour le filtrage fonctionne.
Pour les phases de test, les dev de fail2ban préconisent de tester :
1 - une ligne du log (où il y a un accès refusé) avec l'expression régulière.
2 - Si ça marche, on peut tester le log entier en lui passant le fichier.
Mais, tout ça, c'est pour la version 0.8... et je suis avec la version 0.7.5 (je sais, je sais, j'aurais dû regarder, mais j'ai fait l'install avec aptitude et j'ai cru avoir la dernière version).
Sur les version 0.7.5, cette fonctionnalité n'existe pas (tester une expression régulière sur un fichier).
Par contre, il y a quand même un soucis car aucune adresse n'est repérée dans mon log. Or, j'ai à peu près 100 attaques dedans (c'est un peu la fête au niveau de mon serveur en ce moment).
Est ce que fail2ban ne s'occupe que des nouvelles entrées dans le log ou bien, il analyse tout le log ?
Bref, je nage en eaux très troubles.
Comment avoir plus d'information de la part de fail2ban ?
Merci de ton aide
massi-85
Messages postés
311
Date d'inscription
mercredi 2 novembre 2011
Statut
Membre
Dernière intervention
5 février 2014
74
Modifié par massi-85 le 9/03/2012 à 15:12
Modifié par massi-85 le 9/03/2012 à 15:12
Change ton port 22 dans la conf ssh et fail2ban.. sa va limiter l'attaque des robots !
Je sais pas vraiment comment marche fail2ban au niveaux des logs. A mon avis il fait un check des nouvelles entrées ! si la ligne apparaît 5 fois, boom, l'IP est banni. Si tu as été attaqué qu'une fois depuis c'est peut etre normal. Enfin je sais pas trop !
Je sais pas vraiment comment marche fail2ban au niveaux des logs. A mon avis il fait un check des nouvelles entrées ! si la ligne apparaît 5 fois, boom, l'IP est banni. Si tu as été attaqué qu'une fois depuis c'est peut etre normal. Enfin je sais pas trop !
massi-85
Messages postés
311
Date d'inscription
mercredi 2 novembre 2011
Statut
Membre
Dernière intervention
5 février 2014
74
9 mars 2012 à 15:32
9 mars 2012 à 15:32
une petite commande sympa aussi :
grep "failure" /var/log/auth.log
Tu veras qui sont bloquer.
grep "failure" /var/log/auth.log
Tu veras qui sont bloquer.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Steph_30
Messages postés
5
Date d'inscription
vendredi 9 mars 2012
Statut
Membre
Dernière intervention
11 mars 2012
9 mars 2012 à 15:54
9 mars 2012 à 15:54
Hello,
A priori, fail2ban scanne les fichiers qu'on lui donne et si une ligne du fichier remplit les conditions, l'IP est bannie (direct au niveau iptables).
Effectivement, aujourd'hui, c'est le calme plat au niveau des attaques (tant mieux), mais du coup, je ne peux pas voir les réactions de file2ban.
Je vais donc attendre en laissant ce post ouvert et je reviendrai pour donner des nouvelles.
Je note la commande qui va bien. Ca peut me permettre de récupérer les iP qui posent problème. A moi de les bannir ... à la main
Merci encore de ton aide
A priori, fail2ban scanne les fichiers qu'on lui donne et si une ligne du fichier remplit les conditions, l'IP est bannie (direct au niveau iptables).
Effectivement, aujourd'hui, c'est le calme plat au niveau des attaques (tant mieux), mais du coup, je ne peux pas voir les réactions de file2ban.
Je vais donc attendre en laissant ce post ouvert et je reviendrai pour donner des nouvelles.
Je note la commande qui va bien. Ca peut me permettre de récupérer les iP qui posent problème. A moi de les bannir ... à la main
Merci encore de ton aide
massi-85
Messages postés
311
Date d'inscription
mercredi 2 novembre 2011
Statut
Membre
Dernière intervention
5 février 2014
74
9 mars 2012 à 16:17
9 mars 2012 à 16:17
Si tu veux je t'attaque pour faire le test ^^ :)
mais derien !
mais derien !
Steph_30
Messages postés
5
Date d'inscription
vendredi 9 mars 2012
Statut
Membre
Dernière intervention
11 mars 2012
11 mars 2012 à 21:37
11 mars 2012 à 21:37
Aloa,
Juste une petite réponse pour te dire que ce n'est pas la peine de m'attaquer (mais ça aurait été une bonne idée pour faire les tests).
Résultats du Week end : plusieurs attaques mais à chaque fois, fail2ban a fonctionné. C'est à dire qu'après le 5ème essai des hackers, ils étaient banni du serveur. Efficace et assez rassurant.
Je suis absent cette semaine (sans connexion possible au net, d'où mon coup de speed vendredi dernier), mais je ferai une petite suite à ce post pour donner mes config. Ca pourra toujours servir à d'autre.
A plus donc
Juste une petite réponse pour te dire que ce n'est pas la peine de m'attaquer (mais ça aurait été une bonne idée pour faire les tests).
Résultats du Week end : plusieurs attaques mais à chaque fois, fail2ban a fonctionné. C'est à dire qu'après le 5ème essai des hackers, ils étaient banni du serveur. Efficace et assez rassurant.
Je suis absent cette semaine (sans connexion possible au net, d'où mon coup de speed vendredi dernier), mais je ferai une petite suite à ce post pour donner mes config. Ca pourra toujours servir à d'autre.
A plus donc
massi-85
Messages postés
311
Date d'inscription
mercredi 2 novembre 2011
Statut
Membre
Dernière intervention
5 février 2014
74
12 mars 2012 à 10:25
12 mars 2012 à 10:25
C'est toujours un plaisir de parler avec des linuxiens ! ^^
Bon si ça marche t'en mieux pour toi !
A plus tard !
Bon si ça marche t'en mieux pour toi !
A plus tard !
massi-85
Messages postés
311
Date d'inscription
mercredi 2 novembre 2011
Statut
Membre
Dernière intervention
5 février 2014
74
10 avril 2012 à 12:32
10 avril 2012 à 12:32
Des nouvelles :) ?