1.selinux的基本模式
- Enforcing 强制模式:在此模式下,每一个文件都会有自己的安全上下文(安全上下文类似于给每个文件贴标签)
- Permisive 警告模式:系统会警告添加安全上下文,不会强制添加
- Disabled 不开启模式:该模式下系统不会管理安全上下文
2.selinux各类模式的切换
-
disabled模式与enforcing模式、permisive模式的qi切换
1)vim /etc/sysconfig/selinux
需要在selinux配置文件中编辑更改SELINUX=xxx
2)reboot
这种情况的模式切换必须重启系统才能生效,因为是对内核的修改 -
enforing模式与permisive模式的切换
setenforce 0
设置为警告模式
setenforce 1
设置为强制模式
getenforce
selinux模式状态的查看
注:这类情况的切换不需要重启系统
3.selinux强制模式的影响
(1)对文件的影响
- 影响:
强制模式会给每一个文件添加安全上下文,会导致加载了安全上下文的文件在ftp服务中不能正常查看文件
*注意 :如果selinux的ftp服务权限开关打开是可以看到文件的
- 解决方法:
修改文件的安全上下文 - 修改安全上下文的方法:
1)临时修改chcon -t public_context_t /dir -R
重新修改模式重启后 修改失效(注意:需要修改并重启两次,一次修改为enforing ,一次修改为disabled) -t 表示指定安全上下文内容 -R 表示递归
2)永久修改
semanage fcontext 安全上下文管理命令
参数 | 作用 |
---|---|
-l | 查看安全上下文 |
-a | 添加修改安全上下文 |
-t | 指定文件 |
修改命令:
semanage fcontext -a -t public_context_t '/dir(/.*)?'
(/.*)?表示递归修改
restorecon -RvvF /dir
刷新
(2)对功能的影响
getsebool -a
查看ftp功能
setsebool -P
修改ftp功能
eg: setsebool -P [功能参数]=on|off
- 由于selinux模式而导致在lftp服务功能出现问题时,可以灵活查看日志/var/log/messages 解决问题
日志中会告诉你错误原因信息,并且为你提供解决方案