Outils pour utilisateurs

Outils du site


Catégories

Catégories:

Comment bloquer un compte utilisateur après plusieurs tentatives échouées

Voici, comment renforcer simplement la sécurité en bloquant les compte utilisateurs après un nombre consécutive d'authentifications échoué.
Cela peut être réalisé par l'utilisation du module pam_faillock ce qui permet de verrouiller temporairement le compte de l'utilisateur dans le cas de multiples tentatives authentifications et de garder un enregistrement de cette évènement.

pam_faillock est une partie de Linux PAM (Pluggable Authentication Modules), c'est un mécanisme dynamique pour implémenter des services d'authentification dans les applications et divers services système pour auditer l'activité du shell d'une connexion utilisateur.

Comment verrouiller des comptes d'utilisateurs après des échecs d'authentification consécutifs

Vous pouvez configuré les fonctionnalité ci-dessous dans le fichier /etc/pam.d/system-auth et /etc/pam.d/password-auth, en ajoutant les lignes suivantes:

auth    required       pam_faillock.so preauth silent audit deny=3 unlock_time=600
auth    [default=die]  pam_faillock.so authfail audit deny=3 unlock_time=600
  • audit : Correspond à l’utilisateur audité
  • deny : Utilisé pour définir le nombre de tentative (3 dans notre cas), après ça le compte utilisateur devrai être bloqué.
  • unlock_time : défini le temps (300 secondes, soit 5 minutes) pour que le compte soit débloqué.
A noté que l'ordre des lignes est vraiment important, une mauvaise configurations peut bloquer l'ensemble des login de la machine.

La section auth dans les deux fichiers doit être organisé de cette façon :

auth        required      pam_env.so
auth        required      pam_faillock.so preauth silent audit deny=3 unlock_time=300
auth        sufficient    pam_unix.so  nullok  try_first_pass
auth        [default=die]  pam_faillock.so  authfail  audit  deny=3  unlock_time=300
auth        requisite     pam_succeed_if.so uid >= 1000 quiet_success
auth        required      pam_deny.so

Maintenant ouvrez les 2 fichiers :

vim /etc/pam.d/system-auth
vim /etc/pam.d/password-auth 

L'entrée par défaut dans la section auth des 2 fichiers ressembles à ça:

#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        sufficient    pam_fprintd.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 1000 quiet
auth        required      pam_deny.so

Après l'ajout des paramètres ci-dessus, ça devrai ressemblé à ça:

#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        required      pam_faillock.so preauth silent audit deny=3 unlock_time=300
auth        sufficient    pam_fprintd.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        [default=die]  pam_faillock.so  authfail  audit  deny=3  unlock_time=300
auth        requisite     pam_succeed_if.so uid >= 1000 quiet
auth        required      pam_deny.so

Puis ajouter la ligne suivant à la fin de la section account dans les 2 fichiers du dessus:

account     required      pam_faillock.so

Comment verrouiller le compte ''root'' après l'échec des tentatives de connexion

Pour verrouiller le compte root après l'échec des tentatives d'authentification, ajoutez l'option even_deny_root aux lignes des deux fichiers de la section auth comme ceci.

auth        required      pam_faillock.so preauth silent audit deny=3 even_deny_root unlock_time=300
auth        [default=die]  pam_faillock.so  authfail  audit  deny=3 even_deny_root unlock_time=300

Une fois que vous avez tout configuré.
Vous pouvez redémarrer les services d'accès distant comme sshd, pour que la stratégie ci-dessus prenne effet, si les utilisateurs utilisent ssh pour se connecter au serveur.

Comment voir les tentatives d'authentifications échoués

Vous pouvez voir tous les logs d'authentification ayant échoué à l'aide de l'utilitaire de faillock, qui est utilisé pour afficher et modifier le log des échecs d'authentification.
Vous pouvez voir les tentatives de connexion échouées pour un utilisateur particulier comme cela.

faillock --user toto

Pour afficher toutes les tentatives de connexion infructueuses, exécutez faillock sans aucun argument comme ceci:

faillock

Pour effacer les logs d'échec d'authentification d'un utilisateur, exécutez cette commande:

faillock --user toto --reset

Pour effacer tous les logs de l'ensemble des utilisateurs :

faillock --reset

Enfin, pour dire au système de ne pas verrouiller les comptes d'un utilisateur ou de plusieurs utilisateurs après plusieurs tentatives de connexion infructueuses, ajoutez l'entrée suivante, juste au-dessus de l'appel pam_faillock dans la section auth des deux ficheirs /etc/pam.d/system-auth et /etc/pam.d/password-authcomme ça (Ajoutez simplement les noms utilisateurs séparés par deux points.)

auth   [success=1 default=ignore] pam_succeed_if.so user in toto:tata 

Vos fichiers devrai ressembler à cela:

auth  required      pam_env.so
auth   [success=1 default=ignore] pam_succeed_if.so user in toto:tata 
auth   required      pam_faillock.so preauth silent audit deny=3 unlock_time=600
auth   sufficient    pam_unix.so  nullok  try_first_pass
auth   [default=die]  pam_faillock.so  authfail  audit  deny=3  unlock_time=600
auth   requisite     pam_succeed_if.so uid >= 1000 quiet_success
auth   required      pam_deny.so

source : tecmint.com


0 Comments

Comments :