成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一篇文章了解Linux操作系統(tǒng)的權(quán)限管理

系統(tǒng) Linux
我們在Linux系統(tǒng)下面部署一些軟件的時候,總是習(xí)慣性的將SELinux關(guān)閉。很多人用了幾年Linux操作系統(tǒng)了,知道SELinux是安全相關(guān)的,卻說不出更多細(xì)節(jié)來。您知道SELinux具體是做什么的嗎?

 我們在Linux系統(tǒng)下面部署一些軟件的時候,總是習(xí)慣性的將SELinux關(guān)閉。很多人用了幾年Linux操作系統(tǒng)了,知道SELinux是安全相關(guān)的,卻說不出更多細(xì)節(jié)來。您知道SELinux具體是做什么的嗎?

[[283497]]

Linux操作系統(tǒng)是一個多用戶操作系統(tǒng),這樣就存在資源共享與隔離的問題。也就是說用戶A的資源不愿意讓用戶B訪問,用戶C的資源與用戶D的資源可以共享;同時,又存在超級用戶訪問所有用戶資源的可能性。因此在Linux操作系統(tǒng)下就需要一套權(quán)限管理的功能。

Linux原生的權(quán)限管理機制是基于用戶角色的管理機制,也就是UGO+RWX/ACL權(quán)限控制。其中UGO是User、Group和Other的簡稱;RWX則是Read、Write和eXecute的簡稱;ACL是Access Control List的簡稱。Linux原生的訪問控制稱為自主訪問控制。

 

自主訪問控制(Discretionary Access Control, DAC)是指對象(比如程序、文件、進程)的擁有者可以任意修改或者授予此對象相應(yīng)的權(quán)限。這里的擁有者就是指具體的用戶,也就是角色(例如root)。這種控制方式的問題在于黑客入侵后可以以該用戶的角色執(zhí)行任何允許的操作。

另外一種訪問控制策略是基于標(biāo)簽的訪問控制。比如我們給程序和其訪問的資源打上標(biāo)簽,這樣程序就可以訪問有標(biāo)簽的資源,對于沒有標(biāo)簽的資源則不能訪問。這種模式并非基于用戶,而是基于許可。這種策略被稱作強制訪問控制(Mandatory Access Control ,簡稱MAC)。其中SELinux就是強制訪問控制。

一、RWX訪問控制概述

RWX訪問控制恐怕是我們見得最多的訪問控制了。當(dāng)我們通過ls命令獲取文件的詳細(xì)信息時,其前面的rwx字符串就是對文件權(quán)限的標(biāo)示,而后面跟的root root則是其所屬用戶和組的信息。如圖1就是RWX的一個實例。

 

RWX的組成及含義如圖2所示。整個權(quán)限描述分為4段,第一段用于描述該文件的類型,可以是常規(guī)文件(-)、目錄(d)、塊設(shè)備(b)、鏈接(l)和字符設(shè)備(c)等等。

 

后面三段是文件具體的權(quán)限描述信息了,分別是文件主權(quán)限、組用戶權(quán)限和其它用戶的權(quán)限。通過上述三段的組合就可以實現(xiàn)比較復(fù)雜的權(quán)限控制。比如允許某個用戶的文件可以被其它用戶讀,但是不可以改寫和執(zhí)行等等。

上述權(quán)限控制信息中包含rwx-四種字符,具體含義如下:

  1. r表示對于該用戶可讀,對于文件來說是允許讀取內(nèi)容,對于目錄來說是允許讀取其中的文件;
  2. w表示對于該用戶可寫,對于文件來說是允許修改其內(nèi)容,對于目錄來說可以寫信息到目錄中,即可以創(chuàng)建、刪除文件、移動文件等操作。
  3. x表示對于該用戶可執(zhí)行,對于文件來說就是可以執(zhí)行該文件,對于目錄來說則是可以進入目錄;可以搜索(能用該目錄名稱作為路徑名去訪問它所包含的文件和子目錄)

從用戶角度來說文件的權(quán)限是通過rwx字符串表示的,其實在底層實現(xiàn)就是一些標(biāo)示位。如果該位置1則表示有該權(quán)限,否則沒有該權(quán)限。這些信息保持在文件的inode信息中。

 

上圖中的宏定義就是Linux內(nèi)核中對文件權(quán)限屬性的宏定義,例如S_IRUSR表示主權(quán)限可讀的標(biāo)示。這里需要理解的是每個標(biāo)示占用一個位,本文暫時不過多介紹,這里先有個概念就可以了。

我們經(jīng)常使用的chmod和chown等命令就是用來修改文件的訪問權(quán)限信息的。其中chmod用于修改文件權(quán)限熟悉,而chown則用于修改文件所屬的用戶和組。

例如我們想讓文件b具有執(zhí)行權(quán)限,那么可以執(zhí)行如下命令:

  1. sudo chmod +x b 

執(zhí)行后結(jié)果如圖4所示,可以對比圖中上下兩部分,看到文件b的權(quán)限熟悉發(fā)生了變化。其中增加了可執(zhí)行屬性。

 

由于底層是二進制的方式存儲的,chmod也是支持通過數(shù)字的方式修改其權(quán)限屬性的。比如執(zhí)行如下命令:

  1. sudo chmod 777 b 

由于777其實就是使所有的RWX為1,也即可以被任何用戶和組訪問。執(zhí)行效果如下。

 

關(guān)于RWX的權(quán)限訪問控制就先介紹到這里,后續(xù)我們在詳細(xì)介紹,并且介紹在內(nèi)核中是如何實現(xiàn)的。

二、SELinux訪問控制概述

SELinux是另外一種訪問控制機制,它并非通過角色,而是通過標(biāo)簽的方式實現(xiàn)對主體與被訪問對象的控制。這句話可能不太容易理解,比如對于Apache進程想訪問某個目錄下的文件,那么需要對Apache進程和該目錄都打上標(biāo)簽,并且標(biāo)注其可訪問性。這樣Apache進程才可以訪問該目錄。

文章《Linux下SELinux卡通圖解,豁然開悟》通過卡通的方式介紹了該機制的原理,非常形象生動。如果對上文的解釋還是稀里糊涂,那么推薦看看這篇文章。

SELinux通常并非默認(rèn)打開的,如果使用該特性需要我們手動打開。當(dāng)然,SELinux已經(jīng)為我們做了很多事情了,通常情況下打開后就可以使用,并不需要我們做更多的事情。如果想實時打開SELinux,直接執(zhí)行如下命令即可。

  1. setenforce 1 

但如果想永久生效,則需要修改SELinux的配置文件。修改起來也非常簡單,只需要修改圖中紅色方框一行的內(nèi)容即可。

 

上圖中,將disabled修改為enforcing就可以使SELinux永久生效(需重啟系統(tǒng))。另外一個參數(shù)是permissive,該參數(shù)的含義是只記錄日志,不進行實際的控制。

最下面一行參數(shù)表示該SELinux使用的規(guī)則庫。SELinux默認(rèn)定義了很多規(guī)則庫,所以通常情況下,我們只需要開啟就可以了。但是有時候也并非如此,此時就需要根據(jù)情況定義自己的規(guī)則(策略,policy)。

SELinux的原理也是比較簡單的,其核心是規(guī)則庫(Policy Database)。當(dāng)有進程訪問資源(例如文件,或者套接字)時,內(nèi)核中的接口中會通過規(guī)則庫中的數(shù)據(jù)進行匹配,如果滿足要求,則放行;否則阻止訪問,并記錄審計日志。

 

責(zé)任編輯:武曉燕 來源: itworld123
相關(guān)推薦

2019-11-07 11:08:16

Linux操作系統(tǒng)目錄

2020-10-09 08:15:11

JsBridge

2023-05-12 08:19:12

Netty程序框架

2021-06-30 00:20:12

Hangfire.NET平臺

2020-12-29 09:05:48

基礎(chǔ)DjangoORM

2021-01-05 09:07:30

Django ORMF查詢Q查詢

2021-01-01 09:20:20

操作DjangoORM

2020-11-10 10:48:10

JavaScript屬性對象

2019-01-09 10:04:16

2021-06-04 09:56:01

JavaScript 前端switch

2021-01-29 18:41:16

JavaScript函數(shù)語法

2021-02-02 18:39:05

JavaScript

2023-09-06 14:57:46

JavaScript編程語言

2020-12-08 08:09:49

SVG圖標(biāo)Web

2021-05-18 08:30:42

JavaScript 前端JavaScript時

2021-06-24 09:05:08

JavaScript日期前端

2021-09-27 09:18:30

ListIterato接口方法

2021-01-26 23:46:32

JavaScript數(shù)據(jù)結(jié)構(gòu)前端

2021-03-05 18:04:15

JavaScript循環(huán)代碼

2021-03-09 14:04:01

JavaScriptCookie數(shù)據(jù)
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 成人区精品 | 女同久久另类99精品国产 | 国产成人精品一区二区三区在线 | 午夜影院黄 | 最新黄色毛片 | 国产精品久久7777777 | 免费国产一区 | 国产欧美日韩一区二区三区在线观看 | 视频一区在线 | 国产美女精品视频 | 午夜影视大全 | 一区二区三区四区电影视频在线观看 | 99精品视频一区二区三区 | h片在线观看免费 | 亚洲黄色网址视频 | 国产99精品 | 国产精品久久久 | 日韩在线一区二区三区 | 亚洲综合大片69999 | 欧美精品综合 | 久久大陆| 视频在线日韩 | 国产精品一区二区三区久久 | 国产一区2区 | 国产高清一区二区 | 午夜精品一区二区三区在线播放 | 9999久久 | 天天色av| 密室大逃脱第六季大神版在线观看 | 精品一区二区三区在线观看 | 中文字幕1区 | 涩涩鲁亚洲精品一区二区 | 亚洲一区中文字幕 | 在线午夜电影 | 日日摸夜夜添夜夜添精品视频 | 国产精品免费一区二区三区四区 | 酒色成人网 | 欧美高清视频 | 男人天堂色 | 日韩在线视频免费观看 | 精品久久久久国产 |