国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Linux > 正文

Linux學習筆記(12)用戶和用戶組管理

2024-06-28 13:22:19
字體:
來源:轉載
供稿:網(wǎng)友
linux學習筆記(12)用戶和用戶組管理

越是對服務器安全性要求高的服務器,越需要建立合理的用戶權限等級制度和服務器操作規(guī)范。在Linux中主要是通過用戶配置文件來查看和修改用戶信息。

1 用戶信息文件(1)用戶信息文件/etc/passwd

vim命令顯示該文件的內(nèi)容:

root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologin

可以發(fā)現(xiàn),該文件的每一行共有7個字段。其中:

第1個字段是用戶名稱;

第2個字段是密碼標志;

第3個字段是UID(用戶標志),其中0表示超級用戶(當普通用戶的UID改為0時,服務器將該用戶視為超級用戶)。1~499為系統(tǒng)用戶(偽用戶),不能登陸,也不能刪除,500~65535為普通用戶,因此,新建的第一個用戶的UID即為500。

第4個字段為GID(用戶初始組ID)。

初始組是指用戶一登陸就立即擁有這個用戶組的相關權限,每個用戶的初始組只能有一個,一般就是和這個用戶的用戶名相同的組名作為這個用戶的初始組。

附加組是指用戶可以加入多個其他的用戶組,并擁有這些組的權限,附加組可以有多個。

第5個字段為用戶說明。可以添加,也可以不添加。

第6個字段為家目錄。普通用戶的家目錄一般為/home/用戶名/,超級用戶的家目錄為/root/。

第7個字段表示登陸之后的Shell。Shell是Linux的命令解釋器,除了標準的Shell是/bin/bash之外,如果暫時禁用用戶時,可將其寫為/sbin/nologin。

(2)影子文件/etc/shadow

1)/etc/shadow的內(nèi)容:

root:$6$NvfaINezKBg3Cqn7$bB5im5NRggTOa45clyXAXjud4YDhyDlTUgBfqy51UieAx1aUOreJCyPkoaG4MRUkSJGp2Xd9lnqXPIHEfM.4A0:16363:0:99999:7:::bin:*:15980:0:99999:7:::daemon:*:15980:0:99999:7:::

可以發(fā)現(xiàn),影子文件由9個字段組成。其中:

第1個字段表示用戶名。

第2個字段表示加密密碼。CentOS 6.5已經(jīng)加密算法從md5升級為SHA512散列加密方法。如果密碼是"!!"或"*"代表沒有密碼,不能登陸,即為偽用戶。

第3個字段為密碼最后一次修改日期,使用1970年1月1號作為標準時間,每過一天時間戳加1。

第4個字段為兩次密碼修改設定的間隔時間(該時間基于與第3個字段)。

第5個字段表示密碼有效期(和第2字段相比)。

第6個字段表示密碼修改到期前的警告天數(shù)(和第5字段相比)。

第7個字段表示密碼過期后的寬限天數(shù)(和第5字段相比)。

第8個字段表示賬號失效時間(要用時間戳表示)。其中0表示密碼過期后立即失效,-1表示密碼永遠不會失效。

第9個字段保留。

2)時間戳的換算

把時間戳換算為日期,其命令為:

[root@localhost ~]# date -d "1970-01-01 16461 days"Mon Jan 26 00:00:00 CST 2015

將日期換算為時間戳,其命令為:

[root@localhost ~]# echo $(($(date --date="2015/01/26" +%s)/86400+1))16461
(3)組信息文件和組密碼文件

1)組信息文件/etc/group

[root@localhost ~]# vim /etc/grouPRoot:x:0:bin:x:1:bin,daemondaemon:x:2:bin,daemonsys:x:3:bin,admadm:x:4:adm,daemon

從組信息文件中可以看出,共有4個字段。

第1個字段為組名;

第2個字段為組密碼標志(組密碼不常用);

第3個字段為GID(組ID);

第4個字段為組中附加用戶。

2)組密碼文件/etc/gshadow

[root@localhost ~]# vim /etc/gshadowroot:::bin:::bin,daemondaemon:::bin,daemonsys:::bin,admadm:::adm,daemon

組密碼文件也具有4個字段:

第1個字段為組名;

第2個字段為組密碼;

第3個字段為組管理員用戶名;

第4個字段為組中附加用戶。

2 用戶管理相關文件

1)用戶的家目錄

普通用戶的家目錄一般為/home/用戶名/,所有者和所屬組均為此用戶,權限為700。

超級用戶的家目錄為/root/,所有者和所屬組都是root用戶。如果將普通用戶修改為超級用戶時,普通用戶的家目錄不會改變。

2)用戶的郵箱

新建用戶的郵箱的路徑一般為/var/spool/mail/用戶名。

3)用戶模板目錄

用戶的模板目錄為/etc/skel,每創(chuàng)建一個用戶,用戶的家目錄都會從該目錄下拷貝。

3 用戶管理命令(1)useradd

1)格式為:useradd [選項] 用戶名

其中:-u(UID)表示手工指定用戶的UID號,-d(家目錄)表示手工指定用戶的家目錄,-c(用戶說明)表示手工指定用戶的說明,-g(組名)表示手工指定用戶的初始組,-G(組名)表示指定用戶的附加組,-s(Shell)表示手工指定用戶登錄的shell,默認為/bin/bash。

2)添加默認用戶

例:添加默認用戶ws:

[root@localhost ~]# useradd ws

該操作修改了用戶的信息文件,可通過如下命令查看:

[root@localhost ~]# grep ws /etc/passwdws:x:500:500::/home/ws:/bin/bash[root@localhost ~]# grep ws /etc/shadowws:!!:16436:0:99999:7:::[root@localhost ~]# grep ws /etc/groupws:x:500:[root@localhost ~]# grep ws /etc/gshadowws:!::[root@localhost ~]# ll -d /home/ws/drwx------. 2 ws ws 4096 Jan  1 20:26 /home/ws/[root@localhost ~]# ll /var/spool/mail/ws-rw-rw----. 1 ws mail 0 Jan  1 20:26 /var/spool/mail/ws

例:添加指定用戶:

[root@localhost ~]# useradd -u 550 -G root,bin -d /home/ws1 -c "test user" -s /> /bin/bash ws1

其中"/"表示換行。

3)用戶默認文件

① /etc/default/useradd

[root@localhost ~]# vim /etc/default/useradd# useradd defaults fileGROUP=100                            #用戶默認組HOME=/home                         #用戶默認家目錄INACTIVE=-1                            #密碼過期寬限天數(shù)(shadow第7個字段)EXPIRE=                                   #密碼失效時間SHELL=/bin/bash                     #默認shell  SKEL=/etc/skel                         #模板目錄CREATE_MAIL_SPOOL=yes     #是否建立郵箱

② /etc/login.defs

PASS_MAX_DAYS   99999            #密碼有效期PASS_MIN_DAYS   0                    #密碼修改間隔PASS_MIN_LEN    5                    #密碼最小位數(shù)PASS_WARN_AGE   7                   #密碼到期警告UID_MIN          500             #最小和最大UID范圍UID_MAX          60000ENCRYPT_METHOD SHA512         #加密模式
(2)修改用戶密碼

命令格式

passwd [選項] 用戶名

用戶修改自己的密碼時只需輸入passwd即可。其中-S表示查詢用戶密碼狀態(tài)(僅root可用),-l表示暫時鎖定用戶, 實際操作是在/etc/passwd文件的密碼前加上了感嘆號"!!",-u表示解鎖用戶,--stdin表示可通過管道輸出的數(shù)據(jù)作為用戶的密碼(shell編程常用到:echo "123" | passwd --stdin ws)。

(3)修改用戶信息usermod及修改用戶密碼狀態(tài)chage

1)usermod命令格式

usermod [選項] 用戶名

其中,-u表示修改用戶UID,-G表示修改用戶的附加組,-c表示修改用戶說明,-L表示臨時鎖定用戶,-U表示解鎖用戶鎖定。

2)chage命令格式

chage [選項] 用戶名

其中,-l選項表示列出用戶的詳細密碼狀態(tài),-d(日期)表示修改密碼最后一次更改日期(shadow第3字段),-m(天數(shù))表示兩次密碼修改間隔(shadow第4字段),-M(天數(shù))表示密碼有效期(5字段),-W(天數(shù))表示密碼過期前的警告天數(shù)(6字段),-I(天數(shù))表示密碼過期后的寬限天數(shù)(7字段),-E(日期)表示賬號失效時間(8字段)。

例:

chage -d 0 ws #該命令其實是將密碼修改日期歸0,這樣用戶一登陸就要修改密碼

(4)刪除用戶userdel和用戶切換命令

1)userdel命令格式

userdel [-r] 用戶名

其中,-r選項表示刪除用戶的同時刪除用戶家目錄,也可以手工修改文件刪除用戶名。

2)切換命令格式

su [選項] 用戶名

只使用"-"選項代表連帶用戶的環(huán)境變量一起切換,-c表示僅執(zhí)行一次命令,而不切換用戶身份。

例:不切換root,但執(zhí)行useradd命令添加user1用戶:

su - root -c "useradd user1"

4 用戶組管理

1)添加用戶組:groupadd [選項] 組名

其中,-g表示指定GID。

2)修改用戶組:groupmod [選項] 組名

其中,-g表示修改組ID,-n表示修改組名(一般不建議修改)。

例:將組名tg修改為wstest:

[root@localhost ~]# groupadd tg[root@localhost ~]# groupmod -n wstest tg

3)刪除用戶組:groupdel 組名

注意:如果組中有初始用戶,不能刪除該組,如果是附加用戶,則不影響組的刪除。

4)把用戶添加入組或從組中刪除

gpasswd [選項] 組名

其中,-a表示將用戶加入組,-d表示將用戶從組中刪除。

例:新建一個用戶ws1,將其加入wstest組中,然后刪除:

[root@localhost ~]# useradd ws1[root@localhost ~]# echo "ws1" | passwd --stdin ws1Changing passWord for user ws1.passwd: all authentication tokens updated successfully.[root@localhost ~]# gpasswd -a ws1 wstestAdding user ws1 to group wstest[root@localhost ~]# gpasswd -d ws1 wstestRemoving user ws1 from group wstest

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 五寨县| 龙州县| 通渭县| 乌审旗| 屏南县| 策勒县| 徐州市| 延川县| 大庆市| 屏山县| 屯留县| 钦州市| 拉孜县| 东乡族自治县| 长治市| 凤台县| 楚雄市| 乌拉特前旗| 綦江县| 察隅县| 玉溪市| 东山县| 吴桥县| 庆安县| 旅游| 张家界市| 克什克腾旗| 驻马店市| 九台市| 利辛县| 梁平县| 安多县| 葫芦岛市| 寻乌县| 泸溪县| 墨竹工卡县| 冷水江市| 五峰| 孝感市| 乌什县| 卓尼县|