Linux介紹---用戶管理

1.用戶相關文件
1./etc/passwd 用戶信息文件。
root❌0:0:root:/root:/bin/bash
第一列: 用戶名
第二列:密碼位
第三列:用戶ID
0 超級用戶UID。如果用戶UID爲0,代表這個賬號是管理員賬號,那麼Linux中如何吧普通用戶升級爲管理員呢?就是把其他用戶的UID修改爲0就可以了,這點和Windows不同,不過不建議多個管理員賬號。
1-499系統用戶(僞用戶)UID。這些UID賬號是系統保留用戶的UID,也就是所UID是1-499範圍內的用戶登陸系統的。100-499是預留給用戶創建系統賬號的。
500-60000 普通用戶UID,建立的普通用戶UID從500開始,最大到60000。這些用戶足夠用了,但是如果不夠用的話也不用害怕,2.6.x內核以後的Liunx系統用戶UID已經可以支持2的32次方這麼多了。
第四列:組ID GID添加用戶時,如果不指定用戶所屬的的初始祖,那麼會建立和用戶相同的組。
第五列:用戶說明
第六列:用戶家目錄 ~
第七列:登陸shell /bin/bash
把普通用戶變成超級用戶:把用戶UID改爲0.
/etc/shashadow影子文件
root:$60fpRFiNpsm1.RX/Z0fpRFiNpsm1.RX/ZySn/hVOYRc3VUop5GwpRN0plKCGfAyOUCVlAPKyCUuGQBgF5/H8sKa2xHxxb/m4./vwGxXuuvvGfE6CBOBwBP/::0:99999:7:::
第一列:用戶名
第二列:加密密碼(我們也可以在密碼前面人爲的加入!或者*改變加密值讓密碼暫時失效,使這個用戶米有辦法登錄,達到暫時禁止用戶的登陸的效果。注意,所有僞用戶的密碼都是!或者星號,代表沒有密碼是沒法登錄的。當然我們新創建的用戶不設定密碼它的密碼也是!! ,代表這個用戶沒有密碼,不可以登錄。)
第三列:密碼最近更改時間,1970年1月1日作爲標準日期。
時間戳轉日期
在這裏插入圖片描述
第四列:兩次修改密碼的修改間隔時間,和(第三個3字段相比)
第五列:密碼有效期和第三字段相比
第六列:密碼修改到期前的警告天數,(和第五字段相比)
第七列:密碼過期後的寬限天數(和第五字段相比)
第八列:密碼失效時間。這裏同樣寫時間戳也就是用1970年1月1日進行時間換算,
第九列:保留。
/etc/group組信息文件
在這裏插入圖片描述
第一列:組名。
第二列:組密碼位。
第三列:GID。
第四列:此組中支持的其他用戶,附加組是此組用戶。
初始祖:每個用戶初始祖只能又一個,初始祖只能又一個,一般都是和用戶名相同的組作爲初始祖。
附加組:每個用戶可以屬於多個附加組,要把用戶加入組中,都是附加組。
4組密碼文件/etc/gshadow
如果我們給用戶設定了組管理員,並給該用戶組設定了組密碼,組密碼就保存在這個文件當中,組管理員就可以利用這個密碼管理這個用戶組了。
5用戶家目錄。
6用戶郵箱目錄。
7用戶模版目錄。/etc/skel。
用戶管理命令
1.添加用戶:
1.1手動刪除用戶。
手動刪除用戶實驗:手動刪除,如果可以正常建立用戶,證明用戶刪除乾淨。
/etc/passwd
/etc/shadow
/etc/group
/etc/gshadow
/home/user1
/var/spool/mail/user1 郵箱。
1.2useradd 命令:
useradd 選項 用戶名。
選項:
-u 550 指定uuid
-g 組名 指定初始祖,不要用於手動指定。
-G組名 指定附加組,把用戶加入組中,使用附加組。
-c說明 添加說明。
-d 目錄 手動指定家目錄,目錄不需要事先建立。
-s shell /bin/bash
groupadd testlamp:手動添加testlamp用戶組。
useradd -u 550 -g testlamp -G root -d /home/testlamp -c “test user” -s /bin/bash testlamp
建立testlamp用戶同時指定uuid 初始祖 附加組 家目錄 用戶說明 和用戶登錄。
cat /etc/passwd | grep testlamp 查看是否添加成功。
1.3useradd默認值:
useradd 添加用戶時參考的默認值文件主要有兩個,分別時/etc/default/useradd 和/etc/login.defs.
1./etc/default/useradd
在這裏插入圖片描述
解釋一下:
GROUP=100
這個選項是建立用戶的默認組,也就是說添加每個用戶時,用戶的初始組就是GID爲100的這個用戶組,目前我們採用的機制似有用戶組機制。
HOME=/home
這個選項是用戶家目錄的默認位置,所以所有的新建用戶的家目錄默認在/home/下
INACTIVE= -1
這個選項是密碼過期後的寬限天數,也就是/etc/shado文件的第七個字段,如果是天數,比如10代表密碼過期後10天后失效。如果是0代表密碼過期後會立即失效,如果是-1 則代表密碼永遠不會失效。
EXPIRE=
這個是密碼失效時間。也就是/etc/shadow文件的第八個字段,也就是說用戶達到這個日期後就會直接失效,當然這裏也是使用時間戳來表示日期,默認是空。所有新建用戶沒有失效時間,永久失效。
SHELL=/bin/bash
這個選項是用戶默認的shell的。/bin/bash是Linux的標準的shell,所以所有新建的用戶默認具備shell賦予權限。
SKEL=/etc/skel
這個選項就是定義用戶模板目錄的位置,/etc/skel目錄中的文件都會複製到新建用戶的家目錄當中。
CREATE_MALL_SPOOL=yes
這個選項定義是否給新建用戶建立郵箱,默認是創建,也就是說所有的新建用戶系統都會新建一個郵箱,放在/var/spool/mail下和用戶名相同。
/etc/login.defs
vi在這裏插入圖片描述
解釋一下:
MAIL_DIR /var/spool/mail
指定了新建用戶的默認郵箱位置。
PASS_MAX_DAYS 99999
這行指定了密碼的有效期,也就是/etc/shadow文件的第五字段,代表多少天之後必須修改密碼。默認是9999
PASS_MIN_DAYS 0
這行指定的是兩次密碼的修改間隔時間,也就是/etc/shadow文件的第四段,代表第一次修改密碼之後,幾天後才能再次修改密碼,默認值是0.
PASS_MIN_LEN 5
這行代表密碼的最小長度,默認是不小於5位。但是我們現在用戶登錄是驗證已經被PAM模塊取代,所以這個選項並不生效。
PASS_WARN_AGE 7
這行代表密碼修改到期前的警告天數,也就是/etc/shadow文件的第六字段,代筆密碼到底有效期前多少天開始進行警告,默認是7天。
UID_MIN 1000
UID_MAX 60000
這兩行代表創建用戶時,最小的UID和最大 的UID的範圍,我們在2.6.x內核開始,Linux用戶的UID最大可支持2的32次方,但是真正使用時最大範圍時6000,還要注意如果我們手動指定了一個用戶的UID時550,那麼一下子創建的用戶的UID就會從551開始,哪怕是500-549之間的UID沒有使用
SYS_UID_MIN 201
SYS_UID_MAX 999

GID_MIN 1000
GID_MAX 60000
這兩行指定了GID的最小值和最大值。
CREATE_HOME yes
這行指定建立用戶時是否自動創建用戶的家目錄,默認是建立的。
UMASK 077
建立用戶家目錄的默認權限,因爲umask值是077 所以新建的用戶家目錄的權限是700umask的具體作用和修改方法我們可以參考下一張權限設置章節。
USERGROUPS_ENAB yes
這行指定的是使用userdel刪除用戶時,是否刪除用戶的初始組,默認是刪除。
ENCRYPT_METHOD SHA512
這行制定了Linux用戶的密碼使用的書SHA512散列模式加密,這是新密碼的加密模式,原來使用的DES或者MD5方式加密。
設定密碼
passwd [選項] 用戶名:
選項:
-l:暫時鎖定用戶,僅限root用戶使用。
-u:解鎖用戶,僅root用戶可用。
–stdin:可以將通過管道符輸出到數據作爲用戶的密碼,主要在批量添加用戶時使用
在這裏插入圖片描述
echo “123456” | passwd --stdin user4
也可以使用字符串作爲密碼:
在這裏插入圖片描述

在這裏插入圖片描述
可以通過命令,把密碼修改日期歸零,這樣用戶已登陸就要修改密碼。

用戶信息修改
usermod [選項] 用戶名:
選項:
-u UID x修改用戶UID。
-d 家目錄,修改用戶的家目錄,家目錄必須寫絕對路徑。
-c 用戶說明,修改用戶的說明信息,就是/etc/passwd 文件的i 第五個字段。
-g 組名 修改用戶的初始組。就是/etc/passwd文件的第四個字段。
-G 組名 修改用戶的附加組,其實就是把用戶加入到其他用戶組中。
-s shell 修改用戶的登錄shell,默認是/bin/bash
-e 日期 修改用戶失效日期,格式爲‘YYYY-MM-DD’,也就是/etc/shadow文件的第八個字段。
-L 臨時鎖定用戶。
-U 解鎖用戶。
刪除用戶
userdel [-r] 用戶名。
選項:
-r:在刪除用戶的同時刪除用戶的家目錄。
切換用戶
su 命令可以切換成不同的身份,
su [選項] 用戶名。
選項:
-:只使用“-” 代表連帶用戶的環境變量一切切換。
-c命令:僅執行一次命令,而不用切換命令。
- 不能省掉,它代表切換用戶身份時,用戶的環境變量也要切換成新用戶的環境變量。
三組管理命令
1.添加用戶 groupadd
添加用戶組的命令是groupadd,格式如下:
groupadd [選項] 組名。
選項:
-g GID:指定組ID。
添加用戶組的命令的命令比較簡單。
2.刪除用戶:groupdel
groupdel 命令主要用於刪除用戶組.
3.把用戶添加進組或者從組中刪除。gpasswd
其實gpasswd命令是用來設定組密碼並指定組管理員,不過我們在前面已經說了,組密碼和組管理員功能很少使用。而且完全可以被sudo命令取代,所以gpasswd命令 現在主要用戶把用戶添加進組或者從組中刪除。
命令格式
gpasswd [選項] 組名
選項:
-a 用戶名:把用戶加入組
-d 用戶名 :把用戶從組中刪除。
4.改變有效組:
每個用戶可以屬於一個初始組,也可以屬於多個附加組。用戶創建文件後,文件的屬組是用戶的初始組,因爲用戶的有效默認是初始組。
使用newgrp 組名 可以切換用戶的有效組。

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