潘談
摘 要:windows、unix、linux是當今三大主流操作系統,近幾年linux的發展日漸迅速,無論是在網絡服務器方面還是在嵌入式方面,linux占有的比例都前所未有的迅速增長。本文從linux系統的安全角度出發,通過shell命令對linux的文件權限管理的研究,闡述了系統管理人員和開發人員應注意對文件權限的設置,防止文件和數據被破壞。
關鍵詞:文件權限管理;shell命令;安全
1 引言
Linux是一套免費使用和自由傳播的類Unix操作系統,是一個新潮,非常穩定,多用戶多任務的的操作系統。。Linux可安裝在各種計算機硬件設備中,比如手機、平板電腦、路由器、視頻游戲控制臺、臺式計算機、大型機和超級計算機。用戶使用Linux操作系統的其中一個重要原因就是它強大的安全性,Linux采取了許多安全技術措施,包括對文件讀、寫控制、帶保護的子系統、審計跟蹤、核心授權等,其中對文件的權限管理是linux系統的一個精髓所在,因為linux是一個以文件為基礎的操作系統,在網絡環境中為了防止信息的非法訪問,對文件進行權限管理是一個重要手段。權限管理的作用就是限制指定范圍用戶對指定文件夾或文件的操作。本文主要通過shell命令對linux的文件權限管理進行了研究,闡述了系統管理人員和開發人員應注意對文件權限的設置,防止文件和數據被破壞。
2 文件或目錄的權限概述
2.1 權限類型
Linux中,每一個文件都具有特定的屬性,主要包括文件類型和文件權限兩個方面。文件分為5種類型:普通文件(-)、目錄文件(d)、鏈接文件(l)、設備文件(b/c)和管道文件(p)。而所謂的文件權限,是指對文件的訪問權限,在linux中的每一個文件或目錄都包含有訪問權限,這些訪問權限決定了誰能訪問和如何訪問這些文件和目錄。文件的訪問權限包括三種類型:讀(r)、寫(w)、執行(x)。
2.2 訪問文件或目錄的用戶類型
Linux 是一個多用戶操作系統,它允許多個用戶同時登錄和工作,允許用戶控制文件或目錄的訪問者和訪問方式,因此 Linux 將文件或目錄與用戶或組聯系起來。Linux給訪問文件或目錄的用戶分成了三類不同級別的用戶,分別是:文件的擁有人(u)、文件的擁有組(g)和其他人(o)。
2.3 查看權限
可以使用ls -l命令來查看文件或目錄的權限問題,在顯示的數據的第一個字段中顯示了文件test1的訪問權限。第一個字段由10個字符組成,第一位表示文件類型,2-4位表示文件所有者的權限;5-7位表示文件所有者所屬組成員的權限;8-10位表示所有者所屬組之外的用戶的權限。
3 文件權限的設置
由于Linux是一個多用戶操作系統并且有些文件是共享的,可以由多人瀏覽和編輯,文件權限設置尤其重要,有的用戶會希望將某些文件對所有人公開,有的用戶希望只有少數人可以修改這些文件等等,那么我們可以通過shell命令對文件或目錄進行權限設置。
3.1 使用chmod命令改變文件或目錄的訪問權限
格式:chmod模式文件或目錄名
① 模式為文本形式
用4個字母表示不同的用戶:u,g,o,a。
用3個字符表示權限:r,W,X。
最后指名是增加(+)還是減少權限(-),或是絕對權限(=)。
②用數字表示法修改權限
所謂數字表示法,是指將r、w和x分別用4、2、1來代表,沒有授予權限的則為0,然后把權限相加。例如:將文件test的權限修改為所有者和組成員具有讀寫的權限,其他人只有讀權限:chmod 664 test1
3.2 使用命令chown改變文件或目錄的所有者
如果要改變文件所有權,可以使用chown命令。chown命令能更改一個或多個文件的用戶所有者,所以只有root用戶才能使用。
格式為:chown new-owner files
new-owner是制定文件的新所有者的名字。例如將文件test的所有者改為用戶natasha,只需要執行命令:# chown natasha test。大多數系統中,只有超級用戶root可以運行chown命令。
3.3 特殊權限設置
除了讀寫執行權限以外,ext2文件系統還支持強制位與冒險位的特別權限。在可執行文件上,用戶可以添加set uid和set gid。默認情況下,用戶執行一個指令,會以該用戶的身份來運行進程。
默認情況下,如果一個目錄上有w和x權限,則任何人可以在此目錄中建立與刪除文件。一旦目錄上設置了冒險位,則表示在此目錄中,只有文件的擁有者、目錄的擁有者與系統管理員可以刪除文件。
3.4 利用多重讀取控制清單設置權限
MACL用于對普通權限的補充,使其他用戶或組,具有文件或目錄真實擁有者的身份去操作文件或目錄。訪問控制列表為計算機提供更好的訪問控制,它的作用是限制包括root用戶在內的所有用戶對文件、資源的訪問。
4 結束語
文件權限是防止系統或數據被惡意破壞的途徑之一,linux系統內置了完善的文件權限管理體系,系統管理人員和軟件開發人員應從安全角度考慮,重視文件權限的設置,從而保障數據的安全。
[參考文獻]
[1]梁廣民.linux操作系統實用教程.西安電子科技大學出版社.2004.2.
[2]王秀平.linux系統管理與維護.北京大學出版社.2010.5.