RockyLinux9
•
•
By SystemArch_Alex
Rocky Linux 9 基礎教學 (06):SELinux 從入門到不放棄
理解強制存取控制 (MAC)
許多工程師在遇到權限問題時,直覺會關閉 SELinux,但在生產環境中,這會留下巨大的安全隱患。Rocky Linux 9 預設啟用 SELinux,學會管理它才是專業的表現。
1. 檢查與切換模式
查看目前的運行狀態:
sestatus
若需暫時切換到 Permissive 模式(僅記錄不攔截)進行除錯:
sudo setenforce 0
2. 管理檔案安全內容 (Context)
當你更改網頁根目錄時,必須修正其 Context,否則 Nginx 會出現 403 Forbidden:
# 查看檔案的 SELinux 標籤
ls -Z /var/www/html
# 修改特定目錄的預設標籤
sudo semanage fcontext -a -t httpd_sys_content_t "/web(/.*)?"
# 恢復標籤使其生效
sudo restorecon -Rv /web
3. 布林值 (Booleans) 控制
有些服務的功能需要手動開啟,例如允許 httpd 傳送郵件:
sudo getsebool -a | grep httpd
sudo setsebool -P httpd_can_sendmail on
學會使用 semanage 與 restorecon,你就能在不關閉安全防護的情況下讓服務順利運行。