重启后,RHEL的SELinux不会持久

所以在红帽考试中,他们希望你使用SELinux。 例如,如果您安装vsftp,则执行setsebool -P ftp_home_dir=1setsebool -P ftp_home_dir on以允许服务器上的用户访问主目录。 然后重新启动我注意到ftp_home_dir被设置为off 。 我是我做错了什么? 这是我的步骤:

  1. getsebool -a | grep ftp getsebool -a | grep ftpftp_home_dir --> off

  2. setsebool -P ftp_home_dir on

  3. getsebool -a | grep ftp getsebool -a | grep ftpftp_home_dir --> on

  4. 重启

  5. getsebool -a | grep ftp getsebool -a | grep ftpftp_home_dir --> off

这是怎么回事? -P假设在重新启动后保持不变

在CentOS 6.5和RHEL 6.5上试过,当然两者都更新了。 任何build议表示赞赏。

更新看到,因为我不能回答我的问题

 semanage boolean -m --on ftp_home_dir 

这将保持重新启动

我只是在CentOS 6.5上试过,我无法重现你所看到的行为。

 # semanage boolean -l | head SELinux boolean State Default Description ftp_home_dir (off , off) Allow ftp to read and write files in the user home directories # setsebool -P ftp_home_dir on # semanage boolean -l | head SELinux boolean State Default Description ftp_home_dir (on , on) Allow ftp to read and write files in the user home directories # reboot The system is going down for reboot NOW! 

 # semanage boolean -l | head SELinux boolean State Default Description ftp_home_dir (on , on) Allow ftp to read and write files in the user home directories 

根据官方文件 ,这当然应该是正确的做法。

幸运的是,在SELinux中,几乎总是有两种或两种以上完全不同的方式来做同样的事情,就像你发现的那样。 semanage也可以设置布尔等等。 为什么这是我认为只有丹·沃尔什知道…

 semanage boolean -m --on ftp_home_dir 

既然你说这对你有帮助,我怀疑你的安装中有一些非显而易见的东西。 在这一点上,你可能永远不会知道它是什么。