Linux之selinux和防火墙

selinux(强化的linux)

传统的文件权限与账号的关系:自主访问控制,DAC;

以策略规则制定特定程序读取特定文件:强制访问控制,MAC

SELinux是通过MAC的方式来控制管理进程,它控制的主体是进程

主体(subject):就是进程

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

策略(policy):由于进程与文件数量庞大,因此SELinux会依据某些服务来制定基本的访问安全策略。

目前主要的策略有:

targeted:针对网络服务限制较多,针对本机限制较少,是默认的策略;

strict:完整的SELinux限制,限制方面较为严格

安全上下文(security context):主体能不能访问目标除了策略指定外,主体与目标的安全上下文必须 一致才能够顺利访问。

安全上下文用冒号分为四个字段:

identify:role:type:

身份标识(Identify):相当于账号方面的身份标识

角色(role):通过角色字段,可知道这个数据是属于程序、文件资源还是代表用户

类型(type):在默认的targeted策略中,Identify与role字段基本上是不重要的,重要的在于这 个类型字段。

最后一个字段是和MLS和MCS相关的东西,代表灵敏度,一般用s0、s1、s2来命名,数字代表灵敏 度的分级。数值越大、灵敏度越高。

selinux有三种模式

enforcing:强制模式,代表SELinux正在运行中,开始限制domain/type

permissive:宽容模式,代表SELinux正在运行中

disabled:关闭,SELinux并没有实际运行。

getenforce
#查看目前的模式
sestatus
#查看目前的selinux使用的策略
/etc/selinux/config
#查看和修改selinux策略的位置,改变策略之后需要重启
setenforce 0
#转换成permissive
setenforce 1
#转换成enforcing

#修改安全上下文
chcon -R -t -u -r 文件
chcon -R --reference=文件地址
#连同子目录同时修改(R),后面接安全上下文的类型字段(t),后面接身份识别(u),接角色(r)
semanage 

防火墙

Netfilter

即数据包过滤机制,真正使用规则干活的是内核的netfilter。

iptables

服务把用于处理或过滤流量的策略条目称之为规则,多条规则可以组成一个规则链,而规则链则依据数据包处理位置的不同进行分类:

在进行路由选择前处理数据包,用于目标地址转换(PREROUTING);

处理流入的数据包(INPUT);本机只需要修改这个

处理流出的数据包(OUTPUT);

处理转发的数据包(FORWARD);

在进行路由选择后处理数据包,用于源地址转换(POSTROUTING)

语法格式:iptables -t 表名 <-A/I/D/R> 规则链名 [规则号] -p 协议名 <-s 源IP/源子网> --sport 源端口  <-s源IP/源子网> --dport 目标端口 -j 动作

eg:禁止某个主机地址ssh远程登录该服务器,允许该主机访问服务器的web服务。服务器地址为 192.168.150.138,客户机地址:192.168.150.139

[root@localhost ~]# iptables -I INPUT -p tcp -s 192.168.150.139 --dport 22 -j 
REJECT
[root@localhost ~]# iptables -I INPUT -p tcp -s 192.168.150.139 --dport 80 -j 
ACCEPT

firewalld

firewalld 所提供的模式就可以叫做动态防火墙,firewalld支持动态更新技术并加入了区域的概念。区域就是firewalld预 先准备了几套防火墙策略集合(策略模板),用户可以选择不同的集合,从而实现防火墙策略之间的快速切换。

firewalld服务是默认的防火墙配置管理工具,拥有基于CLI(命令行界面)和基于 GUI(图形用户界面)的两种管理方式。firewall-config是图形化工具,firewall-cmd是命令行工具。

常见区域及策略

阻塞block拒绝流入的流量,除非与流出的流量有关
工作work拒绝流入的流量,除非与流出的流量有关
家庭home拒绝流入的流量,除非与流出的流量有关
公共public不相信任何计算机,只选择接收传入的网络连接
隔离DMZ非军事区域,缓冲作用,接收传入网络连接
信任trusted允许所有
丢弃drop拒绝流入的流量,除非与流出的流量有关
内部internal=home
外部external拒绝流入的流量,除非与流出的流量有关;与ssh有关则允许

firewalld服务软件包:

firewall-config-0.3.9-14.el7.noarch

firewalld-0.3.9-14.el7.noarch

firewalld命令行的主要参数:

--get-services预先定义的服务
--add-service=服务名默认区域允许该服务的流量
--add-port=端口号/协议默认区域允许该端口的流量

在使用firewalld前需要停止iptables:systemctl stop iptables

重启防火墙服务:systemctl restart firewalld

富规则:允许所有,禁止某个ip访问

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JioJio~z

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值