ProFTPd和SELinux:mkdir权限被拒绝

我有一个使用SELinux Enforcing的Centos 6.3上的ProFTPd服务器。 我的用户是平面文件中的虚拟用户。 用户被chrooted到通过NFS安装的目录。 我已经设定了以下政策:

/usr/sbin/semanage boolean -m --on allow_ftpd_use_nfs /usr/sbin/semanage boolean -m --on allow_ftpd_anon_write 

用户可以读写文件没有问题。 但是,他们不能创build目录。 我在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,但允许创build目录?

这看起来像一个政策错误。 尝试通过执行以下操作来添加此策略

  1. 创build一个名为“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) ');