Linux

從 Solaris 伺服器掛載的文件的 SELinux 上下文

  • August 16, 2016

RHEL 6由於 SELinux,我試圖執行的東西失敗了。使用 .暫時可以輕鬆解決問題setenforce 0。但是,在我的情況下,完全關閉 SELinux 不是一個選擇。

問題是這些文件是從舊的 Solaris 機器上掛載的,並且載入的所有內容的上下文都是system_u:object_r:nfs_t:s0。我只需要修改從那台機器上掛載到httpd_sys_content_t 的少數文件。

但是,任何這樣做的嘗試都會導致“不支持操作”。我嘗試使用的命令是:

chcon -R -h -t httpd_sys_content_t /path/to/my/stuff

據我所知,這是因為該伺服器的所有內容都安裝為system_u:object_r:nfs_t:s0。作為 Solaris,我不能去機器本身並使用 chcon,因為 SELinux 和 chcon 不存在。

我能想到的可行的解決方案是在這台機器上安裝相同的軟體,即將RHEL 6Solaris 全部刪除。我想知道這是否是我唯一的選擇。

存在兩個選項(在 SELinux 中):

  1. 所有其他失敗audit2allow都可以將任何 SELinux 拒絕轉換為允許的操作。

2)我的建議:啟用 SELinux 布爾值以允許httpd_t訪問nfs_t對象:

[root@ditirlns02 ~]# getsebool httpd_use_nfs
httpd_use_nfs --> off
[root@ditirlns02 ~]# setsebool -P httpd_use_nfs=1
[root@ditirlns02 ~]# getsebool httpd_use_nfs
httpd_use_nfs --> on
[root@ditirlns02 ~]# 

安全上下文是由掛載遠端文件系統的機器設置的,因此 Solaris 基本上是不相關的。即使導出來自 RHEL,NFS 導出仍然nfs_t存在,您對此無能為力

引用自:https://unix.stackexchange.com/questions/98736