這篇“怎么為Jenkins添加SSH全局憑證”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“怎么為Jenkins添加SSH全局憑證”文章吧。
有許多第三方網站和應用程序可以與Jenkins進行交互,例如代碼倉庫GitHub等。
此類應用程序的系統管理員可以在應用程序中配置憑證以專供Jenkins使用。通常通過將訪問控制應用于這些憑證來完成這項工作,以“鎖定Jenkins可用的應用程序功能區域”。一旦Jenkins管理員在Jenkins中添加/配置這些憑證,Jenkins項目就可以使用憑證與這些第三方應用程序進行交互。
Jenkins中保存的憑證可以用于:
適用于Jenkins的任何地方(即全局證書)。
特定的Jenkins項目。
特定的Jenkins用戶。
Jenkins可以保存下面幾種憑證:
Secret text:例如 API Token(例如GitHub的個人access token)。
Username with password:指的是登錄GitHub的用戶名和密碼,可以作為單獨的組件處理,也可以作為username:password格式的冒號分割字符串來處理。
Secret file:實際上是文件中的秘密內容。
SSH Username with private key:即使用私鑰的SSH 用戶名。這是一個SSH 秘鑰對。公鑰配置在GitHub上面,這里添加私鑰。
Certificate:即證書。一個PKCS#12證書文件和可選的密碼。
Docker Host Certificate Authentication:即Docker主機證書身份驗證憑證。
這些憑證的分類可以在全局憑據里面看到:
為了確保安全,Jenkins中配置的憑據在Jenkins主實例中加密存儲(通過Jenkins實例的ID來加密),并且只能通過它們的憑據ID在Pipeline項目中處理。
這樣就最大限度地減少了向Jenkins用戶暴露實際證書本身的可能性,并且限制了將功能證書從一個Jenkins實例復制到另一個Jenkins實例的能力。
我們這里以添加SSH Username with private key為例,講解如何添加一個Jenkins的憑據。
在上面說過,SSH憑據需要一對私鑰,所以我們首先需要生成SSH Key。
使用下面的命令可以生成SSH Key:
$ ssh-keygen -t rsa -C "your_email@youremail.com"
如下圖所示:
所有選項都是默認,一直回車即可生成。生成之后在.ssh文件夾下就會生成文件,如下圖所示:
一共會生成兩個文件:
id_rsa。這個是私鑰文件。
id_rsa.pub。這個是公鑰文件,需要配置到GitHub上面。
登錄GitHub,然后在賬戶下面選擇“Settings”:
然后選擇“SSH and GPG keys”:
然后點擊“New SSH key”,把生成的id_rsa.pub文件里面的內容拷貝進來即可:
這樣就添加完成了SSH key。
Jenkins在拉取git項目代碼的時候,如果沒有配置“證書憑證Credentials”或者配置的不對,就會出現如下圖所示的報錯信息:
這時候就需要添加證書憑證Credentials,有兩種方式添加證書憑證。
點擊Credentials后面的"Add",選擇“Jenkins”,如下圖所示:
然后選擇“SSH Username with private key”,如下圖所示:
選擇Private Key,如下圖所示:
把上面生成的私鑰復制到這里,給Username起一個名稱即可。
最后點擊“添加”按鈕即可完成添加SSH 憑證。
注意:這里在拷貝私鑰的時候,一定要把生成的私鑰文件里面的所有內容都拷貝進來。
在選擇憑證的時候選擇剛才添加的憑證,這時就不會在報錯了:
我們也可以在憑據里面添加
同樣還是選擇“SSH Username with private key”,如下圖所示:
然后下面的步驟和剛才的就一樣了,輸入生成的私鑰即可。這樣就配置好了SSH憑據。
以上就是關于“怎么為Jenkins添加SSH全局憑證”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。