特殊權限

若是無緣再見,白堤柳簾垂淚好幾遍;若是有緣再見,斷橋殘雪沉默了語言。

  • 搜狗截圖20180415224343
  • SUID:需要作用在二進制可執行文件上才有意義,以往某用戶在運行某個程序時比如cat,cat進程的權限會是啟動用戶的權限,這個進程的屬主就是啟動用戶;而有SUID后的程序,用戶在運行某程序時,相應進程的屬主是程序文件自身的屬主,而不是啟動者。比如/usr/bin/passwd,每個用戶都可以修改自己的密碼,將密碼寫入shadow
  • ?圖片1
    • 設置SUID:chmod u+|-?s FILE,如果FILE原本有x權限,則SUID顯示為s,否則顯示為S,本來SUID就是要作用在二進制文件上,如果是S就失去了意義
    • 例:cat有了SUID后,用其他用戶來啟動cat 就能訪問shadow了
    • 圖片1
  • SGID:當目錄屬組有寫權限,且有SGID權限時,當有些用戶的附加組也為該目錄的屬組時,他們以屬組身份在此目錄中新建文件或目錄時,新文件的屬組不是用戶的基本組,而是此目錄的屬組,因此他們所創建的文件彼此都可以修改。如果直接上其他人有寫權限也必然可以是他們可以彼此修改文件,但是這樣做是非常危險的操作。而作為普通用戶來講,怎么將自己的文件共享給別人,讓別人來寫,普通用戶又不能修改屬主屬組,只能修改權限,所以需要使用SGID機制
    • SGID:作用于二進制文件上,執行二進制文件的用戶會繼承二進制文件所屬組的權限去訪問文件;作用于目錄,目錄內新建文件的所屬組自動繼承目錄的所屬組
    • 設置SGID:chmod g+|-?s DIRECTORY
    • 例:有一個開發團隊develop team,團隊里有三個人hadoop,hbase,hive,要求他們任意一人在/tmp/project里所創建的文件,其他的兩個人都能編輯訪問
    • 圖片1
    • 已經在該目錄中的用戶,root在改了目錄的寫權限后,該用戶依然不能在目錄中創建文件,需要退出目錄后重新進才能創建文件
    • 圖片1
    • 注意:用戶所創建的文件,文件的所屬組是用戶的基本組,但基本組未必有寫權限
    • 圖片1
    • 讓其有SGID權限
    • 圖片1
    • 再創建文件,文件不再以用戶的基本組作為屬組,而是以目錄的屬組作為屬組
    • 圖片1
    • 但是hadoop用戶能刪掉hbase用戶的文件,為了避免這種情況發生就需要Sticky
    • 圖片1
  • Sticky:用戶在一個具有寫權限的目錄里,可以刪除該目錄中的任何文件,無論這些文件的權限位如何設置。Sticky的意義在于,若在一個公共目錄上設置Sticky 位,每個人都可以創建文件,刪除自己的文件,但不能刪除別人的文件。sticky 設置在文件上無意義
    • 設置Sticky:chmod o+|- t DIRECTORY,如果是T表示Sticky位沒有x權限失去意義
    • 圖片1
    • 特殊權限位用數字表示:( SUID:4 SGID:2 Sticky:1 )
      • chmod 5755 /tmp/test :最前的數字5表示SUID+Sticky,然后這個目錄的普通權限位是755

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/96241

(0)
DPingDPing
上一篇 2018-04-15 22:39
下一篇 2018-04-16 08:53

相關推薦

  • 進程和計劃任務

    進程(Process)是計算機中的程序關于某數據集合上的一次運行活動,是系統進行資源分配和調度的基本單位,是操作系統結構的基礎。 進程的狀態:運行態running,就緒態ready,睡眠態(可中斷,不可中斷),停止態,僵死態。 進程管理工具 ps命令 ps aux #顯示詳細的當前運行的所有進程 ps axo pid, cmd,%cpu,tty,%mem k…

    Linux筆記 2018-05-05
  • 配置主機與主機通訊可以經過路由器的操作。

    配置主機A與主機B相互通訊,中間經過兩個路由器還能正常通訊的基本操作。

    2018-05-06
  • Linux用戶和組

    我們知道Linux是一個多用戶多任務的操作系統,任何一個要使用系統資源的用戶,都必須首先向系統管理員申請一個賬號,然后以這個賬號的身份進入系統。由于是多用戶操作系統,必然要涉及到時管理用戶。由于用戶訪問Linux上的資源比較多,為了方便管理出現的組的概念.將多個用戶添加到一個組里,方便管理。 介紹安全3A 資源分派: Authentication:認證 Au…

    Linux筆記 2018-04-08
  • centos7源碼編譯實現LAMP

    centos7源碼編譯實現LAMP 基于php-fpm

    2018-06-24
  • sed作業

    編程基礎 程序:指令+數據程序編程風格:過程式:以指令為中心,數據服務于指令對象式:以數據為中心,指令服務于數據shell程序:提供了編程能力,解釋執行 程序的執行方式 計算機:運行二進制指令編程語言:低級:匯編高級:編譯:高級語言–>編譯器–>目標代碼?java,C#解釋:高級語言–>解釋器&#8211…

    2018-04-15
  • CentOS系統Shell編程語言基礎之Bash的基礎特性

    bash的基礎特性之命令歷史: 命令歷史:shell進程會在其會話中保存此前用戶提交執行過的命令~]#history定制history的功能,可通過環境變量實現HISTSIZE:shell進程可保留的命令歷史的條數HISTFILE:持久保存命令歷史的文件, “.bash_history”HISTFILESIZE:命令歷史文件的大小 命令用法: history…

    Linux筆記 2018-06-27
欧美性久久久久