2021-05-12 14:32:11
Linux下如何臨時或永久禁用SELinux
Linux被認為是當今最安全的作業系統之一,這是因為其出色的安全實現功能,如SELinux(安全增強型Linux)。
對於初學者,SELinux被描述為在核心中執行的強制存取控制(MAC)安全結構。 SELinux提供了一種強制執行某些安全策略的方法,否則系統管理員無法有效實施這些策略。
當您安裝RHEL/CentOS或多個衍生產品時,預設情況下會啟用SELinux功能或服務,因為您的系統上的某些應用程式可能實際上不支援此安全機制。 因此,要使這些應用程式正常執行,您必須禁用或關閉SELinux。
在本操作指南中,我們將介紹您可以遵循的步驟,以檢查SELinux的狀態,並在CentOS/RHEL和Fedora中禁用SELinux,以防它啟用。
如何在Linux中禁用SELinux
首先要檢查系統上SELinux的狀態,您可以通過執行以下命令來執行此操作:
[linuxidc@localhost linuxidc.com]$ sestatus
返回結果如下:
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 31
接下來,繼續在系統上禁用SELinux,這可以暫時或永久完成,具體取決於您要實現的目標。
暫時禁用SELinux
要暫時禁用SELinux,請以root身份發出以下命令。
在 CentOS 6.7 及以前版本,執行下面的命令:
# echo 0 > /selinux/enforce
這樣就會暫時性的關閉 SELinux,使用命令重新開啟或者重起系統之後就會恢復。如果要重新開啟,只需要再執行下述命令:
# echo 1 > /selinux/enforce
或者,您可以使用setenforce工具,如下所示。
在 CentOS 7 中,可以執行,
# setenforce 0
來臨時將 SELinux 的模式(Mode)設定為 Permissive,就相當於讓它繼續處於執行狀態,監控和記錄資訊,但是不採取任何攔截動作,也就相當於臨時禁用 SELinux 了。但是重新啟動系統後就會恢復到原來的狀態。
還可以隨時將它恢復,或者臨時啟用,
# setenforce 1
上述命令是通過修改組態檔 /selinux/enforce 的內容為 ‘1’ 或者 ‘0’ 來啟用或者關閉 SELinux 服務的。
否則,使用Permissive選項而不是0,如下所示:
# setenforce Permissive
上述方法只能在下次重新啟動時使用,因此要永久禁用SELinux,請轉到下一部分。
永久禁用SELinux
要永久禁用SELinux,請使用您喜歡的文字編輯器開啟檔案 /etc/sysconfig/selinux,如下所示:
SELinux強制(SELinux Enforcing)模式
然後將指令SELinux=enforcing更改為SELinux=disabled,如下圖所示。
SELINUX=disabled
永久禁用SELinux
然後,儲存並退出檔案,要使更改生效,您需要重新啟動系統,然後使用sestatus命令檢查SELinux的狀態,如下所示:
[linuxidc@localhost linuxidc.com]$ sestatus
返回結果如下:
SELinux status: disabled
總之,我們通過簡單的步驟,您可以在CentOS/RHEL和Fedora上禁用SELinux。 在這個主題下好像也沒有什麼可討論的,但另外,了解有關SELinux的更多資訊對於那些有興趣探索Linux安全功能的人來說尤其有用。
相關文章