第十二章Linux權限知識及應用實踐
Linux 基礎權限是九個字符
分三組:
前三個字符是表示用戶(屬主)權限位user ??(用戶)?(u)
中三個字符是表示用戶組權限位gruop ?(用戶組)?(g)
后三個字符是其他其他用戶權限位others (其他用戶)?(o)
第一個字符的位置權限讀的權限位
第二個字符的位置寫的權限位
第三個字符的位置是執(zhí)行行的權限位
用戶腔彰、用戶組的創(chuàng)建:
創(chuàng)建用戶主或者用戶組的時候后面加上add
例如groupadd ***** ?====創(chuàng)建名字位*****的用戶組
?????useradd ?**** ?====創(chuàng)建名字為****的用戶主
怎么查看創(chuàng)建的用戶主或用戶組
例如id ***** ???=====查看
怎么創(chuàng)建屬于用戶組的子用戶
例如:
usermod -g incahome oldgirl ?把oldgirl更改為屬于incahome
[root@oldboyedu ~]# groupadd incahome???
[root@oldboyedu ~]# useradd oldboy
useradd: user 'oldboy' already exists
[root@oldboyedu ~]# usermod -g incahome oldboy?讓oldboy屬于incahome
[root@oldboyedu ~]# id oldboy
uid=1000(oldboy) gid=1004(incahome)?groups=1004(incahome),1000(oldboy)
root@liutengda58~]# id oldgirl
uid=1000(oldgirl) gid=1000(oldgirl)?groups=1000(oldgirl)
[root@liutengda58~]# usermod -g incahome oldgirl
[root@liutengda58~]# id oldgirl
uid=1000(oldgirl) gid=1004(incahome)?groups=1004(incahome)
首先文件的本身要能夠執(zhí)行(命令或腳本)
如果是普通用戶。同時還需具備可讀r的權限才能執(zhí)行文件
而root用戶
?usermod(修改用戶主辖佣,組)
目錄權限
?1可讀r: 表示具有瀏覽目錄下面文件及子目錄名的權限
?2可寫w表示具有增加霹抛、刪除或修改目錄內文件的權限
?3可執(zhí)行x:標識具有進入目錄的權限
權限修改:
?chmod(+ -)增減權限
?chmod u-r, o=w卷谈,g=x
?Linux權限有兩種表現形式
?1杯拐、數字表示法
?r 4 ?w 2 ?x 1 ?- 0
實際的權限表示的就是將每三位相加即可
?rwxr-xr-x ?755
?rwx ?r-x ?r-x
??7 ???5 ???5
2、字符表示法
rw-rw-r-x ?代表的數字權限為665
--xr-x-wx ?代表的數字權限為153
-wx--x--x ?代表的數字權限為311
而以下數字權限表示的字符權限如下:
755 ?代表的字符權限為rwxr-xr-x
644 ?代表的字符權限為rw-r--r--
134 ?代表的字符權限為--x-wxr--
?修改文件屬性的用戶和組
?chown 用戶.用戶組 文件 ?這里的點可以用冒號:替換。
?chown 用戶 文件
?chown .用戶組 文件
安全權限臨界點:
?文件不想被修改的話:644
# touch oldboy.txt??===創(chuàng)建一個文件
# ls -l?????????????===查看權限
total 4????????????
-rw-r--r-- 1 root ???root ?0 Oct ?7 23:21 oldboy.txt
?6 ?4 ?4
目錄不想被修改(刪除移動或者創(chuàng)建)端逼、被執(zhí)行(被執(zhí)行):755
企業(yè)案例:網站文件被惡意修改(打開網站后有彈窗廣告)
用戶打開網站朗兵,網站會報警
原因:權限設置不到位chomd -R 777 (文件權限設置過大,容易被篡改)
解決方案:
?1顶滩、先打包備份
tar zcvf /opt/oldboy_$(date +%F).tar.gz ./oldboy/
?2矛市、找到被修改的文件:
?find /oldboy -type f |xargs grep ‘關鍵字或字符串’
?3、 批量替換(刪除):
?find /oldboy -type f |xargs sed -i '/關鍵字或字符串/d'
?find /oldboy -type f |xargs grep '關鍵字或字符串'
?4诲祸、找到文件被篡改的來源浊吏,并優(yōu)化調整
?5、寫總結 故障報告
控制默認權限的東西umask
?[root@liutengda58~]# umask
??????0022
創(chuàng)建文件默認最大的權限位666(-rw-rw-rw)救氯,其默認創(chuàng)建的二年間沒有可執(zhí)行權限x位
# umask 044 ???====臨時更改
# touch abc????====創(chuàng)建文件abc
# ls -l abc????======查看abc
-rw--w--w- 1 root root 0 Oct ?7 23:42 abc
??基于文件:
從666計算
??umask 都為偶數找田,默認使用減法
??umask 都有奇數 ?默認權限用減法 ?然后奇數位加1
基于目錄:默認權限規(guī)則
從777計算
當umask中存在奇數位的時候,在計算完畢着憨,奇數位加1
Linux系統(tǒng)特殊權限位知識
?9位基礎權限
還有三位特殊權限位
?suid 位
?suid (setuid)通過S字符標識
存在于基本權限的用戶權限為的x權限對應的位置墩衙;
如果用戶權限位對應的x權限位上有x
權限,則suid就用小寫的s標識
????2 ?sgid位
3 ?sticky (粘滯位)
怎么給文件更改為suid權限
chomd u+s /bin/rm ?我們給 rm增加了一個所有人都可對其操作的權限
chomd==修改文件權限 ???u+s ==把user權限修改為-rws r-x r-x甲抖。
chown ?cheange owner ?改變文件用戶和組(在思考目錄的屬性修改)
修改文件屬性的用戶和組
chown 用戶.用戶組 文件 ?這里的點可以用:替換漆改。
chown 用戶 文件
chown .用戶組 文件 ??====chgrp 用戶組 文件
示例:
[root@oldboyedu /oldboy]# chown oldboy test.sh ???==>>把文件用戶主歸屬改成oldboy
[root@oldboyedu /oldboy]# ls -l
total 4
---x--x--x 1 oldboy root 12 Oct ?7 22:16 test.sh
[root@oldboyedu /oldboy]# chown .incahome test.sh ?===>>把文件用戶組主歸屬改成incahome(加.)
[root@oldboyedu /oldboy]# ls -l
total 4
---x--x--x 1 oldboy incahome 12 Oct ?7 22:16 test.sh
Suid是屬主權限設定
Guid講述的是
粘滯位:后三位權限字符中有t就是粘滯位權限
本章重點
Linux基本九尾權限之文件和目錄權限