1.selinux : 内核级加强防火墙
#1).针对文件,会对系统中的每个文件添加安全上下文
#2).针对进程,会对系统中的每个进程添加安全上下文
#3).会在系统服务上设定sebool开关
#4).当进程安全上下文和文件的安全上下文不匹配时,那么进程无法访问此文件
#5).sebool会限制服务的不安全功能,如果需要用此功能,必须调整sebool值
图中选定部分即为安全上下文
2.管理selinux
getenforce 查看selinux的状态
selinux的开关
vim /etc/sysconfig/selinux 通过编辑selinux配置文件更改selinux状态
SELINUX=enforcing selinux开启,级别为强制
SELINUX=permissive selinux开启,级别为警告
SELINUX=disabled selinux关闭
setenforce 0|1 更改selinux当前的级别 0警告 1强制
selinux开启,enforcing强制状态下,安全上下文不匹配将无法访问文件
permissive警告状态下,安全上下文不匹配,可以访问文件,但会有报错惊醒
selinux关闭,disabled状态下,没有安全上下文的匹配,可任意访问文件
例:enforcing强制状态下安全上下文不匹配将无法访问
getenforce 在selinux开启并且为强制级别下
touch /mnt/file{1..5} 在/mnt目录下创建file1-5五个文件
mv /mnt/* /var/ftp/ 将/mnt/目录下的五个新建文件移动到/var/ftp/
lftp 172.25.254.103 利用lftp登陆ftp服务进行对刚刚五个新建文件的访问
安全上下文将组织访问这五个文件
当selinux开启并处于警告级别,时,再次lftp 登陆查看file1-5
此时文件可以被访问
此时查看日志 cat /var/log/messages
selinux会对访问fiel1-5发出警醒
关闭selinux,清空日志,再次lftp访问文件file1-5,并查看日志
注:当selinux从关到开,或者从开到关,需要重启系统selinux中对文件安全上下文的设定
临时更改适用于更改文件
chcon -t 安全上下文 文件
chcon -t public_content_t /var/ftp/file
永久更改文件安全上下文
semanage fcontext -l
semanage fcontext -a -t public_content_t '/west(/.*)?'
递归更改/west目录及其内容
restorecon -RvvF /west/ 重新加载/west的安全上下文
selinux的bool值的设定
sebool值是控制服务功能的开关
getsebool | grep 服务名称
setsebool -P bool值 on | off
3.selinux的排错
/var/log/messages 操作命令报错信息日志
/var/log/secure 连接创建用户信息日志
/var/log/maillog 邮箱信息日志