AWS VPC私有子网内的Jenkins是否可以访问GUI界面?
AWS VPC私有子网Jenkins UI访问排查及配置方案
1. 服务运行状态校验
首先登录到部署Jenkins的Amazon Linux EC2实例,执行以下操作确认服务正常:
- 检查Jenkins运行状态:
systemctl status jenkins- 如果服务未启动,执行
sudo systemctl start jenkins启动服务,如需开机自启额外执行sudo systemctl enable jenkins
- 如果服务未启动,执行
- 确认Jenkins端口正常监听:
ss -tulpn | grep 8080- 无输出的话检查Jenkins配置文件
/etc/sysconfig/jenkins中的JENKINS_PORT参数,确认监听端口符合预期,同时检查JENKINS_LISTEN_ADDRESS参数是否为0.0.0.0,若为127.0.0.1则仅允许实例本地访问,修改后需重启Jenkins服务生效。
- 无输出的话检查Jenkins配置文件
2. 网络访问规则校验
- 检查EC2实例关联的安全组入站规则:如果通过OpenVPN访问,需放通OpenVPN客户端网段的TCP 8080端口访问权限;如果通过堡垒机访问,需放通堡垒机私有IP的TCP 8080端口访问权限
- 检查EC2所在子网关联的网络ACL入站/出站规则:确认没有拦截8080端口的流量规则
- 检查Amazon Linux本地防火墙规则:执行
sudo iptables -L -n确认无拦截8080端口的规则,如有拦截可临时执行sudo iptables -I INPUT -p tcp --dport 8080 -j ACCEPT放通,正式环境建议配置持久化防火墙规则。
3. 访问方式配置
方式一:OpenVPN直连
确认OpenVPN客户端路由已经配置到Jenkins所在私有子网,直接在本地浏览器访问http://<Jenkins EC2私有IP>:8080即可。
方式二:堡垒机端口转发
如果使用堡垒机跳转访问私有子网资源,可通过SSH端口转发将Jenkins端口映射到本地:
- 本地执行端口转发命令:
ssh -L 8080:<Jenkins EC2私有IP>:8080 <堡垒机登录用户名>@<堡垒机公网IP> - 保持SSH会话不中断,在本地浏览器访问
http://localhost:8080即可打开Jenkins UI。
内容的提问来源于stack exchange,提问作者uni
相关产品推荐
相关产品推荐

