用戶組管理

用戶組管理

 

 

 

1 用戶管理命令

 

1 useradd   # 添加用戶
2 userdel   # 刪除用戶
3 usermod   # 修改用戶資訊
​
# 創建用戶
    [root@localhost ~]# useradd user1
 
# 查看用戶
    [root@localhost ~]# id user1
    uid=1002(user1) gid=1003(user1) 組=1003(user1)
    
    [root@localhost ~]# who # 查看所有登錄的⽤戶資訊
    
    [root@localhost ~]# whoami # 查看當前登錄的⽤戶名
    
'注意':
    當創建⼀個⽤戶時,如果沒有指定⽤戶的主組,將會創建⼀個同名的組作為⽤戶的主組
    
# 刪除用戶
​
    [root@localhost ~]# userdel user1 # 刪除⽤戶user1,但不刪除⽤戶家⽬錄和mail
​
    [root@localhost ~]# userdel -r user1 # 要想刪徹底,加-r選項

 

 

 

 

1.1 useradd命令

 

# 怎樣在Linux系統中添加⼀個新的⽤戶賬戶
​
1) 掌握useradd命令的功能:新增⼀個⽤戶。
2) 了解useradd命令的常⽤選項:
3) –u:指定⽤戶的UID
4) –g:指定⽤戶所屬的主群
   –G:指定⽤戶所屬的附加群
5) –d:指定⽤戶的家⽬錄
6) –c:指定⽤戶的備註資訊
7) –s:指定⽤戶所⽤的shell
8) -e:修改過期時間
9) -M: 不創建家⽬錄
10) -r: 創建系統賬戶,uid處於系統⽤戶範圍內,默認就沒有家⽬錄
​
#靈活應⽤useradd命令的舉例:
​
a) 例如:在系統中新增⼀個fox(狐狸)⽤戶的命令:useradd fox
b) 例如:在系統中新增⼀個⽤戶user01,屬組為police以及uid為600的命令:
useradd –u 600 –g police user01
​
====================================================================
​
# 其他練習
[root@root ~]# useradd user01 
[root@root ~]# useradd user02 -u 503             # 創建⽤戶usr02,指定uid
[root@root ~]# useradd user03 -d /aaa            # 創建⽤戶user03 指定家⽬錄
[root@root ~]# useradd user04 -M                 # 創建⽤戶user04,不創建家⽬錄
[root@root ~]# useradd user05 -s /sbin/nologin   # 創建⽤戶並指定shell
[root@root ~]# useradd user06 -g hr              # 創建⽤戶,指定主組
[root@root ~]# useradd user07 -G sale            # 創建⽤戶,指定附加組
[root@root ~]# useradd user08 -e 2014-04-01      # 指定過期時間
[root@root ~]# useradd user10 -u 4000 -s /sbin/nologin
[root@aliyum ~]# useradd xxx -M -s /sbin/nologin # 創建普通⽤戶,但是沒有家⽬錄,不能登錄系統
[root@aliyum ~]# useradd -r yyy -s /sbin/nologin # yyy屬於系統⽤戶,uid處於系統⽤戶uid範圍內

 

1.2 usermod命令

# 同useradd參數基⼀致,只不過useradd是添加,usermod是修改
​
-u      # 指定要修改⽤戶的UID
-g      # 指定要修改⽤戶基本組
-a      # 將⽤戶添加到補充組。僅與-G選項⼀起使⽤
-G      # 指定要修改⽤戶附加組,使⽤逗號隔開多個附加組, 覆蓋原有的附加組
-d      # 指定要修改⽤戶家⽬錄
-c      # 指定要修改⽤戶注釋資訊
-s      # 指定要修改⽤戶的bash shell
[root@root ~]# usermod -e 2013-02-11 user1000 # 修改過期時間
[root@root ~]# usermod -g group1 jj # 修改主組
[root@root ~]# usermod -a -G group2 jj # 修改附加組,-a添加,不加-a代表覆蓋
其他選項
-m      # 將⽤戶主⽬錄的內容移動到新位置。如果當前主⽬錄不存在,則不會創建新的主⽬錄
-l      # 指定要修改⽤戶的登陸名
-L      # 指定要鎖定的⽤戶
-U      # 指定要解鎖的⽤戶

 

 

 

 

1.3 設定與修改密碼

passwd          # 默認給當前⽤戶設定密碼
passwd ⽤戶名    # root⽤戶可以給⾃⼰以及所有其他⽤戶設定密碼,普通⽤戶只能設定⾃⼰的密碼
echo "密碼" | passwd --stdin ⽤戶名 # ⾮互動式
# 補充:可以利⽤系統內置變數⽣成隨機字元串來充當密碼
[root@aliyum ~] # echo $RANDOM|md5sum|cut -c 1-10
70ba11a74b

 

2 組管理

 

1 創建組:groupadd
2 修改組:groupmod
3 刪除組:groupdel

 

2.1 groupadd命令

[root@aliyum ~]     # groupadd gg1 #創建基本組, 不指定gid
[root@aliyum ~]     # tail -1 /etc/group
gg1:x:2005:
[root@aliyum ~]     # groupadd -g 5555 gg2 #創建基本組, 指定gid為5555
[root@aliyum ~]     # tail -1 /etc/group
gg2:x:5555:
[root@aliyum ~]     # groupadd -r gg3 # 創建系統組,gid從201-999
[root@aliyum ~]     # tail -1 /etc/group
gg3:x:991:

 

 

2.2 groupmod命令

[root@aliyum ~]     # groupmod -g 1111 gg3
[root@aliyum ~]     # tail -1 /etc/group
gg3:x:1111:
[root@aliyum ~]     # groupmod -n new_gg3 gg3 # -n 修改組名稱
[root@aliyum ~]     # tail -1 /etc/group
new_gg3:x:1111:

 


 

2.3 groupdel命令

# 如果⼀個組是⼀個⽤戶的主組,那麼該組不能被刪除,刪掉⽤戶會默認⼀起刪掉他的主組
[root@aliyum ~]     # useradd egon1
[root@aliyum ~]     # groupadd devops
[root@aliyum ~]     # usermod -G devops egon1
[root@aliyum ~]     # id egon1
uid=2004(egon1) gid=2004(egon1) groups=2004(egon1),5556(devops)
[root@aliyum ~]     # groupdel devops # 附加組可以刪除
[root@aliyum ~]     # id egon1 # 查看⽤戶,發現他的附加組沒有了
uid=2004(egon1) gid=2004(egon1) groups=2004(egon1)
[root@aliyum ~]     # groupdel egon1 # ⽆法刪除組egon1,因為組egon1屬於egon1⽤戶的主組
groupdel: cannot remove the primary group of user 'egon1'

 


 

 

 

總結

 

# 許可權管理與用戶組管理

RBAC 許可權管理

可讀許可權組    可寫許可權組    可執行許可權組

# id 獲取當前用戶的資訊

# whoami 獲取當前用戶

ps:用戶uid小於1000的是系統用戶
    用戶uid大於等於1000的是普通用戶
    
創建用戶:useradd
刪除用戶:userdel
修改用戶:usermod
修改密碼:passwd
創建組:groupadd
修改組:groupmod
刪除組:groupdel

/etc/passwd        用戶配置文件
/etc/shadow        用戶的密碼文件
/etc/group        用戶組
/etc/gshadow    用戶組密碼文件

# 手動創建用戶

1、創建用戶組:/etc/group
2、創建用戶組密碼文件:/etc/gshadow
3、創建用戶:/etc/passwd
4、創建用戶密碼:/etc/shadow
5、創建家目錄
6、修改許可權,複製隱藏文件

# 許可權

    自己    自己組     其他
    rwx      rwx    rwx
    421   421   421
    
    # 用戶組可以關聯多個用戶
    
文件默認初始:666    # 偶數位直接相減,奇數位相減後加1

目錄默認初始:777    # 直接相減即可

root :umask 022     文件:644 目錄:755
user1:umask 002     文件:422 目錄:422