CentOS 7 SELinux配置指南

SELinux简介
SELinux(Security-Enhanced Linux)是一种安全增强技术,它通过强制访问控制(MAC)机制来提高操作系统的安全性,在CentOS 7中,SELinux默认是开启的,但为了更好地利用其安全特性,我们需要对其进行适当的配置。
查看SELinux状态
在配置SELinux之前,首先需要查看当前系统的SELinux状态,可以通过以下命令查看:
sestatus
输出结果中,SELinux status: enabled 表示SELinux已启用,而 SELinux mode: enforcing 表示SELinux处于强制模式。
SELinux配置文件
CentOS 7中,SELinux的配置文件位于 /etc/selinux/ 目录下,主要的配置文件包括:
selinux.conf:包含SELinux的通用配置信息。policy.conf:定义了SELinux的策略规则。booleans:包含布尔值配置,用于启用或禁用某些功能。
修改SELinux配置

- 修改
selinux.conf文件
编辑/etc/selinux/selinux.conf文件,根据需要修改以下参数:
SELINUX=disabled:关闭SELinux。SELINUX=enforcing:开启SELinux并强制执行。SELINUX=permissive:开启SELinux但不强制执行。
- 修改
policy.conf文件
编辑/etc/selinux/policy.conf文件,根据需要修改以下参数:
type:定义了文件、目录、进程等对象的类型。role:定义了用户角色。user:定义了用户。
- 修改
booleans文件
编辑/etc/selinux/booleans文件,根据需要修改以下布尔值:
setuid_enable:允许setuid位的应用程序。setgid_enable:允许setgid位的应用程序。
重启系统
完成配置后,需要重启系统使更改生效:
shutdown -r now
SELinux配置示例
以下是一个简单的SELinux配置示例:
# 修改selinux.conf文件
sudo vi /etc/selinux/selinux.conf
SELINUX=enforcing
# 修改policy.conf文件
sudo vi /etc/selinux/policy.conf
type httpd_t {
...
allow httpd_t /var/www/html/ httpd_read;
...
}
# 修改booleans文件
sudo vi /etc/selinux/booleans
setuid_enable=1
setgid_enable=1
# 重启系统
sudo shutdown -r now FAQs

问题:如何查看SELinux的日志文件?
解答: SELinux的日志文件位于
/var/log/目录下,可以通过以下命令查看:sudo tail -f /var/log/audit/audit.log
问题:如何临时关闭SELinux?
解答: 可以通过以下命令临时关闭SELinux:
sudo setenforce 0
要重新启用SELinux,可以使用以下命令:
sudo setenforce 1

