firewalld
的基本使用
启动:systemctl start firewalld
查看状态:systemctl status firewalld
设置开机启动:systemctl enable firewalld
禁用,禁止开机启动:systemctl disable firewalld
停止运行:systemctl stop firewalld
firewalld-cmd
基本命令
查看版本:firewall-cmd --version
查看帮助:firewall-cmd --help
显示状态:firewall-cmd --state
查看所有打开的端口:firewall-cmd --list-ports
,或者查看 public 区域开放端口firewall-cmd --zone=public --list-ports
更新防火墙规则:firewall-cmd --reload
更新防火墙规则,重启服务:firewall-cmd --completely-reload
查看已激活的 Zone 信息:firewall-cmd --get-active-zones
查看eth0
网卡所属区域:firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态:firewall-cmd --panic-off
查看是否拒绝:firewall-cmd --query-panic
- 信任级别,通过 Zone 的值指定
drop
: 丢弃所有进入的包,而不给出任何响应block
: 拒绝所有外部发起的连接,允许内部发起的连接public
: 允许指定的进入连接external
: 同上,对伪装的进入连接,一般用于路由转发dmz
: 允许受限制的进入连接work
: 允许受信任的计算机被限制的进入连接,类似 workgrouphome
: 同上,类似 homegroupinternal
: 同上,范围针对所有互联网用户trusted
: 信任所有连接
firewall
开启和关闭端口
以下都是指在 public 的 zone 下的操作,不同的 Zone 只要改变 Zone 后面的值就可以
永久添加指定开放端口:firewall-cmd --zone=public --add-port=80/tcp --permanent
(--permanent
永久生效,没有此参数重启后失效)
开放端口段firewall-cmd --permanent --add-port=10000-12000/tcp
屏蔽网段:firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='183.69.137.1/24' reject"
允许指定 ip 访问端口:firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.1.1/24' port protocol='tcp' port='80' accept"
重新载入:firewall-cmd --reload
(修改防火墻后,不重载就不生效)
查看指定端口状态:firewall-cmd --zone=public --query-port=80/tcp
(开放返回 yes,否则 no)
删除:firewall-cmd --zone=public --remove-port=80/tcp --permanent
注意:accept 是允许,reject 表示拒绝,drop 是直接丢弃(对方可能超时)- 管理服务
以 smtp 服务为例, 添加到 work zone
添加:firewall-cmd --zone=work --add-service=smtp
查看:firewall-cmd --zone=work --query-service=smtp
删除:firewall-cmd --zone=work --remove-service=smtp
- 配置 IP 地址伪装
查看:firewall-cmd --zone=external --query-masquerade
打开:firewall-cmd --zone=external --add-masquerade
关闭:firewall-cmd --zone=external --remove-masquerade
- 端口转发
打开端口转发,首先需要打开 IP 地址伪装
firewall-cmd --zone=external --add-masquerade
转发tcp
22 端口
至3753
:
firewall-cmd --zone=external --add-forward-port=22:porto=tcp:toport=3753
转发端口数据至另一个 IP 的相同端口:
firewall-cmd --zone=external --add-forward-port=22:porto=tcp:toaddr=192.168.1.112
转发端口数据至另一个 IP 的 3753 端口:
firewall-cmd --zone=external --add-forward-port=22:porto=tcp::toport=3753:toaddr=192.168.1.112
firewall操作基本说明备忘
你左我右啊在
那天发布在信息安全栏目,
那天又修改过,
到今天为止已经被浏览过37585次了。