firewall-cmd 提供了一个动态管理的防火墙,支持网络/防火墙区域来定义网络连接或接口的信任级别。它支持 IPv4、IPv6 防火墙设置和以太网网桥,并将运行时和永久配置选项分开。它还支持服务或应用程序直接添加防火墙规则的接口。
firewall-cmd [OPTIONS...]-h, --help:显示帮助信息
-V, --version:显示命令的版本信息,该命令不能和其他命令一起使用
-q, --quiet:不打印状态信息
实例:
[root@S5 ~]# firewall-cmd -V
0.5.3
[root@S5 ~]# firewall-cmd -h
Usage: firewall-cmd [OPTIONS...]
General Options
...状态选项
--state: 显示firewalld的状
--reload:不中断服务的重新加
--complete-reload:中断所有连接的重新加
--runtime-to-permanent:将当前防火墙的规则永久保存
--check-config:检查配置正确性
实例:
[root@S5 ~]# firewall-cmd --state
running
[root@S5 ~]# firewall-cmd --check-config
success--get-log-denied:获取记录被拒绝的日志
--set-log-denied=<value>:设置记录被拒绝的日志,只能为 'all','unicast','broadcast','multicast','off' 其中的一个
--zone:作用域
--add-port:添加端口,格式为:端口/通讯协议,例如:8080/tcp
--remove-port:删除端口,格式为:端口/通讯协议,例如:8080/tcp
--permanent :永久生效,没有此参数重启后失效
--list-all:查看防火墙,添加的端口也可以看到
--list-services:显示当前服务
(1)启动/停止 firewalld.service 服务
# 查看防火墙状态
[root@S5 ~]# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: active (running) since 六 2019-06-15 15:59:31 CST; 8 months 12 days ago
Docs: man:firewalld(1)
Main PID: 7599 (firewalld)
Tasks: 2
Memory: 24.8M
CGroup: /system.slice/firewalld.service
# 启动防火墙
[root@S5 ~]# systemctl start firewalld.service
# 停止防火墙
[root@S5 ~]# systemctl stop firewalld.service
# 重启防火墙
[root@S5 ~]# systemctl restart firewalld.service(2)查询 80 端口是否开启
[root@S5 ~]# firewall-cmd --query-port=80/tcp
no
[root@S5 ~]# firewall-cmd --query-port=8080/tcp
yes上面,80端口没有开启,8080端口已经开启。
(3)添加端口到防火墙,格式:端口/通讯协议
# 添加一个端口
[root@S5 ~]# firewall-cmd --permanent --zone=public --add-port=3306/tcp
success
# 添加一个端口范围
[root@S5 ~]# firewall-cmd --permanent --zone=public --add-port=9000-9090/tcp
success(4)移除指定端口号
# 从防火墙中移除8080端口
[root@S5 ~]# firewall-cmd --permanent --zone=public --remove-port=8080/tcp
success(5)查看当前添加到防火墙的端口信息
[root@S5 ~]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: ens33
sources:
services: ssh dhcpv6-client
ports: 8080/tcp 8081/tcp 8088/tcp 9876/tcp 10909/tcp 10911/tcp 10912/tcp 12581/tcp 3306/tcp 9000-9090/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules: