1. 程式人生 > >usermod 命令 ,用戶密碼管理,mkpasswd命令

usermod 命令 ,用戶密碼管理,mkpasswd命令

pre username 令牌 BE localhost class 用戶 code 用戶名

usermod 更改用戶屬性的命令

  • usermod – u 111 username 更改uid
  • usermod -g 1010 username 更改 gid
  • usermod –d /home/safasfa username 更改家目錄
  • usermod -s /sbin/nologin username 更改shell
  • usermod –G 添加擴展組
[root@localhost ~]# id user1
uid=1000(user1) gid=1007(user1) 組=1007(user1)
[root@localhost ~]# usermod -G grp2,user2 user1
[root@localhost ~]# id user
[root@localhost ~]# id user1
uid=1000(user1) gid=1007(user1) 組=1007(user1),1001(grp2),1008(user2)

用戶密碼管理

  • 一鍵更改密碼:echo "密碼" | passwd --stdin 用戶名
  • 一鍵更改密碼:echo -e "密碼\n密碼" |passwd 用戶名
  • passwd 因為有set_uid 所以可以讓普通用戶更改自己密碼的權限
  • root用戶下直接輸入passwd回車就可以更改密碼了
  • 普通用戶的密碼 passwd aming 後面跟普通用戶的名字。
[root@localhost ~]# tail /etc/shadow
systemd-network:!!:17392::::::
dbus:!!:17392::::::
polkitd:!!:17392::::::
tss:!!:17392::::::
postfix:!!:17392::::::
sshd:!!:17392::::::
chrony:!!:17392::::::
user1:!!:17392:0:99999:7:::
user2:!!:17392:0:99999:7:::
user3:!!:17392:0:99999:7:::
[root@localhost ~]#
  • 當第二段是!!號時候說明用戶密碼為空。空密碼意味著不能登陸。
[root@localhost ~]# head /etc/shadow
root:$6$znTezPbkelEW0LpW$6gkLI29foQ3BWGO0fHkE2iyibYMy2UuxnVUR24jU2K1LkPJjdBEkVeJmf9RoMrAwSu9LH.xl53LpfXHvItSzT.::0:99999:7:::
bin:*:17110:0:99999:7:::
daemon:*:17110:0:99999:7:::
adm:*:17110:0:99999:7:::
lp:*:17110:0:99999:7:::
sync:*:17110:0:99999:7:::
shutdown:*:17110:0:99999:7:::
halt:*:17110:0:99999:7:::
mail:*:17110:0:99999:7:::
operator:*:17110:0:99999:7:::
[root@localhost ~]#
  • 如果是*號表示這個用戶是鎖定的,不能用的。

passwd -l aming 鎖定aming用戶

passwd –u aming 解鎖aming用戶

usermod –L aming 也是鎖定用戶

usermod –U aming 解鎖用戶

  • 還有一個一次性不用確認明文更改密碼的命令

    [root@localhost ~]# passwd --stdin user1
    更改用戶 user1 的密碼 。
    123456
    passwd:所有的身份驗證令牌已經成功更新。
    [root@localhost ~]#
  • 還有一種寫法,用上管道符號,管道符是把前面的命令的結果,傳到後面的命令

[root@localhost ~]# echo "123456" |passwd --stdin user3
更改用戶 user3 的密碼 。
passwd:所有的身份驗證令牌已經成功更新。
[root@localhost ~]#

mkpasswd 命令

  • 用來生成密碼的小工具,需要安裝一個包,yum install –y expect
  • 通過這個命令可以隨機生成一個字符串。
  • mkpasswd

    默認生成9位的高強度的字符串。

    [root@localhost ~]# mkpasswd
    gaAj?06Hj
  • mkpasswd -l 12

    生成12位字符

[root@localhost ~]# mkpasswd -l 12
2hrWZ$jdxqj0
  • mkpasswd -l 12 –s 3

    生成3個特殊字符

[root@localhost ~]# mkpasswd -l 12 -s 3
5wi8Foh=:Vo\
  • mkpasswd -l 12 –s 0

    生成0個特殊字符

[root@localhost ~]# mkpasswd -l 12 -s 0
b0bfIodJzd8x

usermod 命令 ,用戶密碼管理,mkpasswd命令