mik*_*ana 3 networking firewalld rhel7 centos7
我一直在使用 iptables,但直到最近才使用firewalld。我使用以下命令通过 firewalld 启用了端口 3000 TCP:
# firewall-cmd --zone=public --add-port=3000/tcp --permanent
Run Code Online (Sandbox Code Playgroud)
但是我无法访问端口 3000 上的服务器。从外部框:
telnet 178.62.16.244 3000
Trying 178.62.16.244...
telnet: connect to address 178.62.16.244: Connection refused
Run Code Online (Sandbox Code Playgroud)
没有路由问题:对于从端口 80 到端口 8000 的端口转发,我有一个单独的规则,它在外部工作正常。我的应用程序肯定也在监听端口:
Proto Recv-Q Send-Q Local Address Foreign Address State User Inode PID/Program name
tcp 0 0 0.0.0.0:3000 0.0.0.0:* LISTEN 99 36797 18662/node
Run Code Online (Sandbox Code Playgroud)
firewall-cmd
似乎也没有显示端口 -看看如何ports
是空的。你可以看到我前面提到的转发规则。
# firewall-cmd --list-all
public (default, active)
interfaces: eth0
sources:
services: dhcpv6-client ssh
ports:
masquerade: no
forward-ports: port=80:proto=tcp:toport=8000:toaddr=
icmp-blocks:
rich rules:
Run Code Online (Sandbox Code Playgroud)
但是我可以在 XML 配置文件中看到规则:
# cat /etc/firewalld/zones/public.xml
<?xml version="1.0" encoding="utf-8"?>
<zone>
<short>Public</short>
<description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description>
<service name="dhcpv6-client"/>
<service name="ssh"/>
<port protocol="tcp" port="3000"/>
<forward-port to-port="8000" protocol="tcp" port="80"/>
</zone>
Run Code Online (Sandbox Code Playgroud)
我还需要做什么才能允许在端口 3000 上访问我的应用程序?
另外:通过端口添加访问权限是否正确?或者我应该为我的应用程序创建一个 firewalld“服务”?
Mic*_*ton 11
使用该--permanent
标志会将您的更改写入持久配置,但不会写入运行配置。再次运行没有--permanent
标志的相同命令以使其立即生效。
从 RHEL 7.1和当前版本的 Fedora 开始,您还可以使用以下命令将运行配置复制到永久配置:
firewall-cmd --runtime-to-permanent
Run Code Online (Sandbox Code Playgroud)
奇怪的是,该规则似乎只写到配置文件中,并没有立即应用。我不得不重新加载防火墙:
firewall-cmd --reload
Run Code Online (Sandbox Code Playgroud)
在此之后,规则随即出现:
# firewall-cmd --zone=public --list-all
public (default, active)
interfaces: eth0
sources:
services: dhcpv6-client ssh
ports: 3000/tcp
masquerade: no
forward-ports: port=80:proto=tcp:toport=8000:toaddr=
icmp-blocks:
rich rules:
Run Code Online (Sandbox Code Playgroud)
现在可以访问该端口。
归档时间: |
|
查看次数: |
17600 次 |
最近记录: |