Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 25/03/2017, à 15:22

sebastien29800

[RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

bonjour à tous,

pouvez vous m'aider ?

je souhaite qu'un utilisateur soit bloqué pendant 3 heures s'il rentre 3 fois un mauvais mot de passe en se logant à son compte ?

merci à tous

Dernière modification par sebastien29800 (Le 29/03/2017, à 15:58)

Hors ligne

#2 Le 25/03/2017, à 15:32

maxire

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

Bonjour,

Je n'ai pas de réponse à cette question mais comme ce sujet m'intéresse je m'incruste dans cette discussion afin de mieux la suivre.


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#3 Le 25/03/2017, à 15:48

jplemoine

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

Je pense que c'est un boulot pour fal2ban --> si c'est en ssh, c'est sûr que ça fonctionne.
Si c'est en local, je pense qu'il faudra modifier les option par défaut.


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#4 Le 25/03/2017, à 15:53

maxire

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

@jplemoine, les options de quoi?
Je me demande si il n'est pas possible de passer par un ou des modules PAM.
Je chercherais de ce côté personnellement pour un blocage en local et à fortiori en connexion distante.


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#5 Le 25/03/2017, à 16:00

jplemoine

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

Attention : j'ai peut-être répondu trop vite !!!
fail2ban --> bloque l'adresse IP qui émet : ça ne fonctionne donc pas en local : on ne pourrais plus s'y connecter.
En local, je ne sais pas


Membre de l'ALDIL (Association Lyonnaise pour le Développement de l'Informatique Libre)
- En pro, après 20 ans de développement, administrateur Linux / Unix depuis Avril 2019.
- En privé, sous Ubuntu-Xubuntu depuis 2009.

Hors ligne

#6 Le 25/03/2017, à 16:08

MicP

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

Bonjour

Manque de précision dans la question en ce qui concerne "… en se logant à son compte…"

Avant, je prenais le temps de le faire, mais au bout d'un moment, je commence à fatiguer => j'ai la flemme de lister toutes les méthodes utilisables pour se logger à un compte utilisateur pour chaque système d'authentification (et je ne les connais pas tous)

Très souvent, la réponse est trouvée rien qu'en définissant précisément la question.

Dernière modification par MicP (Le 25/03/2017, à 16:17)

Hors ligne

#7 Le 25/03/2017, à 16:15

maxire

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

Idéalement je pense qu'il faudrait passer par un module PAM gérant un compteur de tentatives de connexion avortées successivement avec un verrouillage de l'utilisateur au bout de n tentatives.
Ce module PAM recevrait en paramètre le nombre maxi de tentatives autorisées.
Verrouillage équivalent à:

passwd --expire user
passwd --inactive "délai d'inactivité en jours"  user 

Facile à décrire, moins facile à transformer en un programme, je n'en ai pas la compétence (du moins pour coder en langage C).

Dernière modification par maxire (Le 25/03/2017, à 16:17)


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#8 Le 25/03/2017, à 16:29

maxire

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

Bof, en testant ce que je propose l'écran de connexion de Lightdm devient un peu fou en cas de demande de réinitialisation d'un mot de passe, par contre en mode console pas de problème.
Lightdm reste toujours léger plutôt bas de gamme...
Ce que demande sebastien29800 est certainement possible mais demande un  peu de travail, disons une analyse technique.


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#9 Le 25/03/2017, à 17:00

maxire

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

OK, c'est bien comme je le pensais, il existe un module PAM nommé pam_tally2 qui devrait pouvoir faire le job.
Je vous mets sa page man:
man pam_tally2


Maxire
Archlinux/Mate + Ubuntu 22.04 + Archlinux/Gnome sur poste de travail

Hors ligne

#10 Le 26/03/2017, à 18:56

sebastien29800

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

MicP a écrit :

Bonjour

Manque de précision dans la question en ce qui concerne "… en se logant à son compte…"

Avant, je prenais le temps de le faire, mais au bout d'un moment, je commence à fatiguer => j'ai la flemme de lister toutes les méthodes utilisables pour se logger à un compte utilisateur pour chaque système d'authentification (et je ne les connais pas tous)

Très souvent, la réponse est trouvée rien qu'en définissant précisément la question.


bonjour, oui en effet, cela reste un peu flou. désolé....
je suis sous ubuntu 16.04 avec KDE

je souhaite que l'utilisateur qui se trompe 10 fois en saisissant son mot de passe dans la fenêtre de connexion au bureau soit bloqué.

merci

Dernière modification par sebastien29800 (Le 26/03/2017, à 18:57)

Hors ligne

#11 Le 26/03/2017, à 23:15

MicP

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

Bonsoir

Pour bloquer l'utilisateur qui aurait tenté 10 fois d'entrer un mot de passe incorrect,
il faut modifier le fichier /etc/pam.d/common-auth en y ajoutant, juste après les premiers commentaires,
la ligne suivante :

auth  required  pam_tally2.so deny=10
michel@ubu:~$ cat /etc/pam.d/common-auth
#
# /etc/pam.d/common-auth - authentication settings common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of the authentication modules that define
# the central authentication scheme for use on the system
# (e.g., /etc/shadow, LDAP, Kerberos, etc.).  The default is to use the
# traditional Unix authentication mechanisms.
#
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
# To take advantage of this, it is recommended that you configure any
# local modules either before or after the default block, and use
# pam-auth-update to manage selection of other modules.  See
# pam-auth-update(8) for details.

# Bloquer l'accès à l'utilisteur qui aurait entré 10 fois un mot de passe incorrect
# Pour débloquer l'utilisateur toto :  sudo pam_tally2 --user toto --reset
auth  required  pam_tally2.so deny=10

# here are the per-package modules (the "Primary" block)
auth	[success=1 default=ignore]	pam_unix.so nullok_secure
# here's the fallback if no module succeeds
auth	requisite			pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth	required			pam_permit.so
# and here are more per-package modules (the "Additional" block)
# end of pam-auth-update config

michel@ubu:~$ 

Ce qui, au 11ème mot de passe incorrect entré,
va donner :
1490563114.png

=======
Pour savoir où en est l'utilisateur toto :

michel@ubu:~$ sudo pam_tally2 --user toto
Login           Failures Latest failure     From
toto               11    03/26/17 23:53:42  :1
michel@ubu:~$ 

Pour débloquer l'utilisateur toto :

michel@ubu:~$ sudo pam_tally2 --user toto --reset
Login           Failures Latest failure     From
toto               11    03/26/17 23:53:42  :1
michel@ubu:~$ 

On peut vérifier :

michel@ubu:~$ sudo pam_tally2 --user toto
Login           Failures Latest failure     From
toto                0    
michel@ubu:~$ 

=======
Voir :

man pam_tally2

=======
NOTES :
Comme ubuntu utilise un compte root sans mot de passe,
il faudra faire attention à ne pas avoir tous les comptes utilisateurs bloqués
surtout les comptes ayant accès à root par sudo,
sinon, il risque d'être difficile d'avoir accès au système.

Dernière modification par MicP (Le 27/03/2017, à 08:04)

Hors ligne

#12 Le 29/03/2017, à 14:04

sebastien29800

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

bonjour,

merci pour ces réponses.

un point me turlupine ! :

dans le cas d'un SUDO de "base", le mot de passe utilisateur de "Tartempion" et le même que pour "su".
si l'utilisateur "Tartempion" est bloqué pour cause de suite de mauvais mots de passe, "su" pourra t il le débloquer ? (en considérant que à l'origine, seul "Tartempion" a les droits admin.)

merci

Hors ligne

#13 Le 29/03/2017, à 14:56

MicP

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

Voir la NOTE dans mon précédent message.

En la reformulant un peu :
Pour débloquer un compte il faut utiliser les privilèges du compte root
Pour obtenir les privilèges du compte root, il faut avoir ouvert une session et y être connecté
Pour ouvrir une session il ne faut pas que le compte soit bloqué.

Hors ligne

#14 Le 29/03/2017, à 15:02

sebastien29800

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

merci,

je comprends donc que : si il n'y a qu'un seul compte utilisateur (Z) qui a les droits admin via sudo et que ce dernier est bloqué, on ne pourra pas le débloquer en utilisant 'su'

cependant, on peut créer un compte "admin" avec un mot de passe et là, il pourra débloquer l'utilisateur (Z) ?

Hors ligne

#15 Le 29/03/2017, à 15:23

MicP

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

Si un mot de passe a été donné au compte root
il sera possible d'ouvrir une console en mode texte
et d'ouvrir une session en mode texte en s'identifiant avec le compte root
et donc il sera possible
- de remettre à zéro le compteur de mot de passes incorrects d'un utilisateur
- et/ou de modifier le fichier /etc/pam.d/common-auth

Dernière modification par MicP (Le 29/03/2017, à 15:28)

Hors ligne

#16 Le 29/03/2017, à 15:40

sebastien29800

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

ok merci beaucoup pour ces explications

si on désire uniquement garder un compte utilisateur sans activer *ROOT, pourra t on avec un livecd modifier /etc/pam.d/common-auth ?
que doit on changer dans ce fichier pour débloquer l'utilsateur ? mettre 20 au lieu de 10 pour lui redonner 10 chances supplémentaires ?

Hors ligne

#17 Le 29/03/2017, à 15:51

MicP

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

Depuis un autre système (live ou autre)
si on a le droit d'écriture sur le système de fichiers contenant /etc/pam.d/common-auth
on pourra commenter la ligne :

auth  required  pam_tally2.so deny=10

en rajoutant un caractère # en premier caractère de cette ligne.
ce qui donnera :

# auth  required  pam_tally2.so deny=10

et ce qui permettra de se connecter au système ubuntu quand on le démarrera après modification,
et si on est connecté avec un compte qui permet d'utiliser sudo,
on pourra remettre à 0 le compteur de mots de passe d'un utilisateur.
avec, par exemple :

sudo pam_tally2 --user toto --reset

Mais changer la valeur du nombre de mots de passes incorrects maximum dans le fichier /etc/pam.d/common-auth
ne remetra pas à zéro les compteurs du nombre mots de passes incorrects déjà entrés par utilisateur.

Dernière modification par MicP (Le 29/03/2017, à 15:55)

Hors ligne

#18 Le 29/03/2017, à 15:54

sebastien29800

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

ok, sais tu où est stocké le compteur des mauvais mots de passe ?

Hors ligne

#19 Le 29/03/2017, à 15:56

MicP

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

man pam_tally2

a écrit :

…
           file=/path/to/counter
               File where to keep counts. Default is /var/log/tallylog.
…

Mais je ne connais pas le format de ce fichier.

Dernière modification par MicP (Le 29/03/2017, à 16:25)

Hors ligne

#20 Le 29/03/2017, à 15:58

sebastien29800

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

ok merci beaucoup pour tout!! smile

Dernière modification par sebastien29800 (Le 29/03/2017, à 15:58)

Hors ligne

#21 Le 29/03/2017, à 16:32

MicP

Re : [RESOLU]comment bloquer un utilisateur après 5 mauvais mots de passe ?

# Pour que le compte utilisateur dont l'UID est 1000 ne soit pas bloqué
# (le premier utilisateur créé a pour UID 1000, voir le retour de la commande 'id -u')
#  et pour que les autres comptes utilisateur soient bloqués pendant 30 secondes 
#  si ils ont entré 3 mots de passe incorrects successifs.
auth [success=1 default=ignore] pam_succeed_if.so uid eq 1000
auth required pam_tally2.so deny=3 onerr=fail unlock_time=30

Dernière modification par MicP (Le 29/03/2017, à 17:07)

Hors ligne