1. 程式人生 > >2.3-用戶及組管理

2.3-用戶及組管理

用戶及組管理

用戶和組管理

資源分配:

Authentication:認證

Authorization:授權

Accouting(Audition):審計

token:只驗證密碼,不驗證用戶的機制

認證(identity):密碼和用戶名雙重驗證


Linux用戶:Username/UID

管理員:root,0

普通用戶:1-65535

系統用戶:1-499

對守護進程獲取資源進行權限分配

登錄用戶:500+

交互式登錄


Linux組:Groupname/GID

管理員組:root,0

普通組:

系統組:1-499

普通組:500+


Linux安全上下文:

運行中的程序:進程(process)

以進程發起者的身份運行:

root:cat

tom:cat

進程所能夠訪問的所有資源的權限取決於進程的發起者的身份


Linux組的類別:

用戶的基本組(主組):

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

用戶的附加組(額外組):


Linux用戶和組相關的配置文件:

/etc/passwd:用戶機器屬性信息(名稱,UID,基本組ID等等)

/etc/group:組及其屬性信息

/etc/shadow:用戶密碼及其相關屬性

/etc/gshadow:組密碼及其相關屬性


/etc/passwd:

account:password:UID:GID:GECOS:directory:shell

account:系統上用戶的名稱,不應該包含大寫字母

password:密碼占位符

UID:用戶ID

GID:用戶基本組ID

GECOS:該字段是可選的,僅用於信息目的

directory:主目錄

shell:默認shell

/etc/group

group_name:passwd:GID:user_list

group_name:組名

passwd:組密碼占位符

GID:組ID

user_list:作為該組成員的用戶名的列表,用逗號分隔

/etc/shadow

bin:*:17246:0:99999:7:::

此文件的每行包括 9 個字段,使用半角冒號 (“:”) 分隔,順序如下:

bin:登錄名

*:加密了的密碼

17246:最近一次更改密碼的日期

0:密碼的最小年齡

99999:最大密碼年齡

7:密碼警告時間段

:密碼禁用期

: 賬戶過期日期

:保留字段


加密機制:

加密:明文---->密文

解密:密文---->明文

單向加密:提取數據指紋

md5:message digest,128bits

sha1:secure hash algorithm,160bits

sha224:224bits

sha256:256bits

sha384:384bits

sha512:512bits

雪崩效應:初始條件的微笑改變,將會引起結果的巨大改變

定長輸出:加密算法一樣,輸出結果也一樣

密碼的復雜性策略:

1.使用數字,大寫字母,小寫字母及特殊字符中至少3種

2.足夠長:

3.使用隨機密碼:

4.定期更換:不要使用最近曾經使用過的密碼


/etc/gshadow

組名:加密了的密碼:管理員:成員


用戶和組相關的管理命令

用戶創建:useradd

useradd [options] LOGIN

-u UID:[UID_MIN,UID_MAX],定義在/etc/login.defs

-g GID:指明用戶所屬的基本組,可為組名,也可以為GID

-c "COMMENT":用戶的註釋信息

-d /PATH/TO/HOME_DIR:以指定的路徑為家目錄

-s SHELL:指明用戶的默認shell程序,可用列表在/etc/shells文件中

-G GROUP1[,GROUP2,...[,GROUPN]]:為用戶指明附加組,組必須事先存在

默認值設定:/etc/default/useradd文件中

useradd -D

-s SHELL


練習:創建用戶gentoo,附加組為distro和linux,默認shell為/bin/csh,註釋信息為"Gentoo Distribution"

# tail -1 /etc/passwd

gentoo:x:502:502:Gentoo Distribution:/home/gentoo:/bin/csh

# id gentoo

uid=502(gentoo) gid=502(gentoo) 組=502(gentoo),500(distro),501(linux)


2.3-用戶及組管理