selinux 服务

Selinux (Security Enhanced Linux)
SELinux提供了一种灵活的强制访问控制(MAC)系统,且内嵌于Linux Kernel中。SELinux定义了系统中每个【用户】、【进程】、【应用】和【文件】的访问和转变的权限,然后它使用一个安全策略来控制这些实体(用户、进程、应用和文件)之间的交互,安全策略指定如何严格或宽松地进行检查

操作系统有两类访问控制:自主访问控制(DAC)和强制访问控制(MAC)。标准Linux安全是一种DAC,SELinux为Linux增加了一个灵活的和可配置的的MAC。

工作模式 # 决定SELinux机制的启动与否
enforcing ===>强制模式,SELinux已经启动
permissive===>宽容模式,SELinux已经启动,但不会禁止,只是会提出警告信息
disabled ===>关闭模式,关闭SELinux
工作类型(SELinux type) # 表示SELinux具体的安全性策略
strict ===>每个进程都受限制(仅在centos5)
targeted===>默认类型为targeted,主要限制网络服务
minimum ===>简化版的targetd,限制部分网络服务(centos7)
mls ===>多级安全限制,较为严格
安全上下文(security context):是主要修改的地方,进程必须和文件的安全上下文对应(不是必须一样)才能对其进行访问
安全上下文是 SELinux 的核心。
安全上下文我自己把它分为「进程安全上下文」和「文件安全上下文」。
一个「进程安全上下文」一般对应多个「文件安全上下文」。
只有两者的安全上下文对应上了,进程才能访问文件。它们的对应关系由政策中的规则决定。
文件安全上下文由文件创建的位置和创建文件的进程所决定。而且系统有一套默认值,用户也可以对默认值进行设定。
需要注意的是,单纯的移动文件操作并不会改变文件的安全上下文
ls -Z 文件名 # 查看文件的安全上下文
ps -eZ # 查看进程的安全上下文

安全上下文的结构及含义
安全上下文有四个字段,分别用冒号隔开。如:unconfined_u:object_r:admin_home:s0

修改一个文件的context值
[root@localhost ~]# chcon -t admin_home /tmp/1
[root@localhost ~]# ll -Z /tmp/1
-rw-r–r–. root root unconfined_u:object_r:admin_home:s0 /tmp/1
[root@localhost ~]# ll -Z /tmp/1
-rw-r–r–. root root unconfined_u:object_r:admin_home:s0 /tmp/1
[root@localhost ~]# chcon -t user_tmp_t 1
恢复一个文件的context值
[root@localhost ~]# restorecon -v 1
restorecon reset /root/1 context unconfined_u:object_r:user_tmp_t:s0->unconfined_u:object_r:admin_home_t:s0
[root@localhost ~]# ll -Z /tmp/1
-rw-r–r–. root root unconfined_u:object_r:admin_home:s0 /tmp/1
案例一:
使用httpd服务演示context值得设定
[root@localhost ~]# getenforce
Enforcing
[root@localhost ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2018-08-13 01:48:12 EDT; 1h 54min ago
Docs: man:firewalld(1)

默认路径
[root@localhost ~]echo this is today > /var/www/html/index.html
[root@localhost ~]# mkdir -p /www/80
[[root@localhost ~] echo welcome to 80 > /www/80/index.html
这里写图片描述
[root@localhost ~]# vim /etc/httpd/conf.d/vhost.conf
这里写图片描述
[root@localhost ~]# systemctl restart httpd.service
[root@localhost ~]# firewall-cmd –permanent –add-service=http
success
[root@localhost ~]# firewall-cmd –reload
Success
这里写图片描述
通过浏览器进行访问,发现只能访问默认页,无法访问我们自定义的页面,这时需要修改自定义目录的context值,如下:
[root@localhost ~]# chcon –reference /var/www/html/ /www

[root@localhost ~]# chcon -t httpd_sys_content_t /www/ -R
这里写图片描述

案例二:
使用web服务端口的改变来演示端口的设定
创建一个8888端口的web服务目录和默认页面
[root@localhost ~]# mkdir -p /www/8888
[root@localhost ~]# echo welcom to 8888 >/www/8888/index.html
[root@localhost ~]# vim /etc/httpd/conf.d/vhost.conf
这里写图片描述
添加该自定义端口为服务端口
[root@localhost ~]# semanage port -a -t http_port_t -p tcp 8888
[root@localhost ~]# systemctl restart httpd.service
这里写图片描述

案例三
使用ftp服务演示布尔值的设定
开启vsftp服务,配置为本地用户允许读写家目录,不允许遍历其他目录
[root@localhost ~]firewall-cmd –permanent –add-service=ftp
[root@localhost ~]firewall-cmd –reload
[禁止匿名用户]
anonymous_enable=no
[禁止遍历]
首先开启chroot选项
allow_writeable_chroot=YES
打开chroot选项
chroot_list_enable=YES
指定打开谁的CHROOT
chroot_list_file=/etc/vsftpd/chroot_list
确保以下选项参数无误
local_enable=YES
write_enable=YES

[root@localhost ~]Vim /etc/vsftpd/chroot_list
redhat
[root@localhost ~]systemctl restart vsftpd
[root@localhost ~]# getsebool -a | grep ftp
ftpd_anon_write –> off
ftpd_connect_all_unreserved –> off
ftpd_connect_db –> off
ftpd_full_access –> on
ftpd_use_cifs –> off
ftpd_use_fusefs –> off
ftpd_use_nfs –> off
ftpd_use_passive_mode –> off
httpd_can_connect_ftp –> off
httpd_enable_ftp_server –> off
tftp_anon_write –> off
tftp_home_dir –> on
[root@localhost ~]# setsebool -P ftpd_full_access=on
这里写图片描述
Tom用户
这里写图片描述
使用图形界面切换级别
安装
[root@localhost ~]yum install - y policycoreutils-gui
执行
[root@localhost ~]# system-config-selinux
这里写图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值