文件權限管理–詳解

進程安全上下文

進程安全上下文:
    進程對文件訪問權限應用模型
    進程的屬主與文件的屬主是否相同,如果相同則運行屬主權限
    進程的屬主與文件的屬主不相同,對比屬組權限是否相同,相同則應用屬組權限
    進程的屬主既不是文件的屬主也不是同一屬組,則應用其他人權限

九個字段RWX-RWX-RWX
        前三個是屬主
        第二個是屬組
        第三個是其他人
        R:讀
        W:寫
        X:執行

自己理解的:進程是用戶的代理,代理用戶去訪問資源,繼承用戶的—所有者和所屬組。某用戶對文件或資源的訪問權限,只的是進程以uid和gid身份去訪問獲取資源。系統用進程的uid和gid對比資源的三類用戶(ugo)權限(rwx),實現權限分配管理。

對于文件
        R:可獲取文件的數據
        W:可修改文件的數據
        X可將此文件運行為進程,普通文件沒有執行權限
對于目錄:
        R:可使用ls命令獲取其下的所有文件列表,但是不包括詳細信息不能使用ls -l
        W:可以膝蓋此目錄下的文件列表,即創建刪除文件
        X:可以cd至此目錄中,可使用ls -l

八進制權限表示法:r=4 w=2 x=1

        --- 000 0
        --x 001 1
        -w- 010 2
        -wx 011 3
        r-- 100 4
        r-x 101 5
        rw- 110 6
        rwx 111 7

三位數字,每個數字分別表示相應的權限如:777,664,640,600,755,750,775

注意:

    ****用戶僅能修改屬主為自己的那些文件的權限

    ****只有root用戶能修改別人文件的權限
    ****只有root用戶能夠修改文件的屬主和屬組

Linux權限管理命令

修改文件權限:chmod

chmod [OPTION]... MODE[,MODE]... FILE...
chmod [OPTION]... OCTAL-MODE FILE...
chmod [OPTION]... --reference=RFILE FILE...

三種mode

修改權限(一)chmod [OPTION]... MODE[,MODE]... FILE...
    1、修改一類用戶的所有權限-------覆蓋修改權限
     u=
     g=
     o=
     ug=
     a=      代表所有用戶
     u=,g=

        等號后面是=rwx
        注修改權限,可以單一用戶的賦權,如果兩類用戶一樣權限一樣也可一起賦權。等號后面為空,是取消該用戶的所有權限。---------覆蓋式授權
        等號=后面的值可以是wrx中任意幾位或空
    2、修改一類用戶某位或某些位權限------------追加權限
     u+
     u-
    注:可以針對單一用戶的三種權限中的一位進行添加或刪除,三類用戶都需要添加或刪除同一權限可用寫在一起 ug+wr或u+wr,g+wr


修改權限(二)2、chmod [OPTION]... OCTAL-MODE FILE...
                chmod 576 file


修改權限(三)chmod [OPTION]... --reference=RFILE FILE...
    參考RFILE文件的權限,將FILE的修改為同RFILE;


[option] 常用選項為-r遞歸改變文件權限

修改文件權限:install

install - copy files and set attributes
            復制并設置文件屬性、

    install [OPTION]... [-T] SOURCE DEST      單源復制
    install [OPTION]... SOURCE... DIRECTORY   多源復制
    install [OPTION]... -t DIRECTORY SOURCE...多源復制
    install [OPTION]... -d DIRECTORY..        創建目錄

[常用選項]
        -m --mode=MODE      設定文件的權限
        -o --owern=USERNAME 設定文件的屬主
        -g --group=USERNAME 設定文件的屬組
        -d                  創建權限

修改文件的屬主和屬組:

    chown [OPTION]... [OWNER][:[GROUP]] FILE...
            用法:
                OWNER ---------------修改屬主
                OWNER:GROUP----------修改屬主和屬組
                :GROUP---------------僅修改屬組
                注: 命令中的冒號可用.替換;
            -R: 遞歸

    chown [OPTION]... --reference=RFILE FILE...
        參考文件的屬主和屬組更改目標文件的屬主和屬組

    修改文件的屬組:chgrp
        chgrp [OPTION]... GROUP FILE...
        chgrp [OPTION]... --reference=RFILE FILE...
        -R

umask

文件或目錄創建時的遮罩碼:umask

    從目錄或文件上屏蔽掉最大權限相應位,從而得出默認的權限。

    文件: 666-umask

        666-umask結果中出現奇數的加1,偶數的不變,-1為0。

    目錄: 777-umask   

    umask: 查看

    umask #: 設定

    umask ug=rwx 0=    表示希望新建文件的全顯示就是ug=rwx g=

    umask–S 模式方式顯示
    [user2@localhost /]$ umask -S
    u=rwx,g=rwx,o=rx

    umask–p 輸出可被調用
    umask 234

    全局設置:/etc/bashrc
    用戶設置:~/.bashrc

    Linux上的一般文件通常是不需要執行權限的,一般文件有執行權限容易給系統帶來安全風險。
    修改umask只對當前shell有效

linux系統上的特殊權限

    SUID:
        默認情況下,用戶發起的進程,進程的屬主不是其發起者;因此是不是以其發起者的身份運行,                                                
        而是以文件自己的屬主身份運行。

        SUID的功能:用戶運行某程序時,如果此程序擁有SUID的權限,程序以其屬主身份運行
        passwd命令具有SUID
        一般情況下,不建議給程序設置SUID,風險較大。
        有執行權限的為小寫的s
        沒有執行權限的為大寫S

        chmod 設置SUID
            chmod u+/-s file
            chmod 4777 file
SGID:

    1、作用于目錄
    一般用戶創建目錄時應用此權限的目錄,其他用戶在此目錄下創建文件的屬組為SGID組。不是用戶的主組

    2、作用在二進制文件,還是以進程發起者的身份運行。只是該進程繼承了該程序屬組的權限。
        該程序,訪問文件時,所有者不匹配,開始匹配所屬組。匹配的是進程的屬組,而不是進程發起者的基本組。

    chmod設置SGID
            chmodg +s DIR...
            chmodg -s DIR...

STICKY
    功能:對于屬組或全局可寫的目錄組內的所有用戶或系統上的所有用戶在此目錄中都能創建新文件或刪除文件;如果為此類目錄設置sticky權限,則每個用戶能創建文件,且只能刪除自己的文件。
    chmod設置STICKY
        chmod o+t DIR...
        chmod o-t DIR...
    如果其他用戶原本有執行權限則是小寫t
    否則是大寫T
    系統上的/tmp和/var/tmp均有STICKY權限


管理特殊權限的另一種方式
        000    0
        001    1
        010    2
        011    3
        100    4
        101    5
        110    6
        111    7
        chmod  1755
       
       

----------


根據個人理解制作了導圖,如有錯誤請指正。

文件權限模型.jpg特殊權限.jpg

原創文章,作者:yyw,如若轉載,請注明出處:http://www.www58058.com/28860

(0)
yywyyw
上一篇 2016-08-04 21:40
下一篇 2016-08-04 21:45

相關推薦

  • MySQL應用管理

    這篇文章主要講述基本的SQL語句,以供新手參考使用,不過最好的辦法還是查閱官方文檔和help命令。 進入正題 什么是SQL?        SQL結構化查詢語言,是關系型數據庫查詢和管理語言,是一種數據庫查詢和程序設計語言,用于存取數據以及查詢,更新和管理關系型數據庫系統。 SQL的分類 &nbsp…

    Linux干貨 2015-09-23
  • 第三次 練習

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 ~]# who | cut -d "" -f1 |uniq root     pts/0        2016-11-13 12:17 (172.16.220.14) 2、取出最后登錄到…

    Linux干貨 2016-11-16
  • bash特性

    一、命令歷史     概念:shell進程能夠將之前執行過的命令保存記錄下來     存儲位置:         1、命令歷史的文件             使用以下環境變量查看相關參數:     &…

    Linux干貨 2016-09-19
  • Linux基礎學習總結(二)

    一、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 常用基礎命令:cd、pwd、mkdir、touch 查看:cat,more,less,tail,head,tac 復制:cp 移動:mv 刪除:rm 創建:touch 元數據屬性:stat 查看內容類型:file 二、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及…

    Linux干貨 2016-09-24
  • 用戶,組和權限管理 基礎命令整理

    安全3A任何一個安全策略都應該有Authentication(認證)、Authentication(授權)、Accouting|Audition(審計)這三個措施。 用戶(User)Linux用戶是安全3A中的Authentication(認證)措施。用戶在登錄時,系統會檢查用戶輸入的用戶名和密碼。如果用戶輸入的用戶名和密碼匹配,會根據用戶信息給用戶分配一個…

    Linux干貨 2017-03-16
  • 網絡管理3

    一、知識整理 1、跨網絡通信:路由 路由的分類:主機路由;網絡路由;默認路由。 將主機接入網絡,需要配置網絡相關設置。一般包括如下內容:主機名;IP/MASK;路由:默認網關;DNS服務器:主、次、第三DNS服務器。 2、網絡配置文件:IP、MASK、GW、DNS相關配置文件 /etc/sysconfig/network-scripts/ifcfg-IFAC…

    Linux干貨 2016-09-13

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-05 11:21

    對命令的總結很詳細,如果能對特殊權限的應用場景有一些模擬會讓你對各個權限理解會更深刻哦。

欧美性久久久久