Ubuntu 本身并不原生支持 SELinux,而是使用 AppArmor 作為其默認的安全模塊。AppArmor 和 SELinux 都是 Linux 內核的安全模塊,用于限制進程對系統資源的訪問,但它們的設計哲學和實現方式有所不同。AppArmor 更像是一個嚴格的訪問控制管理器,它通過定義詳細的策略來限制進程的行為,而 SELinux 則采用了基于角色的訪問控制模型。
盡管 Ubuntu 不使用 SELinux,但如果你在 Ubuntu 系統上需要應用類似的安全策略,你可以考慮使用 AppArmor。以下是在 Ubuntu 上配置和使用 AppArmor 的基本步驟:
AppArmor 通常在 Ubuntu 中默認啟用。你可以通過以下命令檢查其狀態:
sudo aa-status
如果 AppArmor 未啟用,你可以使用以下命令啟用它:
sudo systemctl enable apparmor
sudo systemctl start apparmor
AppArmor 使用策略文件來定義安全規則。這些策略文件通常位于 /etc/apparmor.d/
目錄下。你可以通過編輯這些文件來添加或修改規則。
例如,要允許 Apache Web 服務器寫入特定目錄,你可以編輯 /etc/apparmor.d/usr.sbin.apache2
文件,添加如下內容:
/var/www/html/ r,
/var/www/html/** w,
在修改策略文件后,你需要重新加載策略以使更改生效:
sudo apparmor_parser -r /etc/apparmor.d/usr.sbin.apache2
AppArmor 會記錄其活動日志,你可以通過以下命令查看:
sudo cat /var/log/syslog | grep apparmor
或者,使用 audit2why
和 sealert
工具來分析日志并獲取解決方案建議。