位置: 编程技术 - 正文

CentOS上的安全防护软件Selinux详解(centos7安全)

编辑:rootadmin

推荐整理分享CentOS上的安全防护软件Selinux详解(centos7安全),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:centos防火墙操作,centos 安全性,centos 安全设置,centos 安全性,centos 安全设置,centos 安全性,centos 安全,centos 安全性,内容如对您有帮助,希望把文章链接给更多的朋友!

selinux简介

SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的 实现,是 Linux历史上最杰出的新安全子系统。NSA是在Linux社区的帮助下开发了一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在他的 任务中所需要文件。SELinux 默认安装在 Fedora 和 Red Hat Enterprise Linux 上,也可以作为其他发行版上容易安装的包得到,年以GNU GPL发布,Linux内核2.6版本后集成在内核中

DAC:Discretionary Access Control自由访问控制

MAC:Mandatory Access Control 强制访问控制

DAC环境下进程是无束缚的

MAC环境下策略的规则决定控制的严格程度

MAC环境下进程可以被限制的

策略被用来定义被限制的进程能够使用那些资源(文件和端口)

默认情况下,没有被明确允许的行为将被拒绝

selinux的工作类型

selinux一共有四种工作类型

strict:每个进程都受到selinux的控制

targeted:用来保护常见的网络服务,仅有限进程受到selinux控制,系统当中默认设置类型

minimum:这个模式在centos7上,是targeted的修改版,只对选择的网络服务,仅对选中的进程生效

mls:提供mls机制的安全性,国防级别的

selinux安全上下文

传统的linux,一切皆文件,由用户、组、权限来进行访问控制,这当中有很多的缺陷

在selinux中,一切皆对象(进程),有存放在inode的扩展属性域的安全元素所控制其访问

所有文件和端口资源和进程都具备安全标签,这就是安全上下文

安全上下文有五个元素组成

system_u:object_r:admin_home_t:s0

user:role:type:sensitivity:category

user:指示登录系统的用户类型,如root,user_u,system_u,多数本地进程都属于自由进程

role:定义文件,进程和用户的用途,文件:object_r,进程和用户:system_r

type:指定数据类型,规则重定义何种进程类型访问何种文件,target策略基于type实现,多服务功用,public_content_t

sensitivity:限制访问的需要,由组织定义的分层安全级别,如unclassified,secret,top,一个对象有且只有一个sensitivity,分0-个级别,s0最低,target策略默认使用是s0

category:对于特定组织划分不分层的分类,如FBI secret,NSA secret,一个对象可以有多个category, c0-c共个分类,target策略不适用category

查看安全上下文

ls –Z ; ps -Z

期望(默认)上下文:存放在二进制的selinux策略库中

semanage fcontext –l 查看系统中的默认安全上下文

@font-face {

font-family: “宋体”;

}@font-face {

font-family: “Cambria Math”;

}@font-face {

font-family: “Calibri”;

}@font-face {

font-family: “@宋体”;

}p.MsoNormal, li.MsoNormal, div.MsoNormal { margin: 0cm 0cm 0.pt; text-align: justify; font-size: .5pt; font-family: “Calibri”,”sans-serif”; }.MsoChpDefault { font-family: “Calibri”,”sans-serif”; }div.WordSection1 { }

selinux策略

对象(object):所有可以读取的对象,包括文件、目录和进程,端口等

主体:进程称为主题(subject)

selinux中对所有的文件都赋予一个type的文件类型标签,对于所有的进程也赋予各自的一个domain标签。domain标签能够执行的操作由安全策略里定义

当一个subject视图访问一个object,kernel中的粗略执行服务器将检查AVC,在AVC中,subject和object的权限被缓存,查找应用+文件的安全环境,然后根据查询结果允许或拒绝访问

安全策略:定义主体读取对象的规则数据库,规则中记录了那个类型的主体使用了那个方法读取哪一个对象是允许还是拒绝的,并且定义了那种行为是允许或拒绝

设置selinux

配置selinux

selinux是否启用

给文件重新打安全标签

给端口设置安全标签

设定某些操作的布尔型开关

selinux的日志管理

selinux的状态

enforcing:强制,每个受限的进程都必然受限

permissive:允许;每个受限的进程违规操作不会被禁止,但会被记录与审计日志

disabled:禁用,允许任何操作

getenforce:获取selinux当前状态

sestatus:查看selinux状态

setenforce 0|1

0:设置为permissive

1:设置为enforcing

配置文件

/etc/sysconfig/selinux链接文件链接到/etc/selinux/config

/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.

CentOS上的安全防护软件Selinux详解(centos7安全)

# permissive – SELinux prints warnings instead of enforcing.

# disabled – SELinux is fully disabled.

SELINUX=enforcing

# SELINUXTYPE= type of policy in use. Possible values are:

# targeted – Only targeted network daemons are protected.

# strict – Full SELinux protection.

SELINUXTYPE=targeted

SELINUX=enforcing 设置selinux的状态

SELINUXTYPE=targeted 设置selinux的工作类型

设置selinux也可以在开机的时候设定,在/boot/grub/grub.conf文件内核那一行后面设定selinux的状态selinux=0|1,只要配置文件或内核设定为禁用,最后selinux的状态为禁用

注意:在从disabled状态切换至enforcing或permissive状态需要重启系统,这时候系统会对每一个文件一一重打标签,需要花费一定的时间。

修改selinux 的安全标签

给文件重新打安全标签

chcon [OPTION]… [-u USER] [-r ROLE] [-l RANGE] [-t TYPE] FILE..

chcon [OPTION]… –reference=RFILE FILE..

-R:递归打标,对目录而言

例如我想给自己定义的web文档根目录自定义为/htdocs

chcon -R httpd_sys_content_t /htdocs

恢复目录或文件默认的安全上下文

resotrecon [-R] /path/to/somewhere

例如:我又将web的文档根目录改为原来的目录,这时候自定义的目录的标签需要还原

restorecon -R /htdocs

恢复是根据策略库当中的策略进行还原

默认安全上下文查询与修改

semanage来自policycoreutils-python包,有些系统默认没有安装,安装次包即可使用semanage命令

查看默认的安全上下文

semanage fcontext –l

添加安全上下文

semanage fcontext -a –t httpd_sys_content_t ‘/home/hadoop(/.*)?’

restorecon –Rv /home/hadoop 此步骤一定不能忘记,它从策略库进行还原安全上下文,执行此命令才会生效

删除安全上下文

semanage fcontext –d –t httpd_sys_content_t ‘/home/hadoop(/.*)?’

selinux端口标签

查看端口标签

semanage port -l

添加端口

semanage port -a -t port_label –p tcp|udp port

semanage port –a -t htt_port_t -p tcp

删除端口

semanage port -d -t port_label -p tcp|udp port

semanage port -d -t htt_port_t -p tcp

修改现有(已存在)端口为新标签

semanage port -m –t port_label –p tcp|udp port

semanage port –m –t ssh_port_t –p tcp 将ssh服务的端口改为

selinux布尔值

查看布尔值命令

getsebool [-a] [boolean]

semanage boolean –l -C 查看修改过的布尔值

设置bool值命令

setsebool [-P] boolean value (on|off|1|0)

setsebool httpd_enable_homedirs on|1 开启httpd家目录访问,但不会写入策略库中

setsebool -P httpd_enable_homedirs on|1

修改bool值时后面的值可以对布尔值类型后跟=加值的设置方法

setsebool httpd_enable_homedirs=on

selinux的日志管理

需要安装settroublesshoot*安装此包需要重启系统才能生效,它会将错误日志记录到/var/log/message

grep setroubleshoot /var/log/message

sealer -l UUID

查看安全事件日志说明

sealert -a /var/log/audit/audit.log

扫描并分析日志

yum -y install selinux-policy-devel(centos7)

yum –y install selinux-policy-doc (centos6)

mandb | makewhatis 需要更新man帮助的数据才能查询

man -k _selinux

例如man httpd_selinux

总结:selinux在安全防护上确实起到了一定的作用,它是在内核层面来工作,往往有许多的漏洞,一旦黑客利用漏洞入侵系统后果不堪设想,还有其 操作的繁琐和稳定性的欠缺的导致很多企业不愿意用到selinux ,一般都会使用硬件的安全防护设备,所以我们只需要作为了解,知道有这么个东西,如何开关闭及一些简单的操作即可。

Centos6.6系统如何做profile? 这段时间在做和内存分析有关的工作用到了volatiltiy,由于我是在Centos上做的所以需要作出来CentOs的profile,查遍volatility的官网和其他论坛都没有直接解

在CentOS上如何安装Nux Dextop仓库? 介绍NuxDextop是类似CentOS、RHEL、ScientificLinux的第三方RPM仓库(比如:Ardour,Shutter等等)。目前,NuxDextop对CentOS/RHEL6|7可用。安装NuxDextop库依赖于EPEL库,所

CentOS上如何安装配置GitLab? GitLab是利用RubyonRails一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,

标签: centos7安全

本文链接地址:https://www.jiuchutong.com/biancheng/363256.html 转载请保留说明!

上一篇:CentOS如何安装XRDP实现远程桌面访问?(centos安装rclone)

下一篇:Centos6.6系统如何做profile?(centos 6.0)

  • 贷款取现金
  • 增值税加计抵减政策10%和15%
  • 增值税附加税税率是多少
  • 公司销户本金转到哪里
  • 一般纳税人可以开1%的发票吗
  • 小微企业开票多少算小规模纳税人
  • 国有资本及权益客观增减因素
  • 工程施工企业的账务处理
  • 所得税汇算清缴表在哪里打印
  • 会计档案交接怎么填写
  • 材料亏损怎么做会计分录?
  • 计提增值税怎么计提
  • 房租物业费摊销
  • 预收保费属于什么会计科目类别
  • 存货暂估入账会引起存货账面价值发生增减变动吗
  • 补税款的分录应该怎么写
  • 正常的成本利润是多少
  • 地产公司代办房产证
  • 运输公司购买运输车辆保险进什么科目
  • 个体户报税可以朋友代替吗
  • 无法读取金税盘时间版本怎么解决
  • 房地产土地成本计算公式
  • 月息和年息的换算公式等额本息
  • 固定资产折旧怎么做记账凭证
  • 债权转让的方式有哪几种
  • 制造业企业存货管理论文
  • 本企业领用外购原材料进项税要转出吗
  • 出售废品收入
  • 购买境外技术缴纳税费
  • mac硬盘的常见问题及解决
  • 百度有钱花借钱会上征信吗
  • 已付货款没有发票能做支出吗
  • PHP:imagesetbrush()的用法_GD库图像处理函数
  • 债转股税收优惠政策
  • 收到业绩补偿会扣税吗
  • 弃置费用预计负债递延所得税怎么处理
  • yolov1训练过程
  • php的oop的理解
  • 原材料入账价值包括代垫运费吗
  • vue使用百度地图三方标准地图清空后卡死
  • web前端期末大作业旅游页面
  • php实现简单论坛
  • lspv命令详解
  • 增值税专用发票抵扣期限
  • 淘宝运费险费用很高
  • mysql union和join
  • 购进车辆的会计分录
  • 法人与财务负责人不应为同一人
  • mysql数据库编码
  • 周转材料低值易耗品五五摊销法
  • 制造费用的核算内容包括什么
  • 为什么一般纳税人税率高
  • 跨期费用账务处理
  • 以融资租赁形式的车贷没还上可以拖车吗
  • 投入产出法如何申报
  • 研发支出的会计处理原则
  • 如何加强存货管理,提高存货周转率
  • 企业亏损为什么还继续
  • 用友软件冲销之前凭证怎么操作
  • 公司向法人借款需要交税吗
  • 个人所得税专项扣除需要交钱吗
  • 本期应征增值税销售额是什么意思
  • 财政补助结转余额在借方还是贷方
  • 事业单位不允许办企业是哪个文件要求的
  • win10高分辨率
  • centos怎么安装软件包
  • explorer.exe进程出错
  • 打开 itunes
  • linux就该这么
  • 网页字体大小调整方案
  • unity开发的小游戏
  • opengl oes纹理
  • shell脚本怎么导出
  • js中的$是什么意思
  • javascript的弹窗
  • jQuery插件是什么
  • Android ToolBar 的简单封装
  • 电子三方协议怎么下载
  • 北京市税务协会领导
  • 增值税发票开具后多长时间可在查询平台查询到?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设