1.什么是selinux
selinux,内核级加强型防火墙。
2.如何管理selinux级别(selinux开启或者关闭)
vim /etc/sysconfig/selinux
selinux=disabled ##关闭状态
selinux=Enforcing ##强制状态
selinux=Permissive ##警告状态
当selinux由enforcing或permissive状态和disabled状态之间的互相切换需要重启后方能生效
而enforcing和permissive状态之间的切换则不需要重启就能生效
getenforce ##查看状态
当selinux开启时
setenforce 0|1 #更改selinux运行级别
setenforce 0 #警告状态
setenforce 1 #强制状态
3.如何更改文件安全上下文
在/mnt文件夹下创建文件后移动到/var/ftp/pub中,通过ls -Z 查看安全上下文,发现移动过来的文件安全上下文与原有文件不一致
用lftp查看pub中的文件,则只能看见文件夹中原有的文件haha而看不到移动过来的xixi
1)临时更改
chcon -t 安全上下文 文件
chcon -t public_content_t /var/ftp/pub/xixi
更改之后在使用lftp查看则可以看到移动来的文件
2)永久更改
semanage fcontext -l ##列出内核安全上下文列表内容
semanage fcontext -a -t public_content_t '/westos(/.*)?'
restorecon -FvvR /westos/
restorecon命令用来恢复selinux文件属性即恢复文件的安全上下文
-F:强制恢复文件安全语境
-v:将过程显示到屏幕上
-R:递归处理目录
touch /.autorelabel 相当于selinux的reset
4.如何控制selinux对服务功能的开关
getsebool -a #列出所有selinux bool数值清单列表与内容
getsebool -a | grep 服务名称
getsebool -a | grep ftp
修改bool值
setsebool -P 功能bool值 on|off -P表示永久
setsebool -P ftpd_anon_write on
5.监控selinux的错误信息
/var/log/audit/audit.log #警告信息
/var/log/messages #其中有解决方案
setroubleshoot-server-3.2.17-2.el7.x86_64 #提供解决方案的插件
在/var/log/messages中会有不在产生此警告的解决方案
在/var/log/audit/audit.log中是产生的警告信息
setroubleshoot-server-3.2.17-2.el7.x86_64 为提供解决方案的插件,若卸载掉此插件则/var/log/messages中不会在生成解决方案
6.修改端口
semanage port -l | grep http #查看端口
semanage port -a -t http_port_t -p tcp 6666 #添加端口