SElinux初探
来源:互联网 发布:linux 串口波特率设置 编辑:程序博客网 时间:2024/06/05 18:44
1.什么是selinux
SELinux(Security-Enhanced Linux),是通过MAC(强行访问控制)来控制进程对文件的访问。
selinux的运行模式大致是这样,制定“策略”来控制“主体(subject)”对“目标(object)”的访问, 可以这样理解三要素,主体(进程) 目标(文件系统) 策略(规则)
2.selinux的启动、关闭和查看
查看selinux状态 getenforce 或者sestatus
配置文件的位置 /etc/selinux/config (配置永久生效)
# This file controls the state of SELinux on the system.# SELINUX= can take one of these three values:# enforcing - SELinux security policy is enforced.# permissive - SELinux prints warnings instead of enforcing.# disabled - SELinux is fully disabled.SELINUX=disabled# SELINUXTYPE= type of policy in use. Possible values are:# targeted - Only targeted network daemons are protected.# strict - Full SELinux protection.SELINUXTYPE=targeted
转换成permisssive宽容模式 setenforce 0
转换成enforceing强制模式 setenforce 1
3.selinux策略和规则
-Z查看安全上下文信息
ls -Z
ps aux -Z
SElinux的安全上下文的格式:
USER 用户字段
这个字段用来记录用户登录系统后所属的SElinux的身份的。
USER 通常以 _u为后缀,常见的如下:
System_u 系统账号类型的使用者
User_u 真实用户类型的使用者
Root 超级用户的使用者
说明:targeted安全策略并未支持USER字段
ROLE 角色字段
ROLE 通常以 _r为后缀
说明:targeted安全策略并未支持ROLE字段
TYPE字段
TYPE 类型字段通常以 _t为后缀的。这个字段是SElinux安全上下文中最常用也是最重要的字段。
Object表达成type,subject则对应为domain了;
下列表格列举了常见的TYPE字段
项目说明
Unconfiged_t 未设置类别 Default_t 默认类别 Mnt_t 代表挂载点的类型,/mnt/中的文件属于这个类别 Boot_t 作为开机文件的类型,/boot/中文件属于这个类别 Bin_t 作为二进制执行文件,/bin中多数属于这个类别 Sbin_t 作为系统管理类型的文件,/sbin中属于这个类别 Device_t 代表设备文件. /dev 下属于这个类别 Lib_t 连接库类型 /lib 下属于这个类别 Tty_device_t 代表终端机或控制台设备 Su_exec_t 具备SU功能的执行文件 Java_exec_t JAVA相关的执行文件 Public_content_t 公共内容类型的文件。如:FTP,NFS等服务器文件 Shadow_t 代表存储密码文件的类型 Httpd_t 作为HTTP文件的相关类别
[root@localhost ~]# ll -Zd /usr/sbin/httpd /var/www/html-rwxrwxrwx root root system_u:object_r:httpd_exec_t:s0 /usr/sbin/httpddrwxrwxrwx root root system_u:object_r:httpd_sys_content_t:s0 /var/www/html
注:ll是ls -l的别名
解释:httpd文件具有httpd_exec_t这个类型,而httpd domain(通俗一点就是httpd这个进程)被设置成可以只读取httpd_sys_content_t这个类型的目标文件。
重设SElinux的安全上下文
chcon
-R 文件夹
-t 接type类型
-u 接user类型
-r 接role类型
chcon -t httpd_sys_content_t /var/www/html/html/index.html
- SElinux初探
- SELinux 初探
- SELinux初探
- SELinux初探
- SELinux 初探
- 第十七章 SELinux 初探
- 【Android】SELinux初探
- 程序管理与SELinux初探
- 进程管理与SELinux初探
- 第十七章、程序管理与 SELinux 初探
- 第十七章 程序管理与SELinux初探
- 17章 程序管理与SELinux初探
- 13.10《鸟哥 基础篇》17进程管理和SeLinux初探
- 第17章 程序管理与SELinux初探
- 第17章 程序管理与SELinux初探
- 第17章 程序管理与SELinux初探
- selinux
- SELinux
- How to access sqlite database
- 如何建立eCos嵌入式系统
- 深入理解计算机系统第七章-----链接
- 系统安装:双系统启动菜单
- Using Touch Gestures 》Managing Touch Events in a ViewGroup
- SElinux初探
- 猴子吃桃问题
- LinearLayout 垂直滚动条
- debug中遇到error: cannot open 某个file,需要注意的是
- [笔试面试]1000瓶水,哪一瓶有毒
- alter system switch logfile与alter system archive log current
- Android代码动态界面布局,以及fragment代码样例
- 中标软linux下安装oracle11g
- loadrunner 监控tomcat的代码