Loading... ## 1. 放行所有端口 #### 1. 放行 1-65535 端口 ``` # 放行四种协议的 全部端口 firewall-cmd --permanent --add-port=1-65535/tcp firewall-cmd --permanent --add-port=1-65535/udp firewall-cmd --permanent --add-port=1-65535/sctp firewall-cmd --permanent --add-port=1-65535/dccp ```   #### 2. 重新载入防火墙配置 ``` firewall-cmd --reload ```  #### 3. 其他资料 ``` # firewalld中添加端口 firewall-cmd --zone=public --add-port=xxxx/tcp --permanent ``` | 参数 | 信息 | | ----------- | -------------------------------- | | zone | 作用域 | | xxxx/tcp | 端口/通讯协议 | | permanent | 永久生效 没有此参数重启后失效 | --- <span style='color:aqua'>Linux中常用防火墙软件有两个firewalld和iptables,以上命令只对firewall生效,如果无效,尝试关闭iptables</span> --- <div class="panel panel-default collapse-panel box-shadow-wrap-lg"><div class="panel-heading panel-collapse" data-toggle="collapse" data-target="#collapse-40854289962d164aac65834f757d2f432" aria-expanded="true"><div class="accordion-toggle"><span>firewall常用命令</span> <i class="pull-right fontello icon-fw fontello-angle-right"></i> </div> </div> <div class="panel-body collapse-panel-body"> <div id="collapse-40854289962d164aac65834f757d2f432" class="collapse collapse-content"><p></p> ``` # 查看所有放行端口 firewall-cmd --zone=public --list-ports # 禁止IP访问机器 firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address="192.168.0.1" drop' # 禁止一个IP段,比如禁止192.168.*.* firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address="192.168.0.1/16" drop' # 禁止一个IP段,比如禁止192.168.0.* firewall-cmd --permanent --add-rich-rule='rule family=ipv4 source address="192.168.0.1/24" drop' # 禁止机器IP从防火墙中删除 firewall-cmd --permanent --remove-rich-rule='rule family=ipv4 source address="192.168.0.1" drop' # 允许http服务(对应服务策略目录:/usr/lib/firewalld/services/) firewall-cmd --permanent --add-service=http # 关闭http服务(对应服务策略目录:/usr/lib/firewalld/services/) firewall-cmd --permanent --remove-service=http # 允许端口:3306 firewall-cmd --permanent --add-port=3306/tcp # 允许端口:1-3306 firewall-cmd --permanent --add-port=1-3306/tcp # 关闭放行中端口:3306 firewall-cmd --permanent --remove-port=3306/tcp # 查看firewall的状态 firewall-cmd --state # 查看防火墙规则(只显示/etc/firewalld/zones/public.xml中防火墙策略) firewall-cmd --list-all # 查看所有的防火墙策略(即显示/etc/firewalld/zones/下的所有策略) firewall-cmd --list-all-zones # 重新加载配置文件 firewall-cmd --reload # 更改配置后一定要重新加载配置文件 firewall-cmd --reload ``` <p></p></div></div></div> ## 2. 禁用防火墙 #### 1. 查看防火墙状态 ``` # 查看防火墙的运行状态 systemctl status firewalld.service ```  Active:<span style='color:green'> **active (running)**</span> 代表防火墙正在运行中 #### 2. 停止运行防火墙 ``` # 停止运行防火墙 systemctl stop firewalld.service # 查看防火墙运行状态 systemctl status firewalld.service ```  此时状态为 inactive (dead) 防火墙已经被干掉 #### 3. 禁止防火墙服务 ``` # 关闭防火墙服务开机自启 systemctl disable firewalld.service ```  #### 4. 其他资料 如果需要重新启用防火墙 ``` # 启动 systemctl start firewalld.service # 开机自启防火墙服务 systemctl enable firewalld.service ``` Last modification:May 28, 2021 © Allow specification reprint Support Appreciate the author AliPayWeChat Like 0 感谢大佬投喂 啾咪~