Jenkins系统管理页面错误:反向代理设置有误

Jenkins报错截图如下

场景情况

  • 笔者在Linux服务器上部署Jenkins服务
  • 使用1Panel(宝塔的竞品)管理Linux服务器
  • 在上面的应用商店安装Jenkinsdocker容器化方式)
  • 如下

这样的话,通过http的ip端口,就能够访问这个Jenkins服务了,比如:ashuai.site:29876

而后,为了使用ssl证书,笔者使用nginx在29877端口上,做一层代理,把请求转发到29876上的运行的Jenkins服务

如下

nginx 复制代码
# 监听29877端口,处理HTTPS请求
server {
    listen 29877 ssl;
    server_name ashuai.site;
    
    # SSL证书
    ssl_certificate /etc/nginx/certs/ashuai.site.pem;
    ssl_certificate_key /etc/nginx/certs/ashuai.site.key;

    # SSL优化
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;
    ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;

    # 反向代理到现有Jenkins服务
    location / {
            proxy_pass http://localhost:29876;  # Jenkins服务

            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header X-Forwarded-Host $host;
            proxy_set_header X-Forwarded-Port $server_port;

            # 支持Jenkins控制台WebSocket
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
    }
}

于是,就可以通过HTTPS的方式访问Jenkins服务做一些CICD的操作了,如下

但是却看到一个报错,告知反向代理错误

这个反向代理错误,并不是nginx配置的错误(容易让人误解)而是,Jenkins初始化安装的时候,使用服务器的ip和后续的域名对应错误导致的

解决方案

我们只需要把Jenkins LocationJenkins URL修改成当前域名端口访问方式即可

实际上,如果提前打开浏览器控制,我们已经能够看到对应的报错提示了

在Jenkins的系统管理页面,点击 系统配置

找到Jenkins LocationJenkins URL

修改成

这样的话,控制台也不会报错了,问题解决

A good memory is better than a bad pen. Record it down...

Jenkins安全漏洞是一个让人有些困扰的问题,笔者建议,可以部署在内网

如果是云服务器的话,可以通过云服务器的安全组的CIDR,设置仅自己的ip能够访问,提高一下安全策略,如下

推荐 1Panel(现代化、开源的Linux服务器运维管理面板)

个人感觉比宝塔更简约好用 1panel.cn/

相关推荐
测试老哥10 小时前
UI自动化测试—Jenkins配置优化
自动化测试·软件测试·python·测试工具·ui·jenkins·测试用例
weixin_3077791313 小时前
Jenkins Pipeline共享库(Shared Library)完全指南
运维·开发语言·自动化·jenkins·etl
一勺菠萝丶13 小时前
Jenkins 中如何给角色分配多个不同名称的项目(Role 权限实战)
java·运维·jenkins
weixin_3077791313 小时前
Jenkins Font Awesome API插件:现代化插件界面的图标引擎
开发语言·前端·自动化·jenkins
weixin_4481132213 小时前
Jenkins备份及回滚方式
运维·jenkins
真上帝的左手13 小时前
13. 搜索引擎-ES-ES集群
elasticsearch·搜索引擎·jenkins
头发多的码农13 小时前
jenkins docker ssh发布效率提升
运维·docker·jenkins
qinyia13 小时前
如何通过WisdomSSH在服务器执行一些运维任务,例如部署jenkins
运维·服务器·jenkins
小白不想白a13 小时前
Jenkins
运维·jenkins
小安同学iter1 天前
天机学堂-优惠券功能-day09(七)
java·spring cloud·微服务·jenkins·优惠券·天机学堂