Linux用戶與組管理詳解

在linux系統上,用戶管理是基于用戶名和密碼的方式進行資源的分配,了解和掌握用戶與組的管理是從事運維工作所必須具備的能力,也是將來從事運維行業的重要工作之一。

timg_image&quality=80&size=b9999_10000&sec=1522737516367&di=82992248e0191bcecd36

在linux系統上,用戶管理是基于用戶名和密碼的方式進行資源的分配,了解和掌握用戶與組的管理是從事運維工作所必須具備的能力,也是將來從事運維行業的重要工作之一。這里我將介紹Linux系統中用戶與組的一些相關概念及管理用戶與組的常見命令等:

 

*安全3A

Linux通過三個機制來保證用戶的安全:

Authentication:認證

Authorization:授權

Accouting|Audition:審計

 

*用戶user

令牌:token

Linux用戶:Username

管理員:root,UID=0(擁有對系統的最高操作權限)

普通用戶:

系統用戶:1-499,1-999(centos7)

登錄用戶:500+,1000+(centos7)

 

*組 group:

Linux組:Groupname/GID

管理員組:root,GID=0

普通組:

系統組:1-499,1-999(centos7)

普通組:500+,1000+(centos7)

在創建用戶不指定組的情況下,默認創建一個與該用戶名相同的組作為該用戶的主組

 

*組的類別:

用戶的主要組:

用戶必須屬于一個且只有一個主組

組名同用戶名,且僅包含一個用戶,私有組

用戶的附加組:

一個用戶可以屬于零個或多個附加組

 

*安全上下文

進程所能夠訪問資源的權限取決于進程的運行者的身份

 

*用戶和組的配置文件

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

/etc/shadow:?????? 存放用戶密碼及其相關信息

/etc/group:? 存放組及屬性信息

/etc/gshadow:???? 存放組密碼及其相關信息

/etc/default/useradd:新建賬戶模板信息

 

/etc/passwd

passwd

name:password:UID:GID:GECEO:directory:shell

1.用戶名

2.密碼:顯示為x

3.UID:用戶ID

4.GID:組ID

5.描述信息:GECOS,可添加用戶描述信息

6.家目錄:用戶家目錄

7.shell類型:用戶shell類型

 

/etc/shadow

shadow

1.用戶名

2.密碼加密:算法$6;!!表示賬戶鎖定

3.上次修改密碼時間:距離1970.1.1的天數

4.密碼最小修改時間:距離下次修改密碼至少需間隔的天數(0表示隨時可變更)

5.密碼最大修改時間:距離本次密碼修改時間最多可間隔的天數(99999表示永不過期)

6.密碼提醒時間:距離密碼即將到期提前警告的天數

7.密碼到期后寬限時間:密碼到期后賬戶還能使用的天數

8.賬戶有效期:該賬戶可使用的日期

9.保留區域:保留將來可能增加的區域

密碼期限

/etc/group

group

group_name:password:GID:user_list

1.組名

2.組密碼:普通用戶加入某個組時需要的密碼(不推薦設置密碼)

3.GID:組ID

4.組成員:“,”作為分隔符

 

/etc/gshadow

gshadow

group_name:encrypted_password:administrators:members

1.組名

2.組密碼

3.組管理員(組長)

4.組成員:“,”作為分隔符

 

/etc/default/useradd

# useradd defaults file??????????? 創建用戶默認文件

GROUP=100???????????????????? 創建用戶無指定組時默認所屬的組users

HOME=/home????????????????????????? 創建用戶默認家目錄路徑

INACTIVE=-1??????????????????? 創建用戶時默認沒有寬限時間

EXPIRE=???????????????????????????? 創建用戶時默認有效期

SHELL=/bin/bash????????????????????? 創建用戶時默認shell類型

SKEL=/etc/skel????????????????????????? 創建用戶時家目錄模板

CREATE_MAIL_SPOOL=yes???????????? 創建用戶時默認創建郵箱

 

*文件操作

vipw???????? 等同于vi /etc/passwd

vigr ? ? ? ? ? 等同于vi /etc/group

pwck??????? 檢查passwd文件格式錯誤

grpck??????? 檢查group文件格式錯誤

 

*用戶與組的管理命令

用戶管理命令及常用選項:

useradd??????????? etc/default/useradd存放創建用戶時的默認信息

-u???? 指定uid(生產環境中多臺服務器保證程序是同一UID)

-o???? 不檢查UID的唯一性,需配合-u使用(不建議UID一樣)

-g???? 創建用戶時指定主組

-c? 創建用戶時添加描述

-d???? 創建用戶時指定家目錄路徑,二層目錄(生產環境中創建給服務用的賬戶可能會用到)

-s????? 創建用戶時指定shell類型/etc/shells

-r????? 創建系統用戶(默認不創建家目錄)

-m??? 強行創建家目錄,用于系統用戶,配合-r使用(生產環境中為服務生成系統用戶)-M???????? 強行不創建家目錄,用于普通用戶

-G???? 創建用戶時加入到多個輔助組里,多個輔助組用“,”分開

-N ? 創建一個用戶名和主組名不同的用戶,默認users作為主組

-p ? ?創建用戶添加密碼(不建議此種方式添加口令,口令會在shadow文件中明文)

 

usermod

-u???? 修改UID

-g???? 修改GID(組需存在)

-G???? 修改輔助組(會將原來的輔助組覆蓋),如果要保留原輔助組配合-a使用

-s????? 新的默認shell

-c???? 新的注釋信息

-d???? 新家目錄不會自動創建;若要創建新家目錄并移動原家數據,同時使用-m選項(-m -d有順序)

-l????? 新的用戶名

-L???? 用戶加鎖

-U??? 用戶解鎖(centos6以后禁止此方式解鎖)

 

userdel

-r????? 刪除用戶的所有文件,家目錄及郵箱(工作中不建議用,建議保留數據)

 

*組帳號維護命令及常用選項

groupadd

-g???? 指明GID號創建組

-r????? 創建系統組group(centos6:ID<500、centos7:ID<1000)

 

groupmod

-n???? 新的組名

-g???? 新的GID

 

groupdel 刪除組(前提沒有用戶以此組為主組)

 

groupmems???? 查看指定組的成員

-g???? 更改為指定組(只有root)

-a???? 指定用戶加入組

-d???? 從組中刪除用戶

-p???? 從組中清除所有成員

-l????? 顯示組成員列表(讀取的/etc/group文件中對應組的最后一個字段的全部內容)

 

gpasswd?????????? 給組添加口令

-a user???? 將user添加至指定組中

-d user???? 從指定組中移除用戶user

-A user1,user2…? 設置有管理權限的用戶列表(設置組管理員)

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/94787

(1)
wangxczwangxcz
上一篇 2018-04-03
下一篇 2018-04-03

相關推薦

欧美性久久久久