jenkins忘記管理員登陸密碼的補救措施

散盡浮華發表於2016-11-01

 

jenkins可以作為我們日常運維過程中程式碼上線的發版平臺,所以對jenkins的安全可靠的維護是十分重要的。

1)在登陸jenkins的時候,如果忘記普通使用者的登陸密碼,只要能用管理員賬號登陸,還可以重置普通使用者密碼。

    依次是“系統管理”->“管理使用者”,看到“使用者列表”,就可以編輯使用者資訊,修改使用者密碼了。

    

 

 

2)如果一不小心忘記了admin管理員的賬號密碼。然後就看不到“管理使用者”那部分內容了,看不到就改不了使用者許可權,也就是系統癱瘓了。
這個時候該怎麼辦????


別慌,靜下來回想下,在jenkins環境剛搭建好並沒註冊賬號和密碼的時候,都能看見,也就是沒有sign in 和sign up模組的時候,是可以使用的,這些資訊應該寫在jenkins的配置檔案裡。

路徑在.../jenkins/config.xml (線上路徑是/usr/local/tomcat7/webapps/jenkins/config.xml)


修復辦法:千萬注意:修復前一定要提前備份config.xml檔案

然後需要刪除config.xml檔案中的以下內容:
<useSecurity>true</useSecurity>
<authorizationStrategy class="hudson.security.ProjectMatrixAuthorizationStrategy">
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.View:dongjicheng</permission>
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.View:huanghuaicheng</permission>
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.View:limeng</permission>
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.View:liuxianpeng</permission>
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.View:shaoxiaogang</permission>
<permission>com.cloudbees.plugins.credentials.CredentialsProvider.View:tangyi</permission>
<permission>hudson.model.Hudson.Administer:admin</permission>
<permission>hudson.model.Hudson.Read:dongjicheng</permission>
<permission>hudson.model.Hudson.Read:huanghuaicheng</permission>
<permission>hudson.model.Hudson.Read:limeng</permission>
<permission>hudson.model.Hudson.Read:liuxianpeng</permission>
<permission>hudson.model.Hudson.Read:shaoxiaogang</permission>
<permission>hudson.model.Hudson.Read:tangyi</permission>
<permission>hudson.model.Item.Build:dongjicheng</permission>
<permission>hudson.model.Item.Build:huanghuaicheng</permission>
<permission>hudson.model.Item.Build:limeng</permission>
<permission>hudson.model.Item.Build:liuxianpeng</permission>
<permission>hudson.model.Item.Build:shaoxiaogang</permission>
<permission>hudson.model.Item.Build:tangyi</permission>
</authorizationStrategy>
<securityRealm class="hudson.security.HudsonPrivateSecurityRealm">
<disableSignup>true</disableSignup>
<enableCaptcha>false</enableCaptcha>
</securityRealm>

 

然後重新啟動jenkins,

[root@115 ~]# /usr/local/tomcat7/bin/shutdown.sh
[root@115 ~]# /usr/local/tomcat7/bin/start.sh

這樣就不需要login登陸,直接就可以進入jenkins介面了,就跟jenkins剛搭建好首次開啟的狀態一樣。
可以進去在web介面上重置admin登陸密碼。
也可以開啟“允許使用者註冊”,接著另註冊一個使用者並授權為管理員(註冊之前就授權為管理員),然後登陸後再重置之前的管理員密碼。
最後再恢復config.xml檔案(別忘了恢復這個檔案),最後再重啟jenkins即可!

 

相關文章