1.引言
Linux防火墙守护 firewalld 服务引入了一个信任级别的概念来管理与之相关联的连接与接口。它支持 ipv4 与 ipv6,并支持网桥,采用 firewall-cmd (command) 或 firewall-config(gui) 来动态的管理 kernel netfilter 的临时或永久的接口规则,并实时生效而无需重启服务。Firewall 能将不同的网络连接归类到不同的信任级别,Zone
提供了以下几个级别:
drop: 丢弃所有进入的包,而不给出任何响应
block: 拒绝所有外部发起的连接,允许内部发起的连接
public: 允许指定的进入连接
external: 同上,对伪装的进入连接,一般用于路由转发
dmz: 允许受限制的进入连接
work: 允许受信任的计算机被限制的进入连接,类似
workgroup
home: 同上,类似 homegroup
internal: 同上,范围针对所有互联网用户
trusted: 信任所有连接
2.启动,停止,查看状态
帮助命令
firewall-cmd —help
查看状态
firewall-cmd —state
启动
systemctl start firewalld
systemctl stop firewalld
systemctl status firewalld
重新载入配置
firewall-cmd —reload
3.查看端口开放状态
firewall-cmd —zone=public —permanent —listports
4.添加snet
firewall-cmd —permanent —direct —passthrough
ipv4 -t nat -A POSTROUTING -s 10.8.0.0/24 -j
SNAT —to-source 172.10.5.211
firewall-cmd —reload
5.查看域
查看默认域
firewall-cmd —get-default-zone
设置默认域
firewall-cmd —set-default-zone=区域名
查看所有的域
firewall-cmd —list-all-zones
firewall-cmd —get-zones
查看活动的域
firewall-cmd —get-active-zones
查看某个域
firewall-cmd —zone=home —list-all
6.查看服务
查看支持的服务
firewall-cmd —get-services
7.绑定接口
firewall-cmd —change-interface=ens1 —
zone=internal —permanent
firewall-cmd [—zone=
firewall-cmd —zone=public —changeinterface=
eth1 —permanent
8.开启net转发
打开net转发
firewall-cmd —permanent —zone=public —addmasquerade
检查是否允许 NAT 转发
firewall-cmd —query-masquerade
禁止防火墙 NAT 转发
firewall-cmd —remove-masquerad
9.端口转发
端口转发可以将指定地址访问指定的端口时,将流量转发至指定地
址的指定端口。转发的目的如果不指定 ip 的话就默认为本机,如
果指定了 ip 却没指定端口,则默认使用来源端口。
将80端口的流量转发至8080
firewall-cmd —add-forwardport=
port=80:proto=tcp:toport=8080
将80端口的流量转发至192.168.0.1
firewall-cmd —add-forwardport=
proto=80:proto=tcp:toaddr=192.168.0.1
将80端口的流量转发至192.168.0.1的8080端口
firewall-cmd —add-forwardport=
proto=80:proto=tcp:toaddr=192.168.0.1:toport
=8080