Firewalld防火墙

一、firewalld概述

Firewalld是centos 7系统自带的,和iptables一样,也是包过滤防火墙

Firewalld过滤是通过区域来进行配置

二、firewalld和iptables的区别

iptables主要是基于接口,来设置规则, 从而判断网络的安全性
firewalld是基于区域,根据不同的区域来设置不同的规则,从而保证网络的安全。与硬件防火墙的设置相类似

iptables 在 /etc/sysconfig/iptables 中储存配置
firewalld 将配置储存在 /etc/firewalld/(优先加载)和 /usr/lib/firewalld/(默认的配置文件)中的各种 XML 文件里

iptables是静态防火墙,满足条件才触发
firewalld是动态防火墙

三、firewalld防火墙预定义的9个区域

trusted(信任区) 所有流量都可以传入
public(公共区域) 允许ssh或者dhcpv6-client的流量传入,其他全部拒绝,也是firewalld的默认区域
external(外部区域) 允许ssh或者dhcpv6-client的流量传入,其他全部拒绝,默认通过此区域转发的ipv4流量地址,可以进行伪装
home(家庭区域) 允许ssh或者dhcpv6-client的流量传入,其他全部拒绝
internal(内部区域) 默认值与home区域的作用相同
work(工作区域) 允许ssh或者dhcpv6-client的流量传入,其他全部拒绝
DMZ(隔离区域/非军事区) 允许ssh,其他的预定义好的配置传入,其他全部拒绝
block(限制区域) 拒绝所有的流量
drop(丢弃区域) 所有流量都会丢弃,没有任何响应

四、firewalld防火墙的配置

[root@pup1 ~]# systemctl restart firewalld
[root@pup1 ~]# systemctl restart httpd

显示当前系统中的默认区域

显示默认区域内的所有规则

Firewalld防火墙_第1张图片

修改系统中的默认区域

查看区域内允许通过的服务

将服务添加到防火墙

将服务从防火墙中移除

一次性添加多个服务

临时添加,重启即失效

Firewalld防火墙_第2张图片

永久添加
[root@pup1 ~]# firewall-cmd --add-service=http --zone=public --permanent
success
[root@pup1 ~]# firewall-cmd --reload  #配置永久生效需要重新加载配置
[root@pup1 ~]# systemctl restart firewalld

永久删除

[root@pup1 ~]# firewall-cmd --remove-service=http --zone=public --permanent
success
[root@pup1 ~]# firewall-cmd --reload  #配置永久生效需要重新加载配置
[root@pup1 ~]# systemctl restart firewalld

添加端口

添加单个端口
[root@pup1 ~]# firewall-cmd --zone=public --add-port=80/tcp
添加多个端口
[root@pup1 ~]# firewall-cmd --zone=public --add-port={80,3306,21}/tcp

Firewalld防火墙_第3张图片

[root@pup1 ~]# firewall-cmd --zone=public --add-port=30-35/tcp

Firewalld防火墙_第4张图片

移除端口

[root@pup1 ~]# firewall-cmd --zone=public --remove-port=80/tcp

你可能感兴趣的:(linux)