步骤一:备份并临时关闭 Jenkins 安全认证
忘记 Jenkins 管理员密码这事儿,说大不大,但处理起来得格外小心。第一步永远是备份,这是所有运维操作的黄金法则。
1、备份原始配置文件(强烈推荐)
别嫌麻烦,先用 cp -a 命令完整备份一下配置文件,权限和时间戳这些属性也得原样保留:
sudo cp -a /var/lib/jenkins/config.xml /var/lib/jenkins/config.xml.bak.$(date +%Y%m%d)
执行后,你会得到一个类似 config.xml.bak.20260117 的备份文件,日期戳能帮你快速识别版本。
2、编辑 Jenkins 主配置文件
sudo vim /var/lib/jenkins/config.xml
3、移除安全域配置(Security Realm)
接下来是关键操作。在打开的配置文件中,找到并删除下面这段关于安全域的配置块:
true false

4、移除授权策略(Authorization Strategy)
同样地,再找到并删除授权策略的配置部分:
true
⚠️ 这里需要特别提醒:删除这两部分后,Jenkins 将暂时允许匿名访问。这只是一个临时性的恢复手段,切记不可长期保持此状态,否则会带来严重的安全风险。

步骤二:重启 Jenkins 服务
sudo systemctl restart jenkins
保存配置文件后,重启 Jenkins 服务让改动生效。等待服务完全启动后,直接访问你的 Jenkins Web 界面(例如 https://)。此时,你会发现系统不再要求登录,可以直接进入了。
步骤三:重置 admin 用户密码
现在,我们进入了“无密码”的管理状态,是时候把密码找回来了。
1、进入 系统管理(Manage Jenkins)

2、点击 全局安全配置(Configure Global Security)
- 在 安全域(Security Realm) 部分,重新选择:
- Jenkins 专有用户数据库(Jenkins’ own user database)

(可选)为了方便,可以暂时勾选上 允许用户注册(Allow users to sign up)。
3、保存配置。
4、返回 系统管理 → 用户管理(Manage Users)

5、在用户列表中找到 admin 用户,点击其右侧的 设置(Configure)

6、最后一步,在 密码(Password) 字段中输入你的新密码,确认后保存即可。

步骤四:恢复安全配置
密码改好了,但事情还没完。为了系统安全,必须把刚才临时关闭的安全配置重新打开。
再次进入 系统管理 → 全局安全配置。
安全域(Security Realm):保持为 Jenkins 专有用户数据库 即可。
授权策略(Authorization):这里需要根据你的实际环境来选择:
- 开发/测试环境:为了便捷,可以选择 登录用户可以做任何事(Logged-in users can do anything)。
- 生产环境:强烈建议使用更精细的 基于角色的策略(Role-Based Strategy),不过这需要提前安装 Role Strategy Plugin 插件。
同时,根据安全要求,决定是否勾选 拒绝匿名用户读取访问(Prevent anonymous read access)。
完成这些设置并保存后,Jenkins 会自动更新 config.xml 文件,无需我们再手动编辑了。

恢复备份(可选)
如果整个过程中间出现任何意外,或者你需要回滚到操作前的状态,之前做的备份就派上用场了。使用以下命令即可快速恢复:
sudo cp -a /var/lib/jenkins/config.xml.bak.20260117 /var/lib/jenkins/config.xml sudo systemctl restart jenkins
总结
整个流程的核心思路,其实就是“临时绕开,重置密码,立即恢复”。操作本身并不复杂,但每一步都关乎系统安全,务必谨慎。希望这份梳理清晰的步骤,能帮你顺利找回 Jenkins 的管理权限。
您可能感兴趣的文章:
- Jenkins中修改admin账号密码的正确位置与方法步骤
- Jenkins忘记密码密码重置操作步骤详解
- Linux安装Jenkins步骤及各种问题解决(页面访问初始化密码)
- Linux下Jenkins忘记密码的操作步骤
