Linux,I want to set user passwd which contains the username,How to set passwd policy?

elsonwx picture elsonwx · Aug 5, 2016 · Viewed 7.3k times · Source

I hava know a litter about linux passwd policy,I have establish a new user

useradd testuser

And I want to set the testuser's passwd as abtestuserab I input

passwd testuser

the input abtestuserab It's failded,the terminal reported

BAD PASSWORD: The password contains the user name in some form

So,how to make the passwd valid. the /etc/pam.d/system-auth is like this

auth        required      pam_tally2.so onerr=fail deny=10 unlock_time=600 root_unlock_time=600 audit
auth        required      pam_env.so
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 1000 quiet_success
auth        required      pam_deny.so

account     required      pam_unix.so
account     sufficient    pam_localuser.so
account     sufficient    pam_succeed_if.so uid < 1000 quiet
account     required      pam_permit.so

password    requisite     pam_pwquality.so minlen=9 try_first_pass local_users_only retry=3 authtok_type= enforce_for_root ocredit=0 lcredit=-1 ucredit=-1 dcredit=-1 [badw
ords=first2012++]
password    required      pam_pwhistory.so remember=10 use_authtok enforce_for_root
password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password    required      pam_deny.so

session     optional      pam_keyinit.so revoke
session     required      pam_limits.so
-session     optional      pam_systemd.so
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session     required      pam_unix.so

Answer

Nehal J Wani picture Nehal J Wani · Aug 5, 2016

Following works for me:

/tmp ❯❯❯ sudo su
[sudo] password for wani: 
/tmp # ❯❯❯ useradd testuser
/tmp # ❯❯❯ echo -e "abtestuserab\nabtestuserab" | passwd testuser
Changing password for user testuser.
New password: BAD PASSWORD: The password contains the user name in some form
Retype new password: passwd: all authentication tokens updated successfully.
/tmp # ❯❯❯ 

If I am root user, then the BAD PASSWORD text is just a warning.