用戶管理的配置文件
用戶信息文件:/etc/passwd
密碼文件:/etc/shadow
用戶組文件:/etc/group
用戶組密碼文件:/etc/gshadow
用戶配置文件:
/etc/login.defs
/etc/default/useradd
新用戶信息文件:/etc/ske1
登陸信息:/etc/motd /etc/issue
/etc/passwd文件格式
用戶類型
Linux用戶分為三種:
超級用戶(root UID=0)
普通用戶(UID 500-60000)
偽用戶(UID 1-499)
注意:root不一定是超級用戶,但是UID=0的用戶一定是超級用戶。
偽用戶
偽用戶與系統(tǒng)和程序服務(wù)相關(guān)
bin daemon shutdown halt等,任何linux系統(tǒng)默認(rèn)都有這些偽用戶
mail news games apache ftp mysql及sshd等,與linux系統(tǒng)的進(jìn)程相關(guān)
偽用戶通常不需要或無法登陸系統(tǒng)
可以沒有宿主目錄
用戶組
每個(gè)用戶都至少屬于一個(gè)用戶組
每個(gè)用戶組可以包括多個(gè)用戶
同一個(gè)用戶組的用戶享有該組共有的權(quán)限
/etc/shadow文件格式
/etc/group文件格式
手工添加用戶
分別在/etc/passwd 、/etc/group 和/etc/shadow文件中添加一筆記錄
創(chuàng)建用戶宿主目錄
在用戶宿主目錄中設(shè)置默認(rèn)的配置文件
設(shè)置用戶初始密碼
SetUID
思考:為什么普通用戶可以更改密碼?
SetUID的定義:當(dāng)一個(gè)可執(zhí)行程序具有SetUID權(quán)限,用戶執(zhí)行這個(gè)程序時(shí),將以這個(gè)程序所有者的身份執(zhí)行。
范例:1.將touch命令授予SetUID權(quán)限
2.當(dāng)vi命令唄授予SetUID權(quán)限
3.查找SetUID程序:
Find / -perm -4000 –o –perm -2000
添加用戶
useradd設(shè)置選項(xiàng) 用戶名 -D 查看缺省參數(shù)
u:UID
g:缺省所屬用戶組GID
G:指定用戶所屬多個(gè)組
d:宿主目錄
s:命令解釋器shell
c:描述信息
e:指定用戶失效時(shí)間
#useradd ksharpdabu //添加ksharpdabu這個(gè)賬號/p>
p>#passwd ksharpdabu /修改ksharpdabu的密碼
或者熟悉系統(tǒng)文件的,可以直接手動添加用戶
用戶組管理命令
添加用戶組groupadd
groupadd -g 888 webadmin
創(chuàng)建用戶組webadmin ,其GID為 888
刪除用戶組:groupdel 組名
#groupdel webuser //刪除webuser這個(gè)組
修改用戶組星系 :groupmod
#groupmod -n apache webadmin
修改webadmin組名為apache
用戶組管理命令
Gpasswd設(shè)置組密碼及管理組內(nèi)成員
-a添加用戶到用戶組
-d 從用戶組中刪除用戶
-A設(shè)置用戶組管理員
-r刪除用戶組密碼
-R禁止用戶切換為該組
修改用戶信息
usermod
#usermod -G softgroup ksharpdabu
將用戶ksharpdabu添加到softgroup用戶組中
#usermod -l ksharpdabu -d /home/samlee –g webadmin Tom
將用戶Tom的登陸用戶名改為ksharpdabu,加入wenadmin組中,用戶目錄改為/home/ ksharpdabu
用戶管理命令
pwk 檢測/etc/passwd文件(鎖定文件)
vipw 編輯/etc/passwd文件
id 查看用戶id和組信息
finger 查看用戶詳細(xì)信息
su 切換用戶(su –環(huán)境變量切換)
passwd –S 查看用戶密碼狀態(tài)
who、w 查看當(dāng)前登錄用戶信息
用戶組管理命令
groups 查看用戶隸屬于哪些用戶組
newgrp 切換用戶組
grpck 用戶組配置文件檢測
chgrp 修改文件所屬組
vigr 編輯/etc/group文件(鎖定文件
用戶組授權(quán)實(shí)例
授權(quán)用戶jack和mary對目錄/software有寫權(quán)限
# groupadd softadm/p>
p># usermod -G softadm jack/p>
p># gpasswd -a mary softadm/p>
p># chgrp softadm /software/p>
p># chmod g+w /software
# ls -ld /software/p>
p>drwxrwxr-x 2 root softadm 512 Jul 14 06:17 /software/p>
p># grep softadm /etc/group/p>
p>softadm::100:jack,mary
禁用和恢復(fù)用戶
禁用
# usermod -L username/p>
p># passwd -l username
恢復(fù)
# usermod -U username/p>
p># passwd -u username
刪除用戶
userdel –r 用戶名
-r:刪除用戶目錄
手工刪除:
使用find命令查找屬于某個(gè)用戶或者用戶組的文件
Find選項(xiàng)-user、-uid、-group、-gid
對需要保留的文件進(jìn)行移動和備份
對不需要的文件進(jìn)行刪除
清除用戶文件中的相關(guān)表項(xiàng)
清除用戶宿主目錄
用戶管理命令
change設(shè)定密碼
-l 查看用戶密碼設(shè)置
-m 密碼修改最小天數(shù)
-M 密碼修改最大天數(shù)
-d 密碼最后修改的日期
-l 密碼過期后,鎖定賬戶的天數(shù)
-E 設(shè)置密碼的過期日期,如果為0,代表密碼立即過期;如果為-1,代表密碼永不過期
-W 設(shè)置密碼過期前,開始警告的天數(shù)
啟動或停用shadow功能
pwconv/pwunconv
grpconv/grpunconv
system-config-users
authconfig /etc/sysconfig/authconfig
批量添加用戶
newusers命令 導(dǎo)入用戶信息文件
pwunconv命令 取消shadow password功能
chpasswd命令 導(dǎo)入密碼文件(密碼文件格式: 用戶名:密碼)
pwconv命令 將密碼寫入shadow文件
實(shí)例:一次批量添加10個(gè)用戶
限制用戶su為root:
# groupadd sugroup/p>
p># chmod 4550 /bin/su/p>
p># chgrp sugroup /bin/su/p>
p># ls -l /bin/su/p>
p>-r-sr-x— 1 root sugroup 18360 Jan 15 2010 /bin/su
設(shè)定后,只有sugroup組中的用戶可以使用su切換為root
# useradd helen/p>
p># passwd helen/p>
p># usermod -G sugroup helen //為helen增加su的權(quán)限
用sudo替代su:
在執(zhí)行sudo命令時(shí),臨時(shí)成為root
不會泄露root口令
僅向用戶提供有限的命令使用權(quán)限
配置文件:/etc/sudoers,編輯配置文件命令visudo
普通用戶使用命令sudo。
格式:用戶名(組名) 主機(jī)地址=命令(絕對路徑)
系統(tǒng)弱密碼測試工具John the ripper的使用方法;
# tar -xzvf john-1.7.6.tar.gz/p>
p># cd john-1.7.6/run/p>
p># make
破解用戶ksharpdabu密碼
# grep ksharpdabu /etc/passwd > /test/ksharpdabu.passwd/p>
p># grep ksharpdabu /etc/shadow > /test/ksharpdabu.shadow/p>
p># /test/john-1.6.6/run/unshadow /test/ksharpdabu.passwd/p>
p>/test/ksharpdabu.shadow > /test/ksharpdabu.john/p>
p># /test/john-1.6.6/run/john /test/ksharpdabu.john