防火墙 firewalld 的常用命令

Posted hkgan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了防火墙 firewalld 的常用命令相关的知识,希望对你有一定的参考价值。

目录导航


  firewalld是Linux中最长用的防火墙之一。初次配置后,后面基本没有什么多大的变动。但是想再次想要添加对应的防火墙断开,命令又忘记了。现对常用命令做一简单的汇总。方便学习和使用。


基本用法

 

systemctl start firewalld    #启动

systemctl stop firewalld    #关闭

systemctl status firewalld    #查看状态 

systemctl disable firewalld    #开机禁用

systemctl enable firewalld    #开机启用

systemctl使用

 

systemctl start firewalld.service    #启动一个服务

systemctl stop firewalld.service    #关闭一个服务

systemctl restart firewalld.service    #重启一个服务

systemctl list-unit-files|grep enabled    #查看已启动的服务列表

systemctl --failed    #查看启动失败的服务列表

配置firewalld-cmd

firewall-cmd --version    #查看防火墙版本:

firewall-cmd --state    #显示状态:

firewall-cmd --zone=public --list-ports    #查看所有打开的端口:

firewall-cmd --reload    #更新防火墙规则:

firewall-cmd --panic-on    #拒绝所有包:

firewall-cmd --panic-off    #取消拒绝状态:

端口的开放关闭操作

firewall-cmd --zone=public --add-port=80/tcp --permanent    #添加(--permanent永久生效,没有此参数重启后失效)

firewall-cmd --reload    #重新载入

firewall-cmd --zone= public --query-port=80/tcp    #查看端口是否开放

firewall-cmd --zone= public --remove-port=80/tcp --permanent    #删除已开放的端口

firewall-cmd --reload    #重启防火墙使设定生效

对某个IP开放多个端口:

#对192.168.123.73P开放多个端口
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.123" port protocol="tcp" port="1:65535" accept"
# 重启防火墙使设定生效
firewall-cmd --reload

 

firewalld常用命令

重载防火墙配置

firewall-cmd --reload

--permanent代表永久开启/关闭 端口,不加代表临时,每次添加了永久的之后运行上面的reload命令 ,用了上面的reload命令临时添加的会失效

查看防火墙,添加的端口也可以看到

firewall-cmd --list-all

添加单个端口

firewall-cmd --permanent --zone=public --add-port=81/tcp

添加多个端口

firewall-cmd --permanent --zone=public --add-port=8080-8083/tcp

删除某个端口

firewall-cmd --permanent --zone=public --remove-port=81/tcp

查看所有的防火墙策略(即显示/etc/firewalld/zones/下的所有策略)

firewall-cmd --list-all-zones 

iptables和firewalld对比(实现同一个功能)

iptables -A INPUT -s 10.100.103.15  -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s 10.104.101.0/22  -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP
iptables -A INPUT -s 10.100.103.12 -p udp --dport 123 -j ACCEPT
iptables -A INPUT -p udp --dport 123 -j DROP

firewall-cmd --add-rich-rule="rule family="ipv4" source address="10.100.103.12/32" port protocol="udp" port="123" accept" --permanent
firewall-cmd --add-rich-rule="rule family="ipv4" source address="10.104.101.0/22" port protocol="tcp" port="22" accept" --permanent
firewall-cmd --add-rich-rule="rule family="ipv4" source address="10.100.103.15/32" port protocol="tcp" port="22" accept" --permanent
firewall-cmd --remove-service=ssh --permanent
firewall-cmd --reload

以上是关于防火墙 firewalld 的常用命令的主要内容,如果未能解决你的问题,请参考以下文章

防火墙常用命令firewalld

firewalld常用命令

CentOS-7防火墙配置信息(firewalld)

Firewalld防火墙

通过区域设置不同规则 Firewalld防火墙基础

CentOS7防火墙之--firewalld