我最近发现selinux是disabled ,但configuration文件说selinux enforcing模式设置。 我读了关于为什么selinux被禁用的可能性。 我怀疑内核。 但是我找不到我该怎么做来解决这个问题。 由于系统正在远程运行,所以我不敢碰任何东西。 我和系统之间的连接只是安全的shell。 服务器和我之间有几个大陆。 所以,我需要解决这个问题,而不使服务器无法访问:)我应该遵循什么步骤?
有关服务器的信息
Centos 6.5 Linux 2.6.32-042stab068.8 #1 SMP Fri Dec 7 17:06:14 MSK 2012 i686 i686 i386 GNU/Linux
服务器运行在VPS上,如此奇怪地configuration。 我甚至没有检测到引导加载程序中安装了哪个引导加载程序来检查selinuxconfiguration。
分区(根据mtab):
/dev/simfs / simfs rw,relatime 0 0 proc /proc proc rw,relatime 0 0 sysfs /sys sysfs rw,relatime 0 0 none /dev devtmpfs rw,relatime,mode=755 0 0 none /dev/pts devpts rw,relatime,gid=5,mode=620,ptmxmode=000 0 0 none /dev/shm tmpfs rw,relatime 0 0 none /proc/sys/fs/binfmt_misc binfmt_misc rw,relatime 0 0
编辑:不幸的是,我已经了解到服务器中的内核不支持Selinux。 因为它是专门为OpenVZ 。
你说VM是基于OpenVZ的。 由于容器的工作原理,OpenVZ不支持SELinux。 这不是在内核,这是为什么它不会实际执行。 我将按照文档中的build议将configuration设置为禁用。 你唯一的解决scheme是使用虚拟机与不同的pipe理程序,如在虚拟主机行业stream行的KVM / XEN。 这些使用完全硬件虚拟化,并不像基于容器的虚拟化那样受到限制。
您应该知道,SELINUX可以设置为强制执行,而不是在运行时与启动不同。
从CentOS网站上的文档 :
sestatus命令显示启动过程中引用的configuration文件中的当前模式和模式:
sestatus | grep -i mode
Current mode: permissive
Mode from config file: permissive请注意,更改运行时实施不会影响引导时间configuration:
setenforce 1 sestatus | grep -i mode
Current mode: enforcing
Mode from config file: permissive
我build议您立即将其更改为宽容模式,直到您可以将您知道的更改安全地避免被locking。 然后,你可以build立你的策略,检查日志,看看哪里会有拒绝,最后当你知道发生了什么事情的时候,可以严格执行。
您可以在/etc/grub.conf或/ etc / selinux / config中禁用,具体取决于您的configuration。 您也可以使用setenforce 0 -p永久保存更改。