首頁 >運維 >linux運維 >SELinux有什麼用

SELinux有什麼用

青灯夜游
青灯夜游原創
2023-02-10 11:30:483613瀏覽

SELinux主要功能是最大限度地減少系統中服務進程可存取的資源(最小權限原則),最大程式上限制了Linux系統中的惡意程式碼活動。 SELinux是部署在Linux系統中的安全增強功能模組,它透過對進程和檔案資源採用MAC(強制存取控制方式)為Linux系統提供了改進的安全性。

SELinux有什麼用

本教學操作環境:linux7.3系統、Dell G3電腦。

SELinux是什麼

安全增強Linux(Security-Enhanced Linux)簡稱SELinux,它是一個Linux 核心模組,也是Linux 的一個安全子系統。

SELinux 主要由美國國家安全局開發。 2.6 以上版本的 Linux 核心都已經整合了 SELinux 模組。

SELinux 的結構及配置非常複雜,而且有大量概念性的東西,要學精難度較大。很多 Linux 系統管理員嫌麻煩都把 SELinux 關閉了。

SELinux有什麼用

SELinux 主要作用是最大限度地減少系統中服務進程可存取的資源(最小權限原則) 。

我們知道,傳統的Linux 系統安全,採用的是DAC(自主存取控制方式),而SELinux 是部署在Linux 系統中的安全增強功能模組,它透過對進程和檔案資源採用MAC(強制存取控制方式)為Linux 系統提供了改進的安全性。

要注意的是,SELinux 的MAC 並不會完全取代DAC,恰恰相反,對於Linux 系統安全性來說,它是一個額外的安全層,換句話說,當使用SELinux 時,DAC 仍然被使用,且會先被使用,如果允許訪問,再使用SELinux 策略;反之,如果DAC 規則拒絕訪問,則根本無需使用SELinux 策略。

例如,若使用者嘗試對沒有執行權限(rw-)的檔案進行執行操作,那麼傳統的 DAC 規則就會拒絕使用者訪問,因此,也就無需再使用 SELinux 策略。

相比傳統的Linux DAC 安全控制方式,SELinux 具有諸多好處,比如說:

  • 它使用的是MAC 控制方式,這被認為是最強的存取控制方式;

  • 它賦予了主體(使用者或流程)最小的存取特權,這也意味著,每個主體僅被賦予了完成相關任務所必須的一組有限的權限。透過賦予最小存取特權,可以防止主體對其他使用者或進程產生不利的影響;

  • SELinux 管理過程中,每個進程都有自己的運行區域(稱為域) ,各進程僅運行在自己的網域內,無法存取其他進程和文件,除非被授予了特殊權限。

  • SELinux 可以調整到 Permissive 模式,此模式允許查看在系統上執行 SELinux 後所產生的印象。在 Permissive 模式中,SELinux 仍然會記錄它所認為的安全漏洞,但不會阻止它們。

其實,想要了解 SELinux 的優點,最直接的辦法就是查看當 Linux 系統上沒有執行 SELinux 時會發生什麼事。

例如,Web 伺服器守護程式(httd)正在監聽某一連接埠上所發生的事情,而後進來了一個要求查看主頁的來自 Web 瀏覽器的簡單請求。由於不會受到SELinux 的約束,httpd 守護程式聽到請求後,可以完成以下事情:

  • 根據相關的擁有者和所屬群組的rwx權限,可以存取任何檔案或目錄;

  • 完成存在安全隱患的活動,例如允許上傳檔案或更改系統顯示;

  • 可以監聽任何連接埠的傳入請求。

但在一個受 SELinux 約束的系統上,httpd 守護程式受到了更嚴格的控制。仍然使用上面的範例,httped僅能監聽 SELinux 允許其監聽的連接埠。 SELinux 還可以防止 httpd 存取任何沒有正確設定安全上下文的文件,並拒絕沒有再 SELinux 中明確啟用的不安全活動。

因此,從本質上講,S​​ELinux 最大程式上限制了 Linux 系統中的惡意程式碼活動。

相關推薦:《Linux影片教學

以上是SELinux有什麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn