用戶和組管理與命令使用詳解

1. linux系統中用戶管理是基於用戶名和密碼進行管理的,其中包括用戶名、用戶密碼,用戶組,用戶組密碼,四種數據分別保存在四個文件當中,系統在識別用戶和組時都是以ID號碼來識別的其中(用戶id和組id範圍都一樣,但是分別存在不同的地方):

         root--->0 

         普通用戶--->1-65535   其中普通用戶又分爲系統用戶和可登陸用戶

         rhel7之前的號碼範圍:1-499是系統用戶,500以上爲可登錄用戶

            rhel7改成了1-1000是系統用戶,1000以上爲可登陸用戶

2. 關於存放用戶相關的四個配置文件:

1/etc/passwd:存放用戶名及其屬性信息:

         具體格式(每一段信息都以 作爲分隔符):

jack:x:500:500:jack_cui:/home/jack:/bin/bash

每一段的字段含義:

用戶名:存放系統的用戶名

密碼:原來此處存放加密的密碼,後來爲了安全,把密碼單獨存放到密碼文件當中

         用戶id:一般來說,一個用戶只有一個id,系統唯一的區分一個用戶

         id:類似於用戶id

         用戶全名或用戶信息:存放用戶全名或用戶信息

         家目錄:可登陸用戶的家目錄

         登錄的shell: 登錄用戶的shell

 

2 /etc/shadow:存放用戶密碼及其密碼相關字段:

具體格式如下:

jack:$6$lN2t4wOAfeTRle9j$ZS0LobJ.kRYleCafQUL8JHYoMUcC/DKfgON0qlGt/n7O56zeCB0VlRDnxYCXyDReDDVeWgeEdCrlEFoJgqXQP/:17001:0:99999:7:::

每一段字段含義:

用戶名:存放系統的用戶名

加密的密碼:存放加密的密碼,上面的爲添加saltsha512的加密算法,第二個和第三個$之間的爲salt隨機數,加密算法有md5sha1,sha224,sha256,sha384,sha512,分別對應第一個$後面的加密密碼的版本

最近一次更改密碼的時間:最近一次更改密碼距離1970.1.1的天數

密碼最小使用期限:密碼從設定到更改密碼的最小時間

密碼的最大使用期限:密碼從設定到更改密碼的最大時間

密碼的警告時間:在快到密碼最大使用期限之前會警告修改密碼

密碼禁用期:已經過了最大使用期限,仍然沒有改密碼,賬號已禁用,此時修改密碼仍可以使用

賬號鎖定時期:賬號徹底鎖定,賬號無法使用

保留字段:保留它用,無意義

3/etc/group:

         具體格式:

 jack:x:500:natasha,harry

         每一段字段含義:

         組名:

         組密碼:類似於用戶密碼,該密碼已單獨存放,一般用處不大

         id:組的id號碼

         以該組爲附屬組的用戶:多個的話用逗號隔開

4 /etc/gshadow:

         具體格式: 

    jack:!!::

         每一段字段含義:

 

         組名:組的名字

加密的密碼:經過哈希算法加密的密碼,一般不使用,空,感嘆號表示禁用,兩個!!爲了安全,如果管理員使用命令解鎖時解去一個還有一個,爲了誤操作,起到雙重保險的作用。

組管理者:這個字段也可爲空,如果有多個用戶組管理者,用,號分割 
組內用戶列表:如果有多個成員,用逗號分割 ;

 

3. 用戶和組相關命令

(1) useradd 用戶添加

語法:

       useradd選項  參數

        

選項:

-c:備註,添加passwd備註欄的備註

-d:指定用戶家目錄;

-D:變更預設值;

-e:指定賬戶的有效期限(--expiredate

-f:密碼過期後的緩衝天數

-g 指定gid 主組

-G 指定附屬組

 [root@cnode6_8~]# useradd -g root -G bin -s /sbin/nologin -r -u 200 marry

如指定用戶主組root,附屬組爲bin shell/sbin/nologin,系統用戶,UID200,名字叫marry的用戶

 

(2) groupadd :用於添加一個新的組:

 

         語法:

         groupadd選項  參數

        

         選項:

-g:指定新建工作組的id;

-r:創建系統工作組,系統工作組的組ID小於500(rhel7爲1000);

[root@cnode6_8 ~]# groupadd -g 200 jack_grp


 

(3)usermod:用戶屬性的修改

 

用法:

usermod  選項 參數

選項:

-c :備註,添加新的備註欄的備註信息

-d :修改指定用戶家目錄;

-e:修改指定賬戶的有效期限(--expiredate

-f:修改密碼過期後的緩衝天數

-g 修改指定gid 主組

-G 修改指定附屬組

-s :修改用戶使用的shell

-u :修改用戶ID

-U 解除密碼鎖定

-L 鎖定用戶與密碼

-l 修改賬戶登錄ID(名字)

 

[root@cnode6_8 ~]# usermod -c"marry&jack" -s /sbin/nologin marry

[root@cnode6_8 ~]# tail -n 1/etc/passwd

marry:x:501:501:marry&jack:/home/marry:/sbin/nologin

上面命令修改系統中marry的登錄的shell,和評論信息,通過查看可以看到成功修改

注意-G選項會覆蓋原來附屬組,如果需要不要覆蓋,則要添加-a選項。

 

(4)userdel刪除用戶命令

         用法userdel  選項 參數

選項:

         -r刪除用戶時連同家目錄也一同刪除

passwd 給用戶添加密碼

用法:

passwd 選項參數

選項:

-d:刪除密碼,僅有系統管理者才能使用;

-f:強制執行;

-k:設置只有在密碼過期失效後,方能更新;

-l:鎖住密碼;

-u:解開已上鎖的帳號。

-n:指定最短使用期限

-x:最大使用期限

-i:非活動使用期限

--stdin 從標準輸入接受用戶密碼

參數

用戶名:需要設置密碼的用戶名。

[root@cnode6_8 ~]# passwd -dmarry

Removing password for user marry.

passwd: Success
 
[jack@cnode6_8 ~]# su - marry

This account is currently notavailable.
 
[root@cnode6_8 ~]# passwd -lmarry

Locking password for user marry.

passwd: Success

[root@cnode6_8 ~]# su - marry

This account is currently notavailable.
 
[root@cnode6_8 ~]# echo"marrypasswd" |passwd --stdin marry

Changing password for user marry.

passwd: all authentication tokensupdated successfully.



marry的賬戶密碼刪除或者鎖定賬戶後將無法登錄marry賬戶,最後解鎖後給marry使用標準輸入添加密碼

 

(5) gpasswd更改用戶組命令

         用法gpasswd 選項 參數

選項:

         -a將某用戶添加至指定組

         -d將用戶從某一組移除

用法:

[root@cnode6_8 ~]# gpasswd -d marry jack

Removing user marry from group jack  //從jack組中把marry移除


(6)groupdel :用於刪除一個組:

 

         語法:

         groupdel  參數

參數

要刪除的指定的組

[root@cnode6_8 ~]

 

(7) groupmod:修改用戶組屬性

用法:

groupmod(選項)(參數)

選項

-g<羣組識別碼>:設置欲使用的組ID號;

-o:重複使用羣組ID號碼;

-n<新羣組名稱>:設置欲使用的羣組名稱。

參數:

組名:指定要修改的工作的組名

[root@cnode6_8 ~]# groupmod -n marry_new marry//給marry組改爲marry_new





 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章