firewall-cmd命令

2023-02-25 17:27:03 浏览数 (2)

firewall-cmd命令

概念

firewalld 允许交互式修改 netfilter,允许防火墙独立于存储在 XML 中的永久配置而进行改变,所有对防火墙的配置修改都将在下次重载时生效并永久保存,重载命令为:firewall-cmd –reload,firewall中最上层的组织是区域,如果一个数据包经过firewall匹配到区域相关的网络接口或ip,那他就是该区域的一部分。

interface(接口):其是系统中的硬件和虚拟的网络适配器的名字(比如ens33网卡),所有的活动的接口都将被分配到区域,要么是默认的区域,要么是用户指定的一个区域。但是,一个接口不能被分配给多于一个的区域。(理解不了接口,把他换成网卡就好理解了) source(源):其是入站 IP 地址的范围,它也可以被分配到区域。一个源(或重叠的源)不能被分配到多个区域。

基本命令

代码语言:javascript复制
systemctl start firewalld.service
systemctl stop firewalld.service
systemctl restart firewalld.service
systemctl status firewalld.service   // 查看状态
systemctl enable firewalld.service   // 设置开机自启
systemctl disable firewall.service   // 关闭开机自启

firewall-cmd --zone=public --add-port=5000/tcp --perment //永久对外开放tcp/5000端口
firewall-cmd --zone=public --add-port=6000/udp --perment //永久对外开放udp/6000端口
firewall-cmd --zone=public --add-service=mysql           //对外开放mysql服务端口
firewall-cmd --enable ports=3386/tcp                     //开放3386端口
firewall-cmd --zone=public --remove-service=http         //阻止http端口
firewall-cmd --enable service=ssh                        //允许ssh服务通过
firewall-cmd --disable service=ssh
	
firewall-cmd --list-service                              //查看开放的端口服务
firewall-cmd --list-port                                 //查看开放的端口
firewall-cmd --reload                                    //重载firewall

进阶命令

firewall富规则

其可以定义更加强大的命令,其命令结构为:fiewall-cmd [–permanent] –add-rich-rule=”rich rule”

代码语言:javascript复制
# 限制特定IP访问
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.200" port protocol="tcp" port="80" reject"
# 接触刚才IP地址的限制
firewall-cmd --permanent --remove-rich-rule ="rule family="ipv4" source address="192.168.0.200" port protocol="tcp" port="80" reject"
# 限制整个IP段的访问
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.0.0.0/24" port protocol="tcp" port="80" reject"

# 查看设置的富规则
firewall-cmd --zone=public --list-rich-rules
.......
防火墙我也是略懂皮毛。还需学习。

0 人点赞