3.4 usermod命令--更改用戶帳戶屬性 -a|--append ##把用戶追加到某些組中,僅與-G選項一起使用 -G|--groups ##把用戶追加到某些組中,僅與-a選項一起使用;把該用戶從其他用戶組移除,並添加到指定的用戶組內,這時不與-a一起使用 [root@24centos7-01 ...
3.4 usermod命令--更改用戶帳戶屬性
- -a|--append ##把用戶追加到某些組中,僅與-G選項一起使用
- -G|--groups ##把用戶追加到某些組中,僅與-a選項一起使用;把該用戶從其他用戶組移除,並添加到指定的用戶組內,這時不與-a一起使用
[root@24centos7-01 ~]# id user55
uid=1009(user55) gid=1010(user55) 組=1010(user55)
[root@24centos7-01 ~]# usermod -aG grp9 user55
[root@24centos7-01 ~]# id user55
uid=1009(user55) gid=1010(user55) 組=1010(user55),1009(grp9)
- 刪除擴展組把該用戶從其他用戶組移除,並添加到指定的用戶組內,這時不與-a一起使用
[root@24centos7-01 ~]# id user555
uid=1055(user555) gid=1010(user55) 組=1010(user55)
[root@24centos7-01 ~]# usermod -aG grp9 user555
[root@24centos7-01 ~]# id user555
uid=1055(user555) gid=1010(user55) 組=1010(user55),1009(grp9)
[root@24centos7-01 ~]# usermod -G user55 user555
[root@24centos7-01 ~]# id user55
id: user55: no such user
[root@24centos7-01 ~]# id user555
uid=1055(user555) gid=1010(user55) 組=1010(user55)
- -l|--login ##修改用戶的登錄名稱
[root@24centos7-01 ~]# tail -n5 /etc/passwd --列舉最後5位自定義的用戶
user22:x:1006:1004::/home/viuts_test:/sbin/nologin
user33:x:1007:1007::/home/user33:/bin/bash
user44:x:1008:1008::/home/user44:/bin/bash
user55:x:1009:1010::/home/user55:/bin/bash
user66:x:1010:1013::/home/user66:/bin/bash
[root@24centos7-01 ~]# usermod -l user555 user55 --修改用戶名
[root@24centos7-01 ~]# id user55 --舊用戶名提示已不存在
id: user55: no such user
[root@24centos7-01 ~]# id user555 --以新用戶名查詢
uid=1009(user555) gid=1010(user55) 組=1010(user55),1009(grp9)
[root@24centos7-01 ~]# tail -n5 /etc/passwd --列舉最後5位自定義的用戶,最後一行為更名後的用戶
user22:x:1006:1004::/home/viuts_test:/sbin/nologin
user33:x:1007:1007::/home/user33:/bin/bash
user44:x:1008:1008::/home/user44:/bin/bash
user66:x:1010:1013::/home/user66:/bin/bash
user555:x:1009:1010::/home/user55:/bin/bash
- -u|--uid ##修改用戶的uid,該uid必須唯一
[root@24centos7-01 ~]# id user555 --以新用戶名查詢
uid=1009(user555) gid=1010(user55) 組=1010(user55),1009(grp9)
[root@24centos7-01 ~]# usermod -u 1055 user555
[root@24centos7-01 ~]# id user555
uid=1055(user555) gid=1010(user55) 組=1010(user55),1009(grp9)
- -L|--lock ##鎖定用戶的密碼;當用戶的密碼欄前有!!或者!以及*時代表該密碼鎖定
[root@24centos7-01 ~]# tail -n5 /etc/shadow
user22:!!:17463:0:99999:7:::
user33:!!:17463:0:99999:7:::
user44:!!:17463:0:99999:7:::
user66:!!:17463:0:99999:7:::
user555:$6$SW1iMdnT$vfI9cFhPf4Siqt9dam6GumouXrdWaImkdhzRhQ6KmK6q.n87IrjSvbOKuSrI9Ryc8Us9/SmyxyNr403P4BqJ51:17464:0:99999:7:::
[root@24centos7-01 ~]# usermod -L user555
[root@24centos7-01 ~]# tail -n2 /etc/shadow
user66:!!:17463:0:99999:7:::
user555:!$6$SW1iMdnT$vfI9cFhPf4Siqt9dam6GumouXrdWaImkdhzRhQ6KmK6q.n87IrjSvbOKuSrI9Ryc8Us9/SmyxyNr403P4BqJ51:17464:0:99999:7:::
- -U|--unlock ##解鎖用戶的密碼
[root@24centos7-01 ~]# usermod -U user555
[root@24centos7-01 ~]# tail -n2 /etc/shadow
user66:!!:17463:0:99999:7:::
user555:$6$SW1iMdnT$vfI9cFhPf4Siqt9dam6GumouXrdWaImkdhzRhQ6KmK6q.n87IrjSvbOKuSrI9Ryc8Us9/SmyxyNr403P4BqJ51:17464:0:99999:7:::
- -g|--gid ##修改用戶的gid,改組一定存在
[root@24centos7-01 ~]# id user555
uid=1055(user555) gid=1010(user55) 組=1010(user55)
[root@24centos7-01 ~]# usermod -g 1008 user555
[root@24centos7-01 ~]# id user555
uid=1055(user555) gid=1008(user44) 組=1008(user44),1010(user55)
- -d|--home ##修改用戶的家目錄通常和-m選項一起使用
- -m|--move-home ##修改用戶的家目錄通常和-d選項一起使用
[root@24centos7-01 ~]# tail -n2 /etc/passwd
user66:x:1010:1013::/home/user66:/bin/bash
user555:x:1055:1008::/home/user55:/bin/bash
[root@24centos7-01 ~]# usermod -md /home/user555 user555
[root@24centos7-01 ~]# tail -n2 /etc/passwd
user66:x:1010:1013::/home/user66:/bin/bash
user555:x:1055:1008::/home/user555:/bin/bash
- -c|--comment ##修改/etc/passwd文件第五段comment
[root@24centos7-01 ~]# tail -n2 /etc/passwd
user66:x:1010:1013::/home/user66:/bin/bash
user555:x:1055:1008::/home/user555:/bin/bash
[root@24centos7-01 ~]# usermod -c 第五段內容 user555
[root@24centos7-01 ~]# !tail
tail -n2 /etc/passwd
user66:x:1010:1013::/home/user66:/bin/bash
user555:x:1055:1008:第五段內容:/home/user555:/bin/bash
- -e|--expiredate ##指定用戶帳號禁用的日期,格式YY-MM-DD
[root@24centos7-01 ~]# tail -n2 /etc/shadow
user66:!!:17463:0:99999:7:::
user555:$6$SW1iMdnT$vfI9cFhPf4Siqt9dam6GumouXrdWaImkdhzRhQ6KmK6q.n87IrjSvbOKuSrI9Ryc8Us9/SmyxyNr403P4BqJ51:17464:0:99999:7::17465:
[root@24centos7-01 ~]# usermod -e 17-10-26 user66
[root@24centos7-01 ~]# tail -n2 /etc/shadow
user66:!!:17463:0:99999:7::17465:
user555:$6$SW1iMdnT$vfI9cFhPf4Siqt9dam6GumouXrdWaImkdhzRhQ6KmK6q.n87IrjSvbOKuSrI9Ryc8Us9/SmyxyNr403P4BqJ51:17464:0:99999:7::17465:
- -f|--inactive ##用戶密碼過期多少天後採用就禁用該帳號,0表示密碼已過期就禁用帳號,-1表示禁用此功能,預設值是-1
[root@24centos7-01 ~]# tail -n2 /etc/shadow
user66:!!:17463:0:99999:7::17465:
user555:$6$SW1iMdnT$vfI9cFhPf4Siqt9dam6GumouXrdWaImkdhzRhQ6KmK6q.n87IrjSvbOKuSrI9Ryc8Us9/SmyxyNr403P4BqJ51:17464:0:99999:7::17471: --設置成2017-11-01過期
[root@24centos7-01 ~]# usermod -e 2017-11-02 user555
[root@24centos7-01 ~]# tail -n2 /etc/shadow
user66:!!:17463:0:99999:7::17465:
user555:$6$SW1iMdnT$vfI9cFhPf4Siqt9dam6GumouXrdWaImkdhzRhQ6KmK6q.n87IrjSvbOKuSrI9Ryc8Us9/SmyxyNr403P4BqJ51:17464:0:99999:7::17472: --設置成2017-11-02過期
- -s|--shell ##修改用戶的shell
[root@24centos7-01 ~]# tail -n2 /etc/passwd
user66:x:1010:1013::/home/user66:/bin/bash
user555:x:1055:1008:第五段內容:/home/user555:/bin/bash
[root@24centos7-01 ~]# usermod -s /sbin/bash user555
[root@24centos7-01 ~]# !tail
tail -n2 /etc/passwd
user66:x:1010:1013::/home/user66:/bin/bash
user555:x:1055:1008:第五段內容:/home/user555:/sbin/bash
3.5 用戶密碼管理
[root@24centos7-01 ~]# tail -n20 /etc/shadow | head -n10
games:*:17110:0:99999:7:::
ftp:*:17110:0:99999:7:::
nobody:*:17110:0:99999:7::: --*代表用戶的密碼被鎖定,不能使用
systemd-bus-proxy:!!:17451::::::
systemd-network:!!:17451::::::
dbus:!!:17451:::::: --!!和!代表密碼為空,用戶不能登錄
polkitd:!!:17451::::::
tss:!!:17451::::::
postfix:!!:17451::::::
sshd:!!:17451::::::
- 鎖定和解鎖用戶密碼passwd -l、passwd -u
[root@24centos7-01 ~]# passwd -l user555 --鎖定
鎖定用戶 user555 的密碼。
passwd: 操作成功
[root@24centos7-01 ~]# tail -n2 /etc/shadow
user66:!!:17463:0:99999:7::17465:
user555:!!$6$SW1iMdnT$vfI9cFhPf4Siqt9dam6GumouXrdWaImkdhzRhQ6KmK6q.n87IrjSvbOKuSrI9Ryc8Us9/SmyxyNr403P4BqJ51:17464:0:99999:7::17472: --鎖定後密碼段前加了!!
[root@24centos7-01 ~]# passwd -u user555 --解鎖
解鎖用戶 user555 的密碼。
passwd: 操作成功
[root@24centos7-01 ~]# tail -n2 /etc/shadow
user66:!!:17463:0:99999:7::17465:
user555:$6$SW1iMdnT$vfI9cFhPf4Siqt9dam6GumouXrdWaImkdhzRhQ6KmK6q.n87IrjSvbOKuSrI9Ryc8Us9/SmyxyNr403P4BqJ51:17464:0:99999:7::17472:
- passwd --stdin更改用戶密碼
[root@24centos7-01 ~]# passwd --stdin user66
更改用戶 user66 的密碼。
123456
passwd:所有的身份驗證令牌已經成功更新。
[root@24centos7-01 ~]# echo "654321" | passwd --stdin user66 --shell中常用
更改用戶 user66 的密碼。
passwd:所有的身份驗證令牌已經成功更新。
- 單條命令不加stdin更改密碼
echo -e "1234abcd\n1234abcd" |passwd user66
3.6 mkpasswd命令 make password
##預設不存在,請安裝expect包
[root@24centos7-01 ~]# mkpasswd --預設生成9位密碼
YxucxF/40
[root@24centos7-01 ~]# mkpasswd -l 12 --參數l指長度,生成長度為12的密碼
ay9>iljcW0hX
[root@24centos7-01 ~]# mkpasswd -l 12 -s 4 --參數l指長度,s代表特殊字元,生成長度為12的密碼,4位特殊字元
="zaSi42c,@Y
[root@24centos7-01 ~]# mkpasswd -l 12 -s 0 --參數l指長度,生成長度為12的密碼,0位特殊字元
fz2XT1zpodkd