day16課堂筆記

一、Linux基礎(chǔ)權(quán)限是9個字符。?

[root@oldboyedu ~]# ls -lhi

total 36K

33631870 -rw-r--r--. 1 root root? ? 21 Oct? 6 22:54 a.txt

33631871 -rw-r--r--. 1 root root? ? 16 Oct? 6 23:02 b.txt

33631857 -rw-r--r--? 1 root root? ? 61 Oct? 7 00:11 c.txt

rw-r--r--

rw-r--r--

rw-r--r--

分3組:

前三個字符是表示用戶(屬主)權(quán)限位? user(用戶) u

中三個字符是表示用戶組權(quán)限位 group(用戶組)? ? g

后三個字符是其它用戶權(quán)限位 others(其他用戶)? ? o

同一組的三個字符權(quán)限也是有位置的:

r-- 第一個字符的位置讀的權(quán)限位

? ? 第二個字符的位置寫的權(quán)限位

第三個字符的位置是執(zhí)行的權(quán)限位。

r? 4

w? 2

x? 1

-? 0

【文件】權(quán)限詳細(xì)說明:****

【目錄】權(quán)限詳細(xì)說明:****

測試準(zhǔn)備:

incahome(家、組)

oldboy 家庭男主人,用來代表用戶(User)角色,是文件的所有者

oldgirl 女主人(和所有者oldboy屬于相同組,oldboy的家人)用來代表用戶組incahome的角色

test? 其他人 其他(others)人,用來代表其他用戶角色

[root@oldboyedu ~]# groupadd incahome

[root@oldboyedu ~]# useradd oldboy

useradd: user 'oldboy' already exists

[root@oldboyedu ~]# usermod -g incahome oldboy

[root@oldboyedu ~]# id oldboy

uid=1000(oldboy) gid=1004(incahome) groups=1004(incahome),1000(oldboy)

如果此前沒有創(chuàng)建oldboy,可以執(zhí)行下面命令,而不需要usermod命令。

[root@oldboyedu ~]# useradd oldboy -g incahome

[root@oldboyedu ~]# useradd oldgirl -g incahome

useradd: user 'oldgirl' already exists

[root@oldboyedu ~]# id oldgirl

uid=1001(oldgirl) gid=1001(oldgirl) groups=1001(oldgirl)

[root@oldboyedu ~]# usermod -g incahome oldgirl

[root@oldboyedu ~]# id oldgirl

uid=1001(oldgirl) gid=1004(incahome) groups=1004(incahome)

[root@oldboyedu ~]# useradd test

useradd: user 'test' already exists

準(zhǔn)備環(huán)境:

[root@oldboyedu ~]# mkdir -p /oldboy

[root@oldboyedu ~]# echo "echo oldboyLinux" >/oldboy/test.sh

[root@oldboyedu ~]# chmod +x /oldboy/test.sh

1. 測試默認(rèn)情況下不同用戶的對應(yīng)權(quán)限

[root@oldboyedu /oldboy]# chown oldboy.incahome test.sh

[root@oldboyedu /oldboy]# ls -l

total 4

-rwxr-xr-x 1 oldboy incahome 22 Oct? 7 21:18 test.sh

權(quán)限修改:

777 +x -x? u=w? g-x

Linux權(quán)限有兩種表現(xiàn)形式:

1、數(shù)字表示法 稱為8進(jìn)制權(quán)限

r 4

w 2

x 1

- 0

實際的權(quán)限表示就是將每3位相加即可。

rwxr-xr-x? 755

rwx 7

r-x 5

r-x 5

2、字符表示法

rw-rw-r-x? 代表的數(shù)字權(quán)限為665

--xr-x-wx? 代表的數(shù)字權(quán)限為153

-wx--x--x? 代表的數(shù)字權(quán)限為311

而以下數(shù)字權(quán)限表示的字符權(quán)限如下:

755? 代表的字符權(quán)限為rwxr-xr-x

644? 代表的字符權(quán)限為rw-r--r--

134? 代表的字符權(quán)限為--x-wxr--

修改文件屬性的用戶和組

chown 用戶.用戶組 文件? 這里的點可以用:替換。

chown 用戶 文件

chown .用戶組 文件? ====chgrp 用戶組 文件

chgrp incahome test.txt

# chown oldboy test.sh

# ls -l

total 4

---x--x--x 1 oldboy root 12 Oct? 7 22:16 test.sh

# chown .incahome test.sh

# ls -l

total 4

---x--x--x 1 oldboy incahome 12 Oct? 7 22:16 test.sh

# chown root:root test.sh

# ls -l

total 4

---x--x--x 1 root root 12 Oct? 7 22:16 test.sh

安全權(quán)限臨界點:

文件不想被修改被執(zhí)行:644

# touch oldboy.txt

# ls -l

total 4

-rw-r--r-- 1 root? ? root? 0 Oct? 7 23:21 oldboy.txt

目錄不想被修改(刪除移動創(chuàng)建)被執(zhí)行(進(jìn)入):755

企業(yè)真實案例:網(wǎng)站文件被惡意修改了。。。。打開網(wǎng)站后有彈窗廣告(不是你網(wǎng)站的)

用戶打開網(wǎng)站,報警。

原因:權(quán)限設(shè)置不到位。chmod -R 777 目錄 開發(fā)人員習(xí)慣

解決方案:

1、備份

tar zcvf /opt/oldboy_$(date +%F).tar.gz ./oldboy/

2、找到被修改的文件

[root@oldboyedu /]# find /oldboy -type f |xargs grep 'ddddddddddddd'

/oldboy/oldboy.txt:<script>ddddddddddddd</scripts>

/oldboy/test.sh:<script>ddddddddddddd</scripts>

3、批量刪除

[root@oldboyedu /]# find /oldboy -type f |xargs sed -i '/ddddddddddddd/d'

[root@oldboyedu /]# find /oldboy -type f |xargs grep 'ddddddddddddd'

4、找到文件被篡改來源,并優(yōu)化調(diào)整。

5、寫總結(jié) 故障報告。

控制默認(rèn)權(quán)限的東西? umask

[root@oldboyedu /oldboy]# umask

022

創(chuàng)建文件默認(rèn)最大的權(quán)限為666 (-rw-rw-rw-),其默認(rèn)創(chuàng)建的文件沒有可執(zhí)行權(quán)限x位。

666

022 -

--------------------

644 默認(rèn)權(quán)限

[root@oldboyedu /oldboy]# umask 044? ? ====臨時

[root@oldboyedu /oldboy]# touch abc

[root@oldboyedu /oldboy]# ls -l abc

-rw--w--w- 1 root root 0 Oct? 7 23:42 abc

[root@oldboyedu /oldboy]# umask 044

[root@oldboyedu /oldboy]# touch abc

[root@oldboyedu /oldboy]# ls -l abc

-rw--w--w- 1 root root 0 Oct? 7 23:42 abc

[root@oldboyedu /oldboy]# umask

0044

[root@oldboyedu /oldboy]# umask 043

[root@oldboyedu /oldboy]# umask

0043

[root@oldboyedu /oldboy]# touch a

[root@oldboyedu /oldboy]# ls -l a

-rw--w-r-- 1 root root 0 Oct? 7 23:44 a

當(dāng)umask中存在奇數(shù)位的時候,在計算完畢,奇數(shù)位加1

基于文件:默認(rèn)權(quán)限規(guī)則 了解

從666計算

umask都為偶數(shù) 默認(rèn)權(quán)限用減法

umask有奇數(shù) 默認(rèn)權(quán)限用減法 然后奇數(shù)位加1

基于目錄:默認(rèn)權(quán)限規(guī)則

從777計算

默認(rèn)權(quán)限用減法

Linux系統(tǒng)特殊權(quán)限位知識

9位基礎(chǔ)權(quán)限

還有3位特殊權(quán)限位

suid位:

suid(setuid)位通過S字符標(biāo)識,

存在于基本權(quán)限的用戶權(quán)限位的x權(quán)限對應(yīng)的位置,

如果用戶權(quán)限位對應(yīng)的x權(quán)限位上有x權(quán)限,則suid就用小寫的s標(biāo)識,

suid的s對應(yīng)的數(shù)字權(quán)限為4,完整權(quán)限用八進(jìn)制數(shù)4000表示。

sgid位:

sgid(setgid)位同樣是通過S字符來標(biāo)識,

但是,sgid位存在于基本權(quán)限的用戶組權(quán)限位的x權(quán)限對應(yīng)的位置,

如果用戶組權(quán)限位對應(yīng)的x權(quán)限位上有x權(quán)限,則sgid就用小寫的s標(biāo)識,

suid的s對應(yīng)的數(shù)字權(quán)限為2,完整的權(quán)限用八進(jìn)制數(shù)2000表示。

sticky(粘滯位)知識簡介

sticky(粘滯)位通過字符T標(biāo)識,存在于基本權(quán)限的其他用戶位對應(yīng)的x權(quán)限位上,

如果其他用戶位的x權(quán)限位上有x權(quán)限,

則sticky(粘滯)位通過小寫的t標(biāo)識,對應(yīng)的數(shù)字權(quán)限是1,

完整的權(quán)限用八進(jìn)制數(shù)1000表示。

4 2 1,加和放在基礎(chǔ)權(quán)限數(shù)字的前面。

修改方法:

[root@oldboyedu /oldboy]# chmod 7755 abc

預(yù)測:-rwsr-sr-t

[root@oldboyedu /oldboy]# chmod 7755 abc

[root@oldboyedu /oldboy]# ls -l abc

-rwsr-sr-t 1 root root 0 Oct? 7 23:42 abc

[root@oldboyedu /oldboy]# chmod 7644 abc

[root@oldboyedu /oldboy]# ls -l abc

-rwSr-Sr-T 1 root root 0 Oct? 7 23:42 abc

工作中有啥用?

suid到底有什么作用

簡單地說,suid的作用就是讓普通用戶可以在執(zhí)行某個設(shè)置了suid位的命令或程序時,

擁有和root管理員一樣的身份和權(quán)限(默認(rèn)情況)。

[oldgirl@oldboyedu /]$ ll -ld oldboy/

dr-x-wxrw-. 2 oldboy incahome 6 Oct? 7 22:15 oldboy/

oldgirl屬于incahome,增加一個用戶屬于incahome,是不是也和oldgirl有同樣權(quán)限。

oldboy 給一個新用戶設(shè)置suid,這個新用戶的權(quán)限就和oldboy一樣。

回顧重點:

【文件】權(quán)限詳細(xì)說明:*****

【目錄】權(quán)限詳細(xì)說明:*****

字符和數(shù)字(8進(jìn)制)權(quán)限知識*****

chmod chown chgrp命令使用。*****

企業(yè)真實案例:網(wǎng)站文件被惡意修改了*****

umask默認(rèn)權(quán)限控制*

特殊權(quán)限,suid** sgid sticky*

重點suid

下節(jié)內(nèi)容:

1、sgid sticky

2、跟老男孩學(xué)linux運維:核心基礎(chǔ)實戰(zhàn)_第13章_Linux系統(tǒng)定時任務(wù)Cron(d)服務(wù)應(yīng)用實踐

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容