1. 程式人生 > >6.12 3.4-3.6

6.12 3.4-3.6

usermod命令 mkpasswd工具 用戶密碼管理

3.4 usermod命令

修改用戶的uid

[root@hyc-01-01 ~]# usermod -u 1014 hyc5

[root@hyc-01-01 ~]# tail -6 /etc/passwd

hyc:x:1000:1000::/home/hyc:/bin/bash

hyc1:x:1001:1001::/home/hyc1:/bin/bash

hyc2:x:1006:1001::/home/hyc2:/bin/bash

hyc3:x:1007:1005::/home/hyc111:/sbin/nologin

hyc4:x:1008:1008::/home/hyc4:/bin/bash

hyc5:x:1014:1011::/home/hyc5:/bin/bash 修改用戶uid

修改用戶的組id

[root@hyc-01-01 ~]# usermod -g 1001 hyc5 或者

[root@hyc-01-01 ~]# usermod -g hyc1 hyc5

usermod:無改變

[root@hyc-01-01 ~]# usermod -d /home/abc hyc5 指定用戶家目錄

[root@hyc-01-01 ~]# usermod -s /sbin/nologin hyc5 指定用戶shell

[root@hyc-01-01 ~]# tail -1 /etc/passwd

hyc5:x:1014:1001::/home/abc:/sbin/nologin

擴展組

[root@hyc-01-01 ~]# useradd -G 1005 hyc6 創建用戶時指定擴展組

[root@hyc-01-01 ~]# id hyc6

uid=1015(hyc6) gid=1015(hyc6)

=1015(hyc6),1005(grp2)

gid只包含用戶的主組;

組包含了主組和擴展組;

[root@hyc-01-01 ~]# usermod -G 1005 hyc6 為已經創建的用戶添加擴展組

[root@hyc-01-01 ~]# id hyc6

uid=1015(hyc6) gid=1015(hyc6) =1015(hyc6),1005(grp2)

[root@hyc-01-01 ~]# usermod -G 1011 hyc6 僅添加一個擴展組則會將原來的擴展組替換,只留下最新指定的擴展組

[root@hyc-01-01 ~]# id hyc6

uid=1015(hyc6) gid=1015(hyc6) =1015(hyc6),1011(grp5)

[root@hyc-01-01 ~]# usermod -G 1011,1002 hyc6 一次指定多個擴展組

[root@hyc-01-01 ~]# id hyc6

uid=1015(hyc6) gid=1015(hyc6) =1015(hyc6),1002(grp1),1011(grp5)

[root@hyc-01-01 ~]# usermod -g 1011,1002 hyc6 -g指定組時僅允許指定一個組(輸入多個組也會被看成一個組)

usermod:“1011,1002”組不存在

3.5 用戶密碼管理

passwd命令擁有特殊全下set_uid,可以讓普通用戶修改自己的密碼

[root@hyc-01-01 ~]# passwd passwd默認修改root用戶的密碼

更改用戶 root 的密碼

新的 密碼:

重新輸入新的 密碼:

passwd:所有的身份驗證令牌已經成功更新。

修改普通用戶的密碼

[root@hyc-01-01 ~]# tail -6 /etc/shadow

hyc1:$6$phKSf3Hn$D4NVl/0AB9OkuI.QoY.nfB6y62q0tjfs19nnEMeSQVl2oFo74oHoVuqvgdmd4idUxHHa5lJ6StJ29zH11jh390:17689:0:99999:7:::

hyc2:!!:17693:0:99999:7::: 修改前hyc2沒有密碼

hyc3:!!:17693:0:99999:7:::

hyc4:!!:17693:0:99999:7:::

hyc5:!!:17693:0:99999:7:::

hyc6:!!:17693:0:99999:7:::

[root@hyc-01-01 ~]# passwd hyc2

更改用戶 hyc2 的密碼

新的 密碼:

重新輸入新的 密碼:

passwd:所有的身份驗證令牌已經成功更新。

[root@hyc-01-01 ~]# tail -6 /etc/shadow

hyc1:$6$phKSf3Hn$D4NVl/0AB9OkuI.QoY.nfB6y62q0tjfs19nnEMeSQVl2oFo74oHoVuqvgdmd4idUxHHa5lJ6StJ29zH11jh390:17689:0:99999:7:::

hyc2:$6$0Ia58OwV$vWgNs4DNGxCCZrhrvM9xVbBTcvmiFqFYYp9cMWlHILJV2mXIvL3u0VqOuyq.vSMb//VoW/sRiztqJx3XuwCK10:17694:0:99999:7:::

hyc3:!!:17693:0:99999:7::: 當用戶沒有密碼時第二段為兩個!

hyc4:!!:17693:0:99999:7:::

hyc5:!!:17693:0:99999:7:::

hyc6:!!:17693:0:99999:7:::

[root@hyc-01-01 ~]#

修改後發現hyc2的第二段有加密字符串

[root@hyc-01-01 ~]# head -2 /etc/shadow

root:$6$pJLBjkrU$/yEy8s6LUOnUc2KLL8F7Lbi0mykFC6wHb4erol0DJctmfSedcXMi2u.b8jlCWfVq3D64wE8XpE3SI3n/Dxxod.:17694:0:99999:7:::

bin:*:17110:0:99999:7::: 此處第二段為*,說明bin用戶的密碼被鎖定

不管是被鎖定或沒有密碼或密碼過期,都說明該用戶無法登錄

[root@hyc-01-01 ~]# passwd -l hyc1

鎖定用戶 hyc1 的密碼

passwd: 操作成功

[root@hyc-01-01 ~]# tail -6 /etc/shadow

hyc1:!!$6$phKSf3Hn$D4NVl/0AB9OkuI.QoY.nfB6y62q0tjfs19nnEMeSQVl2oFo74oHoVuqvgdmd4idUxHHa5lJ6StJ29zH11jh390:17689:0:99999:7::: shadow文件中第二段開頭出現兩個!說明鎖定成功

hyc2:$6$0Ia58OwV$vWgNs4DNGxCCZrhrvM9xVbBTcvmiFqFYYp9cMWlHILJV2mXIvL3u0VqOuyq.vSMb//VoW/sRiztqJx3XuwCK10:17694:0:99999:7:::

hyc3:!!:17693:0:99999:7:::

hyc4:!!:17693:0:99999:7:::

hyc5:!!:17693:0:99999:7:::

hyc6:!!:17693:0:99999:7:::

[root@hyc-01-01 ~]# passwd -u hyc1 解鎖hyc1

解鎖用戶 hyc1 的密碼。

passwd: 操作成功

[root@hyc-01-01 ~]# tail -6 /etc/shadow

hyc1:$6$phKSf3Hn$D4NVl/0AB9OkuI.QoY.nfB6y62q0tjfs19nnEMeSQVl2oFo74oHoVuqvgdmd4idUxHHa5lJ6StJ29zH11jh390:17689:0:99999:7::: !消失

hyc2:$6$0Ia58OwV$vWgNs4DNGxCCZrhrvM9xVbBTcvmiFqFYYp9cMWlHILJV2mXIvL3u0VqOuyq.vSMb//VoW/sRiztqJx3XuwCK10:17694:0:99999:7:::

hyc3:!!:17693:0:99999:7:::

hyc4:!!:17693:0:99999:7:::

hyc5:!!:17693:0:99999:7:::

hyc6:!!:17693:0:99999:7:::

[root@hyc-01-01 ~]# usermod -L hyc1 usermod-L參數鎖定用戶

[root@hyc-01-01 ~]# tail -6 /etc/shadow

hyc1:!$6$phKSf3Hn$D4NVl/0AB9OkuI.QoY.nfB6y62q0tjfs19nnEMeSQVl2oFo74oHoVuqvgdmd4idUxHHa5lJ6StJ29zH11jh390:17689:0:99999:7::: 第二段開頭出現!

hyc2:$6$0Ia58OwV$vWgNs4DNGxCCZrhrvM9xVbBTcvmiFqFYYp9cMWlHILJV2mXIvL3u0VqOuyq.vSMb//VoW/sRiztqJx3XuwCK10:17694:0:99999:7:::

hyc3:!!:17693:0:99999:7:::

hyc4:!!:17693:0:99999:7:::

hyc5:!!:17693:0:99999:7:::

hyc6:!!:17693:0:99999:7:::

[root@hyc-01-01 ~]# usermod -U hyc1 usermod-U參數解鎖用戶

只要shadow文件第二段開頭出現!且後跟密碼或第二段為*即說明該用戶被鎖定

--stdin 修改的密碼僅輸入一次且會明文顯示

[root@hyc-01-01 ~]# passwd --stdin hyc1

更改用戶 hyc1 的密碼

hyc940421

passwd:所有的身份驗證令牌已經成功更新。

[root@hyc-01-01 ~]# echo "hyc940421"|passwd --stdin hyc1 |為管道符,會將上一個命令的執行結果輸出給下一個命令

更改用戶 hyc1 的密碼

passwd:所有的身份驗證令牌已經成功更新。

[root@hyc-01-01 ~]# echo "12345\n678910" 默認echo會順序打印所有字符

12345\n678910

[root@hyc-01-01 ~]# echo -e "12345\n678910" -e參數則遇到\n會執行換行(回車)

12345

678910

[root@hyc-01-01 ~]# echo -e "12345\t678910" -e遇到\t輸入空格(-t表示Tab

12345 678910

[root@hyc-01-01 ~]# echo -e "1234567\n1234567"|passwd hyc1 更新密碼

更改用戶 hyc1 的密碼

新的 密碼:無效的密碼: 密碼少於 8 個字符

重新輸入新的 密碼:passwd:所有的身份驗證令牌已經成功更新。

一般密碼要求:

包含特殊字符、大小寫字母和數字;

長度盡量超過8位;

密碼最好不包括自己的相關信息;

3.6 mkpasswd命令

[root@hyc-01-01 ~]# mkpasswd

-bash: mkpasswd: 未找到命令 默認系統不安裝該命令相關的包

[root@hyc-01-01 ~]# yum install -y expect 安裝相關的包

[root@hyc-01-01 ~]# mkpasswd 隨機生成密碼

nqok>HU38 默認長度9位,包含大小寫字母、特殊符號和數字

[root@hyc-01-01 ~]# mkpasswd -l 12 –l指定生成密碼的位數為12

tlm8t|mYIu2s

[root@hyc-01-01 ~]# mkpasswd -l 12 -s 3 –s指定生成密碼中包含特殊符號的個數為3

tSq_j28{Mb:m

[root@hyc-01-01 ~]# mkpasswd -l 12 -s 0 密碼中不含特殊符號

gJrmul66Jlgk


6.12 3.4-3.6