Centos
ProFTPd 和 SELinux:mkdir 權限被拒絕
我在 Centos 6.3 上有一個帶有 SELinux Enforcing 的 ProFTPd 伺服器。我的使用者是平面文件中的虛擬使用者。使用者被 chroot 到通過 NFS 掛載的目錄。我已經設置了以下策略:
/usr/sbin/semanage boolean -m --on allow_ftpd_use_nfs /usr/sbin/semanage boolean -m --on allow_ftpd_anon_write
使用者可以毫無問題地讀取和寫入文件。但是,他們不能創建目錄。我在 audit.log 中得到了這個:
type=AVC msg=audit(1364763704.972:25268): avc: denied { create } for pid=2971 comm="proftpd" name="test4" scontext=system_u:system_r:ftpd_t:s0-s0:c0.c1023 tcontext=system_u:object_r:nfs_t:s0 tclass=dir
是否可以保持 SELinux 開啟但允許創建目錄?
這看起來像是一個政策錯誤。嘗試通過執行以下操作添加此策略..
- 創建一個名為“localftpd”的新目錄
- 將下面的內容放入這個新目錄中名為“localftpd.te”的文件中。
- 跑
make -f /usr/share/selinux/devel/Makefile load
這是您需要的政策修訂。
policy_module(localftpd, 1.0.0) require { type ftpd_t; type nfs_t; } tunable_policy(`allow_ftpd_use_nfs && allow_ftpd_anon_write', ` create_dirs_pattern(ftpd_t, nfs_t, nfs_t) delete_dirs_pattern(ftpd_t, nfs_t, nfs_t) rename_dirs_pattern(ftpd_t, nfs_t, nfs_t) ');