Comment changer / désactiver le test de complexité du mot de passe lors du changement de mot de passe?

48

Je sais que c'est une "mauvaise" idée, je sais que ce n'est pas sécurisé, je sais. Je cherchai une réponse sur le net et je ne vis que des pleurs que ce ne soit pas bon. Mais j'aime bien utiliser Linux car cela me permet de créer le système que je veux et que j'aime utiliser. La fin de l'intro.

J'essaie de changer le mot de passe:

ruslan:~% passwd
Changing password for ruslan.
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
You must choose a longer password

Si j'essaie, sudo passwd ruslanje peux définir le mot de passe de mon choix pour ne pas avoir à vérifier la complexité du mot de passe pour le mot de passe sur mon système.

Après avoir recherché sur Google, j'ai découvert qu'il devrait exister un module PAM pam_cracklib qui teste la complexité du mot de passe et qui peut être configuré. Mais les paramètres de mon mot de passe PAM n'incluent pas pam_cracklib:

% cat /etc/pam.d/passwd | grep '^[^#]'
@include common-password
% cat /etc/pam.d/common-password | grep '^[^#]'
password    [success=1 default=ignore]  pam_unix.so obscure sha512
password    requisite           pam_deny.so
password    required            pam_permit.so
password    optional    pam_gnome_keyring.so 

Je suppose que pam_unix effectue ce test ... Oups ... Les gars, au moment où j'ai fini d'écrire cette phrase, j'ai une illumination et j'ai tapé man pam_unixdans un terminal où j'ai trouvé les options nécessaires pour le module pam_unix.

Je viens de supprimer l'option obscure et d'ajouter minlen = 1 et maintenant je suis heureux. Alors maintenant, j'ai cette ligne dans /etc/pam.d/common-password:

password    [success=1 default=ignore]  pam_unix.so minlen=1 sha512

et je peux définir le mot de passe que je veux.

J'ai décidé de garder ce poste pour les personnes qui pourraient avoir besoin de cette solution également. Désolé et merci.

rslnx
la source
Je ne peux pas répondre à ma propre question pendant 8 heures après l'avoir posée, j'attendrai :)
rslnx
Je voulais simplement changer mon pwd en 123. Impossible de le faire avec passwd. J'ai essayé "sudo passwd <nom_utilisateur>" et cela a fonctionné à merveille. Je n'avais pas besoin de repos du charabia. Merci pour cette partie! :)
zeFree
@zeFree, le point clé de ma solution est d'autoriser tout utilisateur (ne disposant pas d'autorisations sudo) à utiliser des mots de passe simples
rslnx
1
Grande introduction. J'ai un ordinateur portable Windows qui utilise 50% de cycles de traitement pour me protéger des virus. Devine quoi? Ne pas besoin de virus. L'ordinateur est déjà sans valeur. Alors .. Linux nous permet de faire ce que nous voulons. Je suis derrière un pare-feu et l'ordinateur ne quitte pas mon domicile. Mot de passe court? Oui s'il vous plaît.
javadba
@rslnx Je pense que lorsque vous postez votre question, vous avez la possibilité de donner une réponse immédiatement. Je pense que le délai de 8 heures est là seulement si vous ne publiez pas votre Q / Une paire en même temps
HJR

Réponses:

53

Ok, je vais répondre à ma question :)

J'ai constaté que le pam_unixmodule vérifie la complexité du mot de passe et qu'il peut être configuré.

man pam_unix:

   minlen=n
       Set a minimum password length of n characters. The default value is
       6. The maximum for DES crypt-based passwords is 8 characters.

   obscure
       Enable some extra checks on password strength. These checks are
       based on the "obscure" checks in the original shadow package. The
       behavior is similar to the pam_cracklib module, but for
       non-dictionary-based checks.

Solution:
modifiez la ligne dans le pam_unixmodule du /etc/pam.d/common-passwordfichier pour:

password    [success=1 default=ignore]  pam_unix.so minlen=1 sha512

Il vous permet de définir n’importe quel mot de passe avec une longueur minimale de 1.

rslnx
la source
Détails connexes sur la complexité du mot de passe: askubuntu.com/questions/244115/…
Kevin Bowen
11

S'il s'agit d'une fois, en utilisant la commande passwd en tant que root, vous pouvez définir un mot de passe simple pour un utilisateur en entrant simplement la valeur souhaitée.

sudo su && passwd username

puis entrez le mot de passe deux fois à l'invite.

sweetfa
la source
1
Il veut dire que faire sudo su && passwd usernamealors que Linux vous permettra d'utiliser n'importe quel mot de passe.
utilisateur
7

Ouvrir le fichier de configuration de mot de passe commun pour le modifier

sudo gedit /etc/pam.d/common-password

Commentez cette ligne:

#password   [success=2 default=ignore]  pam_unix.so obscure use_authtok try_first_pass sha512

Ajoutez également des commentaires sur cette ligne, sinon le paramètre password vous demandera de transmettre un mélange de lettres majuscules / minuscules:

#password   requisite           pam_passwdqc.so enforce=everyone max=18 min=disabled,8,8,1,1 retry=2 similar=deny

Ajoutez maintenant cette ligne dans le même fichier:

password    [success=1 default=ignore]  pam_unix.so **minlen=1** sha512

cela devrait le faire ...

rptr87
la source
Pour votre information, il n'y a pas de ligne pam_passwdqc.so dans mon installation par défaut du serveur 14.04. Peut-être que quelqu'un (admin?) L'a ajouté exprès? ;)
Tomofumi