centos 如何封掉udp 端口 命令

centos系统封堵udp端口,看似简单,实际操作中却可能遇到一些坑。我曾经因为疏忽,导致防火墙规则设置错误,结果服务瘫痪了一整天,才发现问题出在命令参数上。所以,正确的操作和细致的检查非常重要。

centos 如何封掉udp 端口 命令

最直接的方法是使用firewall-cmd命令。假设我们要封堵12345端口的UDP流量,正确的命令应该是:

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="0.0.0.0/0" port protocol="udp" port="12345" accept=no'

登录后复制

这条命令看起来有点复杂,让我们分解一下:

  • –permanent: 这部分至关重要,它确保防火墙规则永久生效,重启系统后依然有效。 我之前就因为漏掉这个参数,每次重启后都要重新配置,非常麻烦。
  • –add-rich-rule: 这表示我们添加的是一条“丰富”的规则,可以进行更精细的控制。 相比简单的–add-port,它提供了更大的灵活性。
  • rule family=”ipv4″: 指定规则应用于IPv4网络。如果你需要封堵IPv6的UDP流量,需要修改为”ipv6″。
  • source address=”0.0.0.0/0″: 这指定了源IP地址,0.0.0.0/0代表所有IP地址。如果你只想封堵特定IP地址的UDP流量,可以修改为具体的IP地址或IP地址段。例如,192.168.1.100或者192.168.1.0/24。
  • port protocol=”udp”: 明确指定协议为UDP。
  • port=”12345″: 指定要封堵的端口号。
  • accept=no: 这才是关键,它表示拒绝连接。 我之前犯的错误就是漏掉了这个参数,或者写成了accept=yes,结果端口依然开放。

执行完这条命令后,别忘了重新加载防火墙规则:

firewall-cmd --reload

登录后复制

验证是否成功封堵,可以使用netstat -anp | grep 12345命令查看该端口是否还有监听。如果没有监听,则说明封堵成功。

记住,在修改防火墙规则之前,最好先备份当前配置,以防万一出现问题可以恢复。 一个简单的备份方法是使用firewall-cmd –list-all命令将当前规则输出到一个文件。

最后,如果你需要开放某个端口,只需要将accept=no改为accept=yes,并修改其他参数来匹配你的需求即可。 切记,操作防火墙规则需要谨慎,任何错误都可能导致系统不可用,所以每次修改后都应该仔细检查并验证。

路由网(www.lu-you.com)您可以查阅其它相关文章!

未经允许不得转载:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权!路由网 » centos 如何封掉udp 端口 命令