next up previous contents
Next: 使用者身份切換 Up: 帳號與身份管理 Previous: 使用者管理   Contents

設定使用者密碼

  1. 每個使用者都要使用到 /etc/passwd,因此 /etc/passwd 的屬性必須為 -rw-r-r-。為安全起見,密碼移到 /etc/shadow。
  2. /etc/shadow 每一行以『:』分隔,共分為九項
    [root@dywOffice dywang]# cat /etc/shadow
    root:$1$fgY7Mcld$uKagcyaEt2UgPr8NFFSQP1:13341:0:99999:7:::
    bin:*:13341:0:99999:7:::
    daemon:*:13341:0:99999:7:::
    adm:*:13341:0:99999:7:::
    test:$1$UUKMfBBI$es3oSN8I6kWx29qsc1hZI/:13341:0:99999:7:::
    
    1. 帳號名稱,要與 /etc/passwd 相同才可。
    2. 密碼:真正的密碼但已加密,密碼欄第一個字為「*」或者是「!」,表示這個帳號不會被用來登入。
    3. 上次更動密碼的日期,計算 Linux 日期的時間是以 1970 年 1 月 1 日為 0,而 1971 年 1 月 1 日則為 365。
    4. 密碼不可被更動的天數,0 表示密碼隨時可以更動,如果設定為 20,則 20 天之內皆無法改變密碼。
    5. 密碼需要重新變更的天數,如果設定為 99999 表示密碼不需要重新輸入。
    6. 密碼需要變更前的警告期限:如上例則 7 天之內系統會警告用戶。
    7. 密碼過期的恕限時間:當密碼失效後,n 天內還可以登入。
    8. 帳號失效日期:計算方式同欄位 3。
    9. 保留:看以後有無新功能加入。
  3. passwd:設定或變更密碼。
    [root@kvm7 ~]# passwd [-lunxwS] username
    參數:
    -l  :將 username 這個帳號的密碼鎖住 (lock),在 /etc/shadow 內的密碼欄
    -u  :將 -l 的 lock 解開。
    -n  :後面接天數(數字),最短天數;亦即是 /etc/shadow 內的第四欄;
    -x  :後面接天數(數字),最長天數;亦即是 /etc/shadow 內的第五欄;
    -w  :後面接天數(數字),警告天數;亦即是 /etc/shadow 內的第六欄;
    -i  :後面接天數(數字),密碼過期的恕限時間;亦即是 /etc/shadow 內的第七欄;
    -S  :顯示目前這個 username 的相關資訊。
    --stdin  :經由標準輸入取得密碼,配合管線處理,可大量更改用戶密碼。
    
  4. 使用 --stdin 選項變更 deyu1, deyu2, deyu3 的登入密碼。
    [root@kvm7 ~]# echo 'qweqwe' | passwd --stdin deyu1
    Changing password for user deyu1.
    passwd: all authentication tokens updated successfully.
    [root@kvm7 ~]# echo 'qweqwe' | passwd --stdin deyu2
    Changing password for user deyu2.
    passwd: all authentication tokens updated successfully.
    [root@kvm7 ~]# echo 'qweqwe' | passwd --stdin deyu3
    Changing password for user deyu3.
    passwd: all authentication tokens updated successfully.
    [root@kvm7 ~]# echo 'qweqwe' | passwd --stdin deyu4
    Changing password for user deyu4.
    passwd: all authentication tokens updated successfully.
    



2018-04-11