1案例1:啓用SELinux保護
1.1問題
本例要求爲虛擬機server0、desktop0配置SELinux:
- 確保SELinux處於強制啓用模式
- 在每次重新開機後,此設置必須仍然有效
1.2方案
SELinux,Security-Enhanced Linux:是由美國NSA國家安全局提供的一套基於內核的增強的強制安全保護機制,針對用戶、進程、文檔標記安全屬性並實現保護性限制。
SELinux安全體系直接集成在Linux內核中,包括三種運行模式:
- disabled:徹底禁用,內核在啓動時不加載SELinux安全體系
- enforcing:強制啓動,內核加載SELinux安全體系,並強制執行保護策略
- permissive:寬鬆模式,內核加載SELinux安全體系,只記錄不執行
執行getenforce可以查看當前所處的模式。
在disabled模式與enforcing、permissive模式之間切換時,需要重新啓動Linux系統;而在enforcing模式與permissive模式之間切換時,不需要重新啓動,可以直接執行setenforce 1|0操作。
1.3步驟
實現此案例需要按照如下步驟進行。
步驟一:調整當前的SELinux運行模式
1)查看當前模式
[root@server0 ~]# getenforce
Permissive //表示當前爲寬鬆模式
若上述操作顯示的結果爲disabled,表示SELinux機制已被禁用,只通過步驟修改固定配置後在重啓;若顯示的結果爲enforcing,表示已經處於強制啓用模式。
2)切換enforcing強制啓動模式
如果在操作1)中顯示的結果爲permissive,則執行以下操作切換爲強制啓用:
[root@server0 ~]# setenforce 1 //強制啓用
[root@server0 ~]# getenforce //確認切換結果
Enforcing
如果在操作1)中顯示的結果爲disabled,則無法使用setenforce命令:
[root@server0 ~]# setenforce 1 //強制啓用
[root@server0 ~]# getenforce //確認切換結果
Enforcing
步驟二:爲SELinux運行模式建立固定配置
1)修改配置文件/etc/selinux/config
[root@server0 ~]# vim /etc/selinux/config
SELINUX=enforcing
.. ..
2)重啓驗證結果
[root@server0 ~]# reboot
.. ..
[root@server0 ~]# getenforce
Enforcing