CentOS7 中關於 SElinux 的設置說明

有些博客上面說的是 setenforce 0 表示臨時關閉,但是我發現我這邊 0 表示 Permissive , 並不是 disable。本文來記錄下正確的操作。已經有很多博客對 SElinux 有很深的說明了,在下面的文章中就只是對 SELinux 操作的詳細說明,對於 SELinux 簡介就概述下。

SELinux 簡介

SELinux(Security-Enhanced Linux) 是美國國家安全局(NSA)對於強制訪問控制的實現,是 Linux歷史上最傑出的新安全子系統。NSA是在Linux社區的幫助下開發了一種訪問控制體系,在這種訪問控制體系的限制下,進程只能訪問那些在他的任務中所需要文件。SELinux 默認安裝在 Fedora 和 Red Hat Enterprise Linux 上,也可以作爲其他發行版上容易安裝的包得到。

SELinux 模式

  • enforcing:強制模式;代表SELinux運作中,違反 SELinux 規則的行爲將被阻止並記錄到日誌中。用 “1” 表示。
  • permissive:寬容模式(也有人說是警告模式);代表SELinux運作中,當違反SELiunx的行爲規則時,會發出警告並記錄到日誌中,但是不會被阻止,一般都是調試用。用“0”表示。
  • disabled:關閉模式。

SELinux 命令

切換狀態使用 setenforce 命令,下圖中可以看到 Enforcing 值爲 1, Permissive 值爲 0

## 查看對應的值
setenforce

## 設置爲 強制模式
setenforce 1

 查看當前的 SELinux 狀態

getenforce

SELinux 配置文件

當我們需要永久關閉 SELinux 的時候,需要修改配置文件,將 SELINUX 設置爲 disable,然後重啓 linux 系統,配置如下圖:

vi /etc/selinux/config

特別說明

 如果由 enforcing 或 permissive 改成 disabled ,或由 disabled 改成其他兩個,也必須要重新啓動。這是因爲 SELinux 是整合到核心裏面去的, 你只可以在 SELinux 運作下切換成爲強制 (enforcing) 或寬容 (permissive) 模式,不能夠直接關閉 SELinux 的! 

同時,由 SELinux 關閉 (disable) 的狀態到開啓的狀態(enforcing )也需要重新開機!所以,如果剛剛你發現 getenforce 出現 disabled 時, 請到上述文件修改成爲 enforcing 吧!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章