问题:一直用得好好的端口,突然在某一时间不可以访问这个端口了 ,在服务器录入外网地址访问如下图:
先按正常流程检测:
1 先云服务商的管理网站查看防火墙端口是否开放
看了正常开放了端口,如下图:
2 检测服务器防火墙状态
查看防火墙服务状态
systemctl status firewalld
防火墙服务没有执行,如图:
查看防火墙状态
firewall-cmd --list-all
服务器内的防火墙没有运行 ,如下图:
服务器内的防火墙没有运行,理论上不受影响。
奇怪,ip没有错,配置设置也没有错,这个端口就是访问不到!
解决:
防火墙不运行,也要放行端口
1 增加放行61616端口
iptables -A INPUT -p tcp --dport 61616 -j ACCEPT
查看放行的端口
iptables -nL
执行后,看到已放行61616端口,如图:
执行telnet xx.xx.xx.xx 61616 访问测试验证
连接成功访问,如图:
总结:
从上面的问题发现在内部防火增加放行规则之后具然可以访问了,也就是说linux防火墙关闭状态仍然会发生着作用。
在 CentOS 系统中,iptables 是一个用于配置和管理防火墙规则的工具。即使 iptables 服务未启用,防火墙规则配置仍然可以生效,这是因为 CentOS 7 及更高版本引入了 firewalld 作为默认的防火墙管理工具,而 firewalld 基于 iptables。
firewalld 是一个动态防火墙管理器,可以通过一系列预定义的服务和服务组,简化防火墙规则的管理。它会在后台使用 iptables 来实际管理防火墙规则。如果你配置了防火墙规则,即使 iptables 服务未启用,firewalld 仍会生效并应用你的规则。