1. 程式人生 > >SELinux安全模型的核心思想與三種工作模式

SELinux安全模型的核心思想與三種工作模式

enforce 權限 永久 iss linux社區 ive con 生產 調試

什麽是SELinux?
在內核2.6版本之前Linux的安全模型叫DAC(Discretionary Access Contorl,即自主訪問控制)。
DAC的核心思想:進程想要訪問某資源,只需要擁有該資源對應用戶的權限(讀、寫、執行)即可以訪問,也就是說進程所擁有的權限與執行該進程的用戶的權限相同,只要執行進程的用戶擁有某資源的權限,該進程即可以訪問。比如:搞到了root權限,在Linux系統上就能幹任何事情。
SELinux是由美國國家安全局(NSA)對於強制訪問控制的實現,在Linux社區幫助下開發的一種訪問控制體系。核心思想:進程想要訪問某資源,除了需要擁有該資源對應的用戶權限因素之外,還需要判斷每一類進程是否擁有對某一類資源的訪問權限。
SELinux主要作用就是最大限度的減小系統中服務進程可訪問的資源(最小權限原則),SELinux的安全模型叫MAC(Mandatory Access Control,強制訪問控制)

SELinux的三種工作模式
SELinux的工作模式可以在/etc/selinux/config中配置。
1、 enforcing:強制模式,違反SELinux規則的行為將被阻止並記錄到日誌中。用“1”表示。
2、 permissive:寬容模式,當違反SELiunx的行為規則時,會發出警告並記錄到日誌中,但是不會被阻止,一般都是調試用。用“0”表示。
3、 disabled:關閉SELinux,不使用SELiunx
可以通過命令設定當前會話的SELinux工作模式,即臨時生效,想要永久生效必須寫進配置文件中:

setenforce [0|1]
getenforce查看SELinux的狀態。
企業生產環境中在做系統初始化的時候,就會選擇把SELinux關閉,因為SELinux中的規則非常復雜,如果開啟會使生產環境出現很多問題,維護成本高。

SELinux安全模型的核心思想與三種工作模式