1、用戶管理常用到的配置文件就3個/etc/passwd、/etc/shadow、/etc/group;下面就來看看這裏面都是什麼東西。
(1) 用戶的基本信息存放在/etc/passwd中。
上面每一行由6個“:”和7個字段組成。從左向右依次的意思爲:
用戶的用戶名;
用戶的密碼;
用戶id爲唯一標識,uid;
用戶組的唯一標識,gid;信息存放在/ect/group中
用戶的說明信息
用戶的家目錄
用戶的默認sell,用戶登錄後會獲取一個shell,通過shell與內核交互
(2)爲了系統的安全,把用戶的密碼加密,和重要的信息存放在/etc/shadow中。
上面每一行由8個":"和9個字段組成。從左向右依次的意思爲:
用戶名
密碼(經過處理的密文,提高安全)
最近修改密碼的日期
密碼不可更改的日期:如果填上10的話,10天內不可以更換密碼
密碼要求重新更改的天數:爲了強制用戶更改密碼,這個字段可以指定在最近一次更改密碼後,在多少天數內再次變更。(默認爲99999,不強制要求更換密碼)
密碼需要更改前的警告天數
密碼過期後可以使用的天數: 密碼過了該期限後用戶依舊沒有升級密碼,那該密碼就算過期了。 雖然密碼過期但是該賬號還是可以用來進行其他工作的,包括登陸系統取得 bash
賬號失效日期: 這個賬號在此字段規定的日期之後,將無法再使用
保留:最後一個字段是保留的,看以後有沒有新功能加入
(3)上面是用戶存放的信息,下面是組存放的信息
用戶組名
組密碼 (一般沒有設置,管理員常進行配置,設置密碼存放在/etc/gshadow中
gid:對應/etc/passwd的第四項
此羣組支持其他用戶:一個用戶可以加入多個羣組,哪個帳號想加入此羣組,將該帳號加入此字段即可
2、管理用戶和相關組的命令
管理用戶:useradd、usermod、userdel、passwd
管理組:groupadd、groupmod、groupdel
下面介紹命令的用法:
useradd (添加一個新用戶)
-u 指定用戶的uid,對應/etc/passwd的第三項;
-g 指定用戶所屬的羣組
-G 指定用戶所屬的附加羣組
-d 指定家目錄
-s 指定用戶登錄的shell
-e 指定帳號的有效期限,格式爲YYYY-MM-DD,存儲在/etc/shadow中
-f 指定密碼過期多少天后停用該帳號
passwd
--stdin 可以通過來自前個管道的數據,作爲口令輸入,對shell script 有幫助
-l 是lock 的意思,會將/etc/shadow 第二個字符前加上!使口令失效
-u 是unlock 的意思,與 -l 相對
-g 修改指定羣組的密碼
-d 刪除用戶密碼(僅有管理員有此權限)
-n 後接天數,shadow的第4個字段,多久不可修改口令天數
-x 後接天數,shadow的第5個字段,多久內必須要更改口令
-w 後接天數,shadow的第6個字段,口令過期前的警告天數
-i 後接日期,shadow的第7個字段,口令失效日期
例子:echo "123456" | passwd --stdin test
usermod
-c 更改賬戶的說明信息,/etc/passwd的第5個字段
-d 更改帳號的家目錄,/etc/passwd的第6個字段
-e 後接日期,更改帳號失效信息,/etc/shadow的第8個字段
-f 後接天數,更改密碼過期後還可使用的天數,/etc/shadow的第7個字段
-g 後接初始羣組,更改/etc/passwd的第4個字段,Gid的字段
-G 後接次要羣組,修改這個使用者能夠支持的羣組,修改的是 /etc/group
-a 和 -G 一起使用,可添加到次要羣組的支持而非配置
-l 後接帳號名稱,可以修改帳號名稱 /etc/passwd的第1個字段
-s 後接shell的實際文件
-u 後接 Uid 數字,更改/etc/passwd 的第3個字段
-L 暫時將用戶凍結,使其無法登錄
-U 將/etc/shadow 的第2個字段的!拿掉,解凍
userdel
-r 刪除用戶及其家目錄
groupadd
-g 指定一個特定的Gid
groupmod
-g 修改既有的GID 數字
-n 修改既有的組名
groupdel
eg: groupdel mygroup
3、常用的輔助命令
id 用戶名
uid=0(root) gid=0(root) group=0(root)
4、常用的幾種組間例子
(1)添加一個新用戶到主用戶組中
useradd -g 組名 用戶名
(2)添加一個新用戶到附加組中
useradd -G 組名 用戶名
(3)將一個已有的用戶,添加到一個已有的用戶組中
usermod -a -G 組名 用戶名