Centos

ProFTPd 和 SELinux:mkdir 權限被拒絕

  • March 31, 2013

我在 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 開啟但允許創建目錄?

這看起來像是一個政策錯誤。嘗試通過執行以下操作添加此策略..

  1. 創建一個名為“localftpd”的新目錄
  2. 將下面的內容放入這個新目錄中名為“localftpd.te”的文件中。
  3. 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)
');

引用自:https://serverfault.com/questions/494976