您的位置:首页 > 汽车 > 新车 > 怎么做一个好的销售_广州疫情直播发布会_环球军事网最新消息_百度快照推广有效果吗

怎么做一个好的销售_广州疫情直播发布会_环球军事网最新消息_百度快照推广有效果吗

2024/12/26 23:22:27 来源:https://blog.csdn.net/m0_74618370/article/details/143685587  浏览:    关键词:怎么做一个好的销售_广州疫情直播发布会_环球军事网最新消息_百度快照推广有效果吗
怎么做一个好的销售_广州疫情直播发布会_环球军事网最新消息_百度快照推广有效果吗

SELinux

Security-Enhanced Linux 安全强化Linux

工作原理:

通过MAC(Mandatory Access Control 强制访问控制 )的方式控制管理进程

**控制主体:**进程

目标: 被主体访问的资源,可以是文件、目录、端口等等

策略: 依靠某些服务制订基本的访问安全策略

策略类型特点
targeted针对网络服务的限制较多,针对本机的限制较少,是默认策略
strict完整的SELinux 限制,较严格
安全上下文主体访问目标需要策略指定,主体与目标的安全上下文必须一致,以及文件系统的rwx权限设置

安全上下文:

查看:

[root@server ~]# ll -Z

[root@server ~]# ll -Z-rw-------. 1 root root system_u:object_r:admin_home_t:s0     1014  924 10:43 anaconda-ks.cfg
-rw-r--r--. 1 root root unconfined_u:object_r:admin_home_t:s0 1081 1111 13:24 fa
-rw-r--r--. 1 root root unconfined_u:object_r:admin_home_t:s0  807 112 10:43 ystemc

通过冒号分为四个部分:

identify :role : type : level

  • identify(身份标识):SELinux用户身份,主要有以下三种类型:

    身份说明
    root表示root账号身份
    system_u表示程序方面的标识,通常是进程
    unconfined_u一般是用户账号相关的身份
  • role(角色): 表明该数据是属于程序、文件资源还是用户,一般有以下类型:

    角色说明
    object_r文件或目录等文件资源
    system_r进程
  • type(类型):标识文件类型或进程域;进程只能访问相同类型的文件

    例子:一个Web服务器进程可能被标记为httpd_t类型,这意味着它只能访问同样标记为httpd_t类型的文件

  • level:表明信息的敏感程度,一般用s0、s1、s2来命名(越大越敏感)

    例子:S1的进程不能访问S2的文件,只能访问S1和S0的文件

SELinux的设置:

修改模式:

SELinx的三种模式:

  • enforcing:强制模式

    代表SELinux正在运行中,开始限制domain/type

  • permissive : 宽容模式

    代表SELinux正在运行,但只有警告信息,不会实际限制domain/type的访问

  • disabled:关闭

    SELinux被关闭,未运行

#查看当前的模式
[root@server ~]# getenforce
Enforcing
#查看当前SELinux的情况
[root@server ~]# sestatus
SELinux status:                 enabled    				#是否启用了SELinux
SELinuxfs mount:                /sys/fs/selinux			#SELinux的相关文件数据的挂载点
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted				#目前在使用的策略
Current mode:                   enforcing				#现在的模式				
Mode from config file:          enforcing				#配置中默认的模式
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Memory protection checking:     actual (secure)
Max kernel policy version:      33
#查看/修改SELinux的策略
[root@server ~]# vim /etc/selinux/config

修改安全上下文:

chcon:
#命令
chcon [-R] [-t type] [-u user] [-r role] 文件
# -R: 连同子目录一起递归修改
# -t: 指定安全上下文的类型
# -u: 指定身份
# -r: 指定角色
chcon [-R] --reference=范例文件 文件 #将文件的安全上下文按照范例文件修改
restorecon:
#将文件修改回默认的上下文
restorecon [-Rv] 文件或目录
# -R:连同子目录一起修改;
# -v:将过程显示到屏幕上

默认selinux type类型记录在/etc/selinux/targeted/contexts/目录内。

semanage:

contexts目录内有很多不同的数据,所以用semanage的功能来查询与修改。

semanage {login|user|port|interface|fcontext|translation} -l
semanage fcontext -{a|d|m} [-frst] file_spec
# -l : 查询;
# -a:增加一些目录的默认安全上下文的设置;
# -m:修改;
# -d:删除
# -f:指定文件类型,file、dir等。
# -r:指定 SELinux 用户角色。
# -s:指定 SELinux 用户类型。
# -t:指定 SELinux 安全上下文类型。

实验:

实验1:

使用web服务演示安全上下文值的设定

服务器(192.168.111.128):

使用enforcing模式访问自定义网站

[root@server ~]# systemctl stop firewalld.service
[root@server ~]# getenforce
Enforcing
[root@server ~]# cat /etc/nginx/conf.d/ip.conf
server{listen 192.168.111.128:80;root /www/ip/128;location /{}
}
[root@server ~]# cat /www/ip/128/index.html
this is 128# nginx配置没有问题,但访问出现403
[root@server ~]# curl 192.168.111.128
<html>
<head><title>403 Forbidden</title></head>
<body>
<center><h1>403 Forbidden</h1></center>
<hr><center>nginx/1.26.1</center>
</body>
</html>

修改自定义目录的安全上下文的值:

[root@server ~]# chcon -t httpd_sys_content_t  /www  /www/ip
[root@server html]# curl 192.168.111.128
this is 128
#能在selinux开启Enforcing 的前提下正常访问自定义网站

实验2:

使用web服务端口的改变来演示端口的设定

使用enforcing模式访问自定义端口的网站

[root@server ~]# cat /etc/nginx/conf.d/port.conf
server{listen 192.168.111.128:10000;root /www/port/10000;location /{}
}
[root@server ~]# cat /www/port/10000/index.html
this is 10000
#nginx配置无问题,但重启nginx失败

修改安全上下文:

#添加一条新的上下文
[root@server conf.d]# semanage port -a -t http_port_t -p tcp 10000
#即可成功启动nginx并访问自定义端口的网站

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com