<1>.selinx的定义
selinux 是强制访问控制系统的实现;只要用途在于增强系统抵御攻击的能力。
<2>.selinux的状态
vim /etc/sysconfig/selinux ---> 产看selinux的配置文件
enforcing ---> 表示强制,如果违反了安全上下文策略,则无法操作
disabled ---> 表示关闭;selinux无效
permisive ---> 表示警告;selinux有效;会产成警告日志
<3>.sel inux的修改
1>.selinux的临时修改,重启selinux恢复之前的设置
getenforce ---> 查询selinux的状态
setenforce 0 | 1 ---> 设置selinux的状态为警告[0]或者强制[1]
2>.selinux的永久修改
vim /etc/sysconfig/selinux ---> 更改配置文件;系统需要重启;配置才可以生效
<4>.selinux的安全上下文的修改
1>.selinux的安全上下文的临时修改
touch /mnt/westos ---> 建立一个文件
mv /mnt/westos /var/ftp ---> 移动文件到/var/ftp
ls -Z /var/ftp ---> 查看/var/ftp的安全上下文文
ps auxZ | grep vsdtpd ---> 查看进程vsftpd的安全上下文
lftp 172.25.254.113 -u student ---> 可以上传,可以删除
disabled ----> enforcing ---> 将selinux变成enforcing
touch /mnt/westos1 ---> 新建一个文件
mv /mnt/westos1 /var/ftp ---> 移动文件到/var/ftp
ls -Z /var/ftp ---> 查看/var/ftp的安全上下文
ps auxZ | grep vsdtpd ---> 查看进程vsftpd的安全上下文
setenforce 0 ---> 临时改变selinux
permissive
cat /var/log/audit/audit.log ---> 查看pam产成的日志
chcon -t public_content_t /var/ftp/westos1 ---> 临时更改/var/ftp/westos1的安全上下文
mkdir /westos ---> 创建一个目录
touch /westos/westosfile{1..5} ---> 创建几个文件
ls -Zd /westos ---> 查看目录的安全上下文
vim /etc/vsftpd/vsftpd.conf ---> 编辑vsftpd的配置文件
anon_root=/westos
lftp 172.25.254.110 不能访问
setenforce 0 ---> 更改selinux的设置
chcon -t public_content_t /westos -R ---> 更改目录及目录文件的安全上下文
ls -Zd /westos 查看目录的安全上下文
#把selinux重启一次,安全上下文又变回default_t
2>.selinux的安全上下文的永久修改
semanage fcontext --list -C | grep /var/ftp ---> 查看/var/ftp的安全上下文
semanage fcontext --list -C | grep /westos ---> 查看/westos的安全上下文
semanage fcontext -a -t public_content_t /westos ---> 改变/westos的安全上下文为public_content_t
semanage focntext -list -C | grep /westos 查看/westos的安全上下文;只改变了westos目录的安全上下文
restorecon -RvvF /westos ---> 刷新关于/westos的安全上下文
rm -rf /westos
mkdir /westos
touch /westos/file{1..5}
semanage fcontext -a -t public_content_t '/westos(/.*)?' ---> 改变/westos目录以及目录里面文件的安全上下文
ls -Zd /westos/* ---> 查看/westos目录以及里面文件的安全上下文;发现没有更改;需要刷新才会更改
restorecon -RvvF /westos ---> 刷新/westos;查看目录的更改
<5>.selinux的布尔值
getsebool -a | grep ftp ---> 显示bool值,查看进程的开启或者关闭
setsebool -P ftp_anon_write on ---> 将匿名用户的写权限永久打开‘-P表示永久’
<6>.监控selinux的冲突
touch /mnt/westos
mv /mnt/westos /var/ftp
>/var/log/messages
cat /var/log/messages
>/var/log/audit/audit.log
cat /var/log/audit/audit.log
cat /var/log/messages ---> 查看系统日志
restorecon -v /var/ftp/* ---> 这是系统提供的解决的方案
rpm -qa | grep setroubleshoot
setroubleshoot-server-3.2.17-2.el7.x86_64
setroubleshoot-3.2.17-2.el7.x86_64
setroubleshoot-plugins-3.0.59-1.el7.noarch