firewalld防火墙服务

简介: firewalld防火墙服务

firewalld防火墙服务

相较于传统的防火墙管理配置工具,firewalld支持动态更新技术并加入了区域(zone)的概念。简单来说区域就是firewalld预先准备了几套防火墙策略集合(策略模板),用户可以根据生产场景的不同选择合适的策略集合,从而实现防火墙策略之间的快速切换。

firewalld中常用的区域名称及策略规则

区域 默认策略规则
trusted 允许所有的数据包
home 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh,mdns,ipp-client,amba-client,dhcpv6-client服务相关,则允许流量
internal 等同于home区域
work 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh,ipp-client,dhcpv6-client服务相关,则允许流量
public 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh,dhcpv6-client 服务相关,则允许流量
external 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh服务相关,则允许流量
dmz 拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh服务相关,则允许流量
block 拒绝流入的流量,除非与流出的流量相关
drop 拒绝流入的流量,除非与流出的流量相关

终端管理工具

firewall-cmd是firewalld的防火墙配置管理工具的CLI(命令行)版本。他的参数一般是以长格式给出。

firewall-cmd命令中使用的参数以及作用

参数 作用
--get-default-zone 查询默认的区域名称
--set-default-zone=<区域名称> 设置默认的区域,使其永久生效
--get-zones 显示可用的区域
--get-services 显示预先定义的服务
--get-active-zones 显示当前正在使用的区域和网卡名称
--add-source= 将源于此ip或子网的流量导向指定的区域
--remove-source= 不再将源自此ip或子网的流量导向指定的区域
--add-interface=<网卡名称> 将源自该网卡的所有流量都导向某个指定区域。
--change-interface=<网卡名称> 将某个网卡与区域进行关联
--list-all 显示当前区域的网卡配置参数,资源,端口以及服务等信息
--list-all-zones 显示所有区域的网卡配置参数,资源,端口以及服务等信息
--add-service=<服务名> 设置默认区域允许该服务的流量
--add-port=<端口号/协议> 设置默认区域允许该端口的流量
--remove-service=<服务名> 设置默认区域不再允许该服务的流量
--remove-port=<端口号/协议> 设置默认区域不再允许该端口的流量
--reload 让永久生效的配置规则立即生效,并覆盖当前的配置规则
--panic-on 开启应急状况模式
--panic-off 关闭应急状况模式

:warning:使用firewalld配置的防火墙策略默认为运行时模式,又称当前生效模式,而随着系统的重启会失效。如果想让配置策略一直存在,就需要使用永久模式,方法就是添加 --permanent参数。

例::one:查看firewalld服务当前使用的区域

        firewall-cmd --get-default-zone

:two:查询enol6777728网卡在firewalld服务中的区域:

firewall-cmd --get-zone-of-interface=enol6777728

:three:把firewalld服务中enol6777728网卡的默认区域修改为external,并在系统重启后生效。分别查看当前与永久模式下的区域名称:

firewall-cmd -permanent --zone=external --change-interface=enol6777728
#success
firewall-cmd --get-zone-of-interface=enol6777728
#public
firewall-cmd --permanent --get-zone-of-interface=enol6777728
#external

:four:把firewalld服务的当前默认区域设置为public

firewall-cmd --set-default-zone=public

:five:启动firewall防火墙服务的应急状况模式,阻断一切网络连接

firewall-cmd --panic-on

:six:查询public区域是否允许请求ssh和https协议的流量

firewall-cmd --zone=public --query-service=ssh
#yes

:seven:把firewalld服务中请求https协议的流量设置为永久有效,并立即生效。

firewall-cmd  --zone=public --add-service=https
firewall-cdm  --permanent --zone=public --add-service=https
firewall-cmd  --reload

:eight:把firewalld服务中请求http协议的流量设置为永久拒绝,并立即生效

firewall-cmd --permanent  --zone=public --remove-service=http
#success
firewall-cmd --reload

:nine:把在firewalld服务中访问8080和8081端口的流量策略设置为允许,但仅当前生效

firewall-cmd --zone=public --add-port=8080-8081/tcp
#success
firewall-cmd --zone=public --list-ports
#8080-8081/tcp

:a:把原本访问本机端口888端口的流量转发到22端口,当前和长期有效

firewall-cmd --permanent --zone=public --add-forward-port=port=888:proto=tcp:toport=22:toaddr=目标ip地址
目录
相关文章
|
2天前
|
弹性计算 运维 Shell
|
2天前
|
运维 Linux 应用服务中间件
Centos7如何配置firewalld防火墙规则
Centos7如何配置firewalld防火墙规则
59 0
|
2天前
|
监控 网络协议 Linux
防火墙规则动态管理器 - firewalld
【1月更文挑战第11天】
53 0
|
2天前
|
存储 网络协议 Linux
Linux加强篇008-使用Iptables与Firewalld防火墙
山重水复疑无路,柳暗花明又一村
347 0
Linux加强篇008-使用Iptables与Firewalld防火墙
|
2天前
|
Linux 网络安全
CentOS7下操作iptables防火墙和firewalld防火墙
CentOS7下操作iptables防火墙和firewalld防火墙
119 3
|
5月前
|
Linux 网络安全 Nacos
麒麟v10系统,服务连接nacos提示连接不上9848端口是什么问题呢?服务和nacos都在一台机器,防火墙也都关闭了,telnet9848是ok的,但服务启动时就连不上9848。
麒麟v10系统,服务连接nacos提示连接不上9848端口是什么问题呢?服务和nacos都在一台机器,防火墙也都关闭了,telnet9848是ok的,但服务启动时就连不上9848。
249 1
|
6月前
|
网络协议 网络安全
如何屏蔽防火墙UDP服务支持
如何屏蔽防火墙UDP服务支持
74 0
|
6月前
|
网络安全
麒麟系统开启关闭防火墙服务
麒麟系统开启关闭防火墙服务
369 1
|
7月前
|
Ubuntu 网络协议 Linux
Linux: FirewallD和Iptables防火墙 使用
Linux: FirewallD和Iptables防火墙 使用
105 0
|
8月前
|
Linux 网络安全
百度搜索:蓝易云【Linux系统iptables与Firewalld防火墙区别?】
需要注意的是,iptables和Firewalld并不是完全互斥的,实际上Firewalld在内部仍然使用iptables来实现防火墙功能。Firewalld提供了更高级的管理接口和易用性,尤其适用于动态环境下的配置管理。而在一些特定的情况下,仍然可以直接使用iptables来进行更精细的配置和控制。
100 0