linux使用者管理命令(二)
1.使用者修改
usermod
usermod -l student westos ##更改使用者的名稱 -u 666 westos ##更改使用者uid -g 21 westos ##更改使用者初始組 -G 21 westos ##更改附加組 -G “” westos ##刪除使用者所有附加組的身份/空白組 usermod -aG 72 westos ##新增新附加組 -c "haha" westos ##指定使用者說明文字 -s /bin/sh westos ##更改使用者的shell -d /home/hh westos ##更改使用者家目錄指向 -md westos ##更改家目錄 -L westos ##鎖定使用者 -U westos ##解鎖使用者 passwd westos ##設定密碼 passwd -d westos ##刪除密碼
2.使用者認證資訊
/etc/shadows ##記錄使用者認證資訊
westos: ! ! : 17895 : 0 : 99999 : 7 : : :
【1】 【2】【3】 【4】 【5】 【6】【7】【8】【9】
此檔案一共有9列:
1.使用者名稱
westos:
2.使用者密碼
!!
使用者的加密字串,預設用的加密方式為sha512對稱加密,
(對稱加密:解密和加密所用為同一物件)
如果加密字串出現“!”那麼使用者被凍結;
3.17895
使用者密碼最後一次被更改的時間:
此時間計算是從1970-1-1開始計算的累計天數
使用者密碼被使用/的天數;
4.0
使用者密碼最短有效期:
如果此位有設定數字,那麼在此數字範圍內的天數內時不能修改使用者密碼的
密碼最短週期;
5.99999
使用者密碼最長有效期:
使用者必須在此有效期內更新密碼,如果超時會被凍結
密碼最長週期(密碼可以最久使用的天數)(改密碼就會重新整理);
6.
密碼警告期限:
在過期前指定天數內會發送警告資訊給使用者
警告密碼剩餘有效天數;
7.
非活躍期(過了有效期限剩餘的延期可改密碼的期限);
8.
使用者到期日(不可重新整理)
9.
使用者自定義列,目前沒有啟用
passwd -S westos ##檢視westos使用者資訊密碼
#使用者密碼#
passwd westos ##更改westos密碼
passwd -l westos ##在使用者密碼前加入“!!”
passwd -u westos
usermod -L westos ##在使用者密碼前加入“!”
usermod -U westos ##在密碼不為空時使用
passwd -d westos ##清空westos密碼
注意:
普通使用者改密碼時
1.必須知道當前使用者原始密碼
2.密碼不能和帳號名稱相似
3.密碼不能是純數字或純字母
超級使用者不受限制
##使用者密碼最後一次被更改的時間##
passwd -e westos ##會改變使用者最後一次更改密碼時間為0
##使用者在登陸時會被強制更改密碼
chage -d 0 westos ##兩個命令功能相似
##使用者密碼最短有效期##
passwd -n 1 westos ##westos使用者在1天之內不能修改密碼
chage -m 1 westos
##使用者密碼最長有效期##
passwd -x 30 westos ##設定westos在30天內必須改密碼
chage -M 40 westos
##密碼警告期限##
passwd -w 2 westos ##密碼過期前兩天有警告輸出
chage -w 2 westos
##使用者非活躍期限##
passwd -i 1 westos ##密碼過期後仍可登陸系統的天數
chage -I 1 westos
##使用者到期日##
chage -E 2018-11-11 westos ##westos使用者在2018-11-11日會被凍結
##使用者自定義列,目前沒有開啟##
####使用者授權####
1.權力下放檔案為 /etc/sudoers
此檔案可以用vim直接編輯,但是不提供語法檢測
也可以使用visudo編輯此檔案,visudo命令是提供語法檢測的
2.下放方式
- visudo
100行左右
使用者 主機名稱(用hostname命令可查出)=(得到的使用者身份) 命令
tom localhost=(root) /usr/sbin/useradd
##tom使用者可以在localhost主機以root使用者身份執行useradd命令
tom localhost=(root) NOPASSWD: /usr/sbin/useradd
##tom使用者可以在localhost主機以root使用者身份免密執行useradd
tom localhost=(root) NOPASSWD: /usr/sbin/useradd,/usr/sbin/userdel
##免密執行useradd和userdel