You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法通过公网IP及端口访问EC2实例上的Jenkins求解决方案

解决方案与排查步骤
  • 检查Jenkins监听配置
    登录EC2实例终端,执行命令查看Jenkins的监听状态:

    ss -tulpn | grep jenkins
    

    如果输出显示监听地址为127.0.0.1:8080,说明Jenkins只允许本地访问,需修改配置:

    • Debian/Ubuntu系统:编辑/etc/default/jenkins,找到JENKINS_ARGS行,修改为:
      JENKINS_ARGS="--httpListenAddress=0.0.0.0 --httpPort=8080"
      
    • RHEL/CentOS系统:编辑/etc/sysconfig/jenkins,修改JENKINS_LISTEN_ADDRESS为0.0.0.0
      修改后重启Jenkins服务:
    sudo systemctl restart jenkins
    
  • 检查VPC网络ACL规则
    安全组放行流量后,VPC的网络ACL(NACL)可能仍有拦截:

    1. 进入EC2控制台,找到实例所属的子网
    2. 打开对应子网的网络ACL配置页面
    3. 确保入站规则允许8080/tcp(或所有端口)的流量,出站规则允许临时端口(通常1024-65535)的响应流量
  • 检查实例内部防火墙
    实例自带的防火墙可能阻止8080端口:

    • 对于firewalld(RHEL/CentOS):
      # 查看已开放端口
      sudo firewall-cmd --list-all
      # 开放8080端口并永久生效
      sudo firewall-cmd --add-port=8080/tcp --permanent
      sudo firewall-cmd --reload
      
    • 对于iptables:
      # 查看规则
      sudo iptables -L
      # 若有拦截规则,添加允许8080的规则
      sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
      sudo service iptables save
      
  • 验证公网IP与内部访问

    1. 确认EC2实例的公网IPv4地址是否为浏览器中输入的地址(重启实例后公网IP可能变更)
    2. 在实例终端内执行curl http://localhost:8080,若能返回Jenkins页面内容,说明服务正常,问题出在网络链路;若无法返回,查看Jenkins日志排查服务异常:
      journalctl -u jenkins.service
      # 或查看日志文件
      cat /var/log/jenkins/jenkins.log
      

内容的提问来源于stack exchange,提问作者swayansiddha dash

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 05:52:40