无法访问运行Jenkins服务的公网IP,配置8080端口防火墙规则仍连接失败
Jenkins公网无法访问问题解决方案
直接诱因
你配置的HTTP_HOST=127.0.0.1是导致公网无法访问的核心原因,该配置会限制Jenkins仅监听服务器本地环回地址的请求,只有服务器本机可以访问Jenkins服务,公网流量无法被Jenkins接收。
修复步骤
- 修改Jenkins配置文件:打开
/etc/default/jenkins,将HTTP_HOST=127.0.0.1修改为HTTP_HOST=0.0.0.0,该配置会让Jenkins监听服务器所有网卡的请求,包含公网网卡的流量。 - 重启Jenkins服务使配置生效,执行命令:
systemctl restart jenkins - 验证监听配置是否生效,执行命令:
ss -tulnp | grep jenkins,确认输出结果中存在0.0.0.0:8080的监听记录即可。 - 检查服务器本地防火墙规则:除了云服务商控制台的防火墙/安全组规则外,需要确认服务器内部的iptables、ufw等本地防火墙是否放通了8080端口的TCP入站流量:
- ufw防火墙执行命令:
ufw allow 8080/tcp - iptables防火墙执行命令:
iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
- ufw防火墙执行命令:
- 验证公网连通性:在本地设备执行
telnet 34.125.119.106 8080,如果端口连通正常,即可直接通过公网地址访问Jenkins服务。
其他排查点
如果执行上述步骤后仍然无法访问,可以额外排查两个场景:
- 确认云服务器的公网IP
34.125.119.106确实绑定在当前部署Jenkins的服务器上,无绑定错误 - 部分运营商会封禁8080等常用端口的公网流量,可尝试将Jenkins端口修改为18080这类非常用端口,同步放通防火墙规则后测试访问。
内容的提问来源于stack exchange,提问作者soul king
相关产品推荐
相关产品推荐

