-
用戶相關(guān)文件
-
用戶相關(guān)目錄
-
用戶提權(quán)方法
-
用戶相關(guān)命令
系統(tǒng)用戶重要文件(4個(gè))
1./etc/passwd:系統(tǒng)用戶記錄文件
[root@oldboy63 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
以第一行為例:
root:用戶名稱信息
x:用戶密碼信息
0:用戶uid數(shù)值信息
0:用戶gid數(shù)值信息
root:用戶注釋信息
/root:指定用戶家目錄
/bin/bash:用戶登錄系統(tǒng)方式
bash == shell
[root@oldboy63 ~]# cat /etc/shells
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
2./etc/shadow:系統(tǒng)用戶密碼(密文)記錄文件
[root@oldboy63 ~]# cat /etc/shadow
root:$6$7YAW0pEcYWYlIaTc$.ywlkopjuEvEumogWEuHUlvEO6PCiV5qtAel7yGCiDSFEcbV5ZeR0GIZhIHkiVqU1e/2/zx5IzNcVB8vHXER11::0:99999:7:::
oldgirl:$6$M.XB6jla$AtxZ/Apwnq0BSPjl1prOJfpPXH20.vZMZQA.vWgiWbhz5C.1CbOkvgzx5FK/Y8qKLXmORUgOclVERAjSU4s.K.:18094:0:99999:7:::
以:分隔:
第一列:用戶名稱信息
第二列:用戶密碼信息
如何生成密碼密文信息:
利用Python模塊功能
yum install python-pip
pip install passlib
python -c "from passlib.hash import sha512_crypt; import getpass; print(sha512_crypt.using(rounds=5000).hash(getpass.getpass()))"
3./etc/group :系統(tǒng)用戶組記錄文件
4./etc/gshadow :系統(tǒng)用戶組密碼記錄文件
系統(tǒng)用戶重要目錄
/etc/skel :樣本目錄(樣板房)是用來(lái)存放新用戶配置文件的目錄,當(dāng)我們添加新用戶時(shí),這個(gè)目錄下的所有文件會(huì)自動(dòng)被復(fù)制到新添加的用戶的家目錄下锌妻;默認(rèn)情況下源武,/etc/skel目錄下的所有文件都是隱藏文件
[root@oldboy63 ~]# ll /etc/skel/ -a
total 24
drwxr-xr-x. 2 root root 62 Apr 11 2018 .
drwxr-x-wx. 80 root root 8192 Jul 29 18:43 ..
-rw-r--r--. 1 root root 18 Oct 31 2018 .bash_logout
-rw-r--r--. 1 root root 193 Oct 31 2018 .bash_profile
-rw-r--r--. 1 root root 231 Oct 31 2018 .bashrc
如果用戶家目錄(隱藏文件等)被破壞彩扔,可通過(guò)此目錄來(lái)恢復(fù)
cp -r /etc/skel/.bas* /home/oldboy
/etc/skel/* /home/oldboy
如何恢復(fù)命令提示符:
方式一:vim /etc/profile
export PS1='\[\e[32;1m\][\u@\h \W]\$ \[\e[0m\]'
方式二: 復(fù)制/etc/skel目錄中的隱藏文件
cp /etc/skel/.bash* /home/oldboy/
用戶提權(quán)操作
修改文件或目錄權(quán)限
1.chmod:
?單獨(dú)修改權(quán)限信息:
單獨(dú)修改屬主權(quán)限:
u=user
chmod u+r/w/x
chmod u-r/w/x
chmod u=r/w/x
單獨(dú)修改屬組權(quán)限:
g=group
chmod g+r/w/x
chmod g-r/w/x
chmod g=r/w/x
單獨(dú)修改其他用戶權(quán)限:
o=other
chmod o+r/w/x
chmod o-r/w/x
chmod o=r/w/x
?批量修改權(quán)限信息:
利用數(shù)值進(jìn)行修改
chmod 744 test.txt
利用符號(hào)修改權(quán)限
chmod a+x 01.txt
創(chuàng)建oldboy/ oldboy{1..3}
修改目錄權(quán)限為666,且目錄下的數(shù)據(jù)權(quán)限也為666
chmod -R 777 /oldboy/ --- 利用-R參數(shù)實(shí)現(xiàn)遞歸修改目錄以及目錄下面所有數(shù)據(jù)權(quán)限
2.chown:
??屬主信息 chown oldboy
屬組信息 chown .oldboy
全部信息 chown oldboy.oldboy
創(chuàng)建oldboy/ oldboy{1..3}
修改目錄權(quán)限屬主為oldboy 屬組oldgirl 且所有目錄下面數(shù)據(jù)權(quán)限和目錄一致
chown -R oldboy.oldgirl /oldboy --- 利用-R參數(shù)實(shí)現(xiàn)遞歸修改目錄以及目錄下面所有數(shù)據(jù)權(quán)限
3.利用sudo方式對(duì)指定用戶提權(quán)
例 給oldboy用戶提權(quán):
第一個(gè)里程:
visudo
oldboy ALL=(ALL) /sbin/*, /bin/*, vi
oldboy ALL=(ALL) /bin/*, !/bin/vim, !/usr/sbin/visudo --- 對(duì)有些危險(xiǎn)命令進(jìn)行取反配置
oldboy ALL=(ALL) NOPASSWD: /bin/*, !/bin/vim, !/usr/sbin/visudo --- 忽略sudo密碼信息
1.將root權(quán)力賦予哪個(gè)用戶
2.權(quán)限集中管理服務(wù)器 ---跳板機(jī)
3.賦予什么特殊權(quán)力
第二個(gè)里程:測(cè)試賦予權(quán)力
普通用戶測(cè)試執(zhí)行
sudo -l ----查看特殊權(quán)限
/bin/cat /etc/shadow, /bin/touch /etc/*
sudo cat /etc/shadow --- 操作命
sudo -k ---清除sudo密碼緩存
visudo(語(yǔ)法檢查功能) == vim /etc/sudoers
visudo -c ----檢查/etc/sudoers文件合法性
4.系統(tǒng)特殊權(quán)限位
setuid(4/s):可以讓普通用戶獲得一個(gè)命令文件屬主能力
修改命令權(quán)限:
chmod u+s /usr/bin/cat
chmod 4755 /usr/bin/cat
s權(quán)限位會(huì)覆蓋執(zhí)行權(quán)限位
執(zhí)行權(quán)限位有x setuid符號(hào)為小寫
[root@oldboy63 ~]# ll `which cat`
-rwxr-xr-x. 1 root root 54160 Oct 31 2018 /usr/bin/cat
[root@oldboy63 ~]# chmod 4755 /usr/bin/cat
[root@oldboy63 ~]# ll `which cat`
-rwsr-xr-x. 1 root root 54160 Oct 31 2018 /usr/bin/cat
執(zhí)行權(quán)限位無(wú)x setuid符號(hào)為大寫
[root@oldboyedu ~]# ll `which cat`
-rw-r-xr-x. 1 root root 54160 Oct 31 2018 /usr/bin/cat
[root@oldboyedu ~]# chmod 4655 /usr/bin/cat
[root@oldboyedu ~]# ll `which cat`
-rwSr-xr-x. 1 root root 54160 Oct 31 2018 /usr/bin/cat
setgid(2/s):可以讓普通用戶獲得一個(gè)命令文件屬組能力
修改命令權(quán)限:
chmod g+s /usr/bin/cat
chmod 2755 /usr/bin/cat
sticky bit(粘滯位 t/1):只對(duì)目錄設(shè)置
創(chuàng)建一個(gè)共享目錄嫉髓,目錄中文件數(shù)據(jù)只能屬主用戶操作
其他用戶不能操作(刪除莹妒,修改等)其中數(shù)據(jù)铛绰,只能查看
例:創(chuàng)建一個(gè)/share目錄
[root@oldboyedu ~]# chmod o+t /share/
[root@oldboyedu ~]# chmod 1777 /share/
[root@oldboyedu ~]# ll /share/ -d
drwxrwxrwt 2 root root 43 Jul 29 19:45 /share/
5.用戶管理相關(guān)命令
useradd:創(chuàng)建用戶
-u:指定uid信息
-g:指定用戶所屬主要組
-G:指定用戶所屬附屬組
-M:不創(chuàng)建用戶家目錄
-s:指定用戶shell登錄方式(/sbin/nologin)
-c:給用戶添加注釋信息
userdel:刪除用戶
-r:徹底刪除用戶,以及家目錄
usermod:修改用戶
-u:指定uid信息
-g:指定用戶所屬主要組
-G:指定用戶所屬附屬組
-s:指定用戶shell登錄方式(/sbin/nologin)
-c:給用戶添加注釋信息
groupadd :-g
groupdel
groupmod
[root@oldboy63 ~]# w
21:33:07 up 3:34, 2 users, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 10.0.0.1 17:35 3:55m 0.10s 0.00s fdisk /dev/sdb
root pts/1 10.0.0.1 19:57 3.00s 0.07s 0.00s w
列信息:
01: 登錄系統(tǒng)用戶信息
02: 登錄方式 tty本地登錄 pts/1遠(yuǎn)程登錄
echo "請(qǐng)其他用戶最近2天不要修改/home/oldboy/oldboy.txt" >/dev/pts/0
03: 顯示登錄的源IP地址
04: 登錄時(shí)間
05: 登錄之后空閑時(shí)間
06-07: 執(zhí)行命令耗費(fèi)CPU時(shí)長(zhǎng)
08: 執(zhí)行了什么操作
last: 顯示用戶曾經(jīng)登錄歷史記錄
lastlog: 顯示系統(tǒng)所有用戶登錄信息