gitlab忘记root密码强制找回
忘记gitlab的root账号密码,利用gitlab的后门找回。
GitLab留下了可以修改管理员账号密码的方法,一定意义上可以认为就是一个后门。操作方法如下:
Step1:后台登录切换到git用户命令行界面,输入su -git
[root@localhost ~]# su - git
-sh-4.2$ gitlab-rails console production
Loading production environment (Rails 4.2.8)
irb(main):001:0>
irb(main):002:0*
irb(main):003:0*
irb(main):004:0*
irb(main):005:0*
irb(main):006:0*
irb(main):007:0*
Step2:输入user = User.where(id: 1).first 定位到id=1的用户(就是超级管理员)
irb(main):008:0* user = User.where(id: 1).first
=> #<User id:1 @root>
irb(main):009:0>
irb(main):010:0*
Step3:为这个超级管理员用户设置password,输入user.password = 'my_123456'
irb(main):011:0* user.password = 'my_123456'
=> "my_123456"
Step4:保存配置,输入 user.save!
irb(main):012:0> user.save!
Enqueued ActionMailer::DeliveryJob (Job ID: 87dddf83-ad24-4e12-9cf3-338ab57d8318) to Sidekiq(mailers) with arguments: "DeviseMailer", "password_change", "deliver_now", gid://gitlab/User/1
=> true
irb(main):013:0>
irb(main):014:0*
Step5:web登录gitlab页面,输入账号密码登录