如何使用firewall-cmd 在 Centos 7 防火墙firewalld 中打开 UDP 端口?

如何使用firewall-cmd 在 Centos 7 防火墙firewalld 中打开 UDP 端口?

Centos 7 服务器。尝试为 UDP、nodejs wswebsockets 打开端口 3000。有什么想法吗?我被困住了!我查看了其他几篇 SO 帖子,但无济于事。谢谢,Keith =)

  • 如果停止防火墙,udp 单播就可以正常工作
  • 当我启动防火墙时,websocket 连接被拒绝,并且我收到 ERR_CONNECTION_REFUSED
  • 默认区域是public

此处端口似乎已启用:

sh-4.2# firewall-cmd --list-all
public (default, active)
  interfaces: enp3s0
  sources: 
  services: dhcpv6-client ssh
  ports: 3000/udp 8080/tcp
  masquerade: no
  forward-ports: 
  icmp-blocks: 
  rich rules: 

从同一网络上的 Mac:

Mac> nc -uz 192.168.1.101 3000
Connecion to 192.168.1.101 port 3000 [udp/hbci] succeeded!
  • ping 192.168.1.101 没有问题

我发现的唯一可疑的事情是这个:

在此处输入图片描述

答案1

遇到了同样的问题,通过运行修复了它:

firewall-cmd --permanent --add-port=3000/udp

然后重新启动防火墙服务

systemctl restart firewalld

最后重新启动了我的 nodjs 应用程序,现在它可以按预期运行

相关内容