Linux防火墙——Firewalld-cmd命令

蹲街弑〆低调 提交于 2019-12-06 08:48:42

Firewalld字符管理工具

1、Firewalld防火墙维护命令

1、防火墙进程操作

systemctl start firewalld

[root@localhost ~]# systemctl start firewalld 

设置 firewalld 为开机自启动
systemctl status firewalld

[root@localhost ~]# systemctl enable firewalld 

如果 firewalld 正在运行,通过 systemctl status firewalld 或 firewall-cmd 命令 可以查看其运行状态
systemctl restart firewalld

[root@localhost ~]# systemctl status firewalld

在这里插入图片描述
关闭防火墙:
systemctl stop firewalld

2、防火墙管理操作

irewall-cmd命令
支持全部防火墙特性
对于状态和查询模式,命令只返回状态,没有其他输出
–permanent参数:携带该参数表示永久配置,否则表示运行时配置
[–zone=] 选项:不携带此选项表示针对默认区域操作,否则针对指定区域操作

防火墙重载配置命令

1、firewall-cmd - --–reload

[root@localhost ~]# firewall-cmd --reload

在这里插入图片描述
2、firewall-cmd --complete-reload ###状态信息将会丢失

[root@localhost ~]# firewall-cmd --complete-reload 

在这里插入图片描述
3、systemctl restart firewalld

查询预定义信息命令

1、查询预定义信息命令

[root@localhost ~]# firewall-cmd --get-zones

在这里插入图片描述
2、查看预定义的服务

[root@localhost ~]# firewall-cmd --get-services

在这里插入图片描述
3、查看预定义的ICMP类型

[root@localhost ~]# firewall-cmd --get-icmptypes 

在这里插入图片描述

Firewalld区域操作命令

1、显示网络连接或接口的默认区域

[root@localhost ~]# firewall-cmd --get-default-zone 

在这里插入图片描述
2、设置网络连接或接口的默认区域为internal

[root@localhost ~]# firewall-cmd --set-default-zone=internal 

在这里插入图片描述
3、显示已激活的所有区域 ##激活的条件:区域至少一个或一个源地址/网段

[root@localhost ~]# firewall-cmd --get-active-zones 

在这里插入图片描述
4、显示ens33接口绑定的区域

[root@localhost ~]# firewall-cmd --get-zone-of-interface=ens33 

在这里插入图片描述
5、为ens33接口绑定work区域

[root@localhost ~]# firewall-cmd --zone=work  --add-interface=ens33 

在这里插入图片描述
6、为internal区域更改绑定的网络接口ens33

[root@localhost ~]# firewall-cmd --zone=internal --change-interface=ens33

在这里插入图片描述
7、为internal区域删除绑定的网络接口ens33

[root@localhost ~]# firewall-cmd --zone=internal --remove-interface=ens33

在这里插入图片描述
8、查询internal区域中是否包含接口ens33

[root@localhost ~]# firewall-cmd --zone=internal --query-interface=ens33 

在这里插入图片描述
9、显示所有区域及其规则

[root@localhost ~]# firewall-cmd --list-all-zones 

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
10、显示internal区域的所有规则

[root@localhost ~]# firewall-cmd --zone=internal --list-all 

在这里插入图片描述
11、显示默认区域的所有规则

[root@localhost ~]# firewall-cmd --list-all

在这里插入图片描述

命令总结

选项 说明
–get-default-zone 显示网络连接或接口的默认区域
–set-default-zone=" zone " 设置网络连接或接口的默认区域
–get-active-zones 显示已激活的所有区域
–get-zone-of-interface=" interface " 显示指定接口绑定的区域
–zone=" zone " --add-interface=" interface " 为指定接口绑定区域
–zone=" zone " --change-interface=" interface " 为指定的区域更改绑定的网络接口
–zone=" zone " --remove-interface=" interface " 为指定的区域删除绑定的网络接口
–query-interface=" interface " 查询区域中是否包含某接口
–list-all-zones 显示所有区域及其规则
[–zone=" zone "] --list-all 显示所有指定区域的所有规则

Firewalld服务操作命令

1、显示internal区域内允许访问的所有服务

[root@localhost ~]# firewall-cmd --zone=internal --list-services

在这里插入图片描述
2、为public区域设置允许访问SMTP服务

[root@localhost ~]# firewall-cmd --zone=public --add-service=smtp

在这里插入图片描述
3、删除internal区域中的SSH服务

[root@localhost ~]# firewall-cmd --zone=internal --remove-service=ssh

在这里插入图片描述
4、查询internal区域中是否启用了SSH服务

[root@localhost ~]# firewall-cmd --zone=internal --query-service=ssh

在这里插入图片描述

命令总结

选项 说明
[–zone=“ zone "] --list-services 显示指定区域内允许访问的所有服务
[–zone=“ zone "] --add-service= 为指定区域设置允许访问的某项服务
[–zone=" zone “] --remove-service=” service " 删除指定区域已设置的允许访问的某项服务
[–zone=" zone “] --query-service=” service " 查询指定区域中是否启用了某项服务

Firewalld端口操作命令

1、显示internal区域内允许访问的所有端口号

[root@localhost ~]# firewall-cmd --zone=internal --list-ports

在这里插入图片描述
2、启用interna区域22端口的TCP协议组合

[root@localhost ~]# firewall-cmd --zone=internal --add-port=22/tcp --timeout=5m

在这里插入图片描述
–timeout=5m:表示5分钟后删除该端口,多用于测试目的

3、禁用internal区域22端口的TCP协议组合

[root@localhost ~]# firewall-cmd --zone=internal --remove-port=22/tcp

在这里插入图片描述
4、查询internal区域中是否启用了22端口和TCP协议组合

[root@localhost ~]# firewall-cmd --zone=internal --query-port=22/tcp

在这里插入图片描述

命令总结

选项 说明
[–zone=" zone "] --list-ports 显示指定区域内允许访问的所有端口号
[–zone=" zone “] --add-port=” port “[-” port “]/” protocol " [–timeout=" seconds "] 启用区域端口和协议组合,可选配置超时时间
[–zone=" zone “] --remove-port=” port "[- ” port “]/ " protocol” 禁用区域端口和协议组合
[–zone=" zone “] --query-port=” port “[-” port"]/" protocol " 查询区域中是否启用了端口和协议组合

Firewalld阻塞ICMP操作命令

1、显示work区域内阻塞的所有ICMP类型

[root@localhost ~]# firewall-cmd --zone=work --list-icmp-blocks

在这里插入图片描述
2、为work区域设置阻塞echo-reply类型的ICMP

[root@localhost ~]# firewall-cmd --zone=work --add-icmp-block=echo-reply

在这里插入图片描述
3、删除work区域已阻塞的echo-reply类型的ICMP

[root@localhost ~]# firewall-cmd --zone=work --remove-icmp-block=echo-reply

在这里插入图片描述
4、查询work区域的 echo-request类型的ICMP 是否阻塞

[root@localhost ~]# firewall-cmd --zone=work --query-icmp-block=echo-request

在这里插入图片描述

命令总结

选项 说明
[–zone=" zone "] --list-icmp-blocks 显示指定区域内阻塞的所有ICMP类型
[–zone=" zone “] --add-icmp-block=” icmptype “ 为指定区域设置阻塞的某项ICMP类型
[–zone=" zone “] --remove-icmp-block=” icmptype " 删除指定区域已阻塞的某项ICMP类型
[–zone=" zone “] --query-icmp-block=” icmptype " 查询指定区域的 ICMP 阻塞功能
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!