[英]Add a remote node in rundeck
我希望能夠使用 Rundeck 在遠程節點上執行 shell 命令,我發現這個視頻解釋了如何做到這一點,但我不了解私鑰部分以及如何配置它。 我不斷收到以下錯誤:
連接到節點的身份驗證失敗:“test-001”。 確保您的資源定義和憑據是最新的。 失敗:AuthenticationFailure:連接到節點的身份驗證失敗:“test-001”。 確保您的資源定義和憑據是最新的。
我設置了一個遠程服務器,我配置了 resource.xml 文件,如下所示:
<node name="test-001" description="demo for test" tags="demo" hostname="10.10.10.10:22" osFamily="unix" osName="Linux" osVersion="2.6.32" username="demo" />
我是否需要將ssh-key
值添加到 xml 文件中? 如果是這樣,我是否必須將公鑰或私鑰從 Rundeck 服務器復制到主機服務器?
另外,用戶名 demo 也有密碼,那么我該如何定義呢?
Rundeck 主機服務器通過私鑰認證的方式連接到節點,這與 SSH 私鑰認證完全相似。 按照以下步驟將節點添加到您的服務器 rundeck。
打開 resources.xml 文件並添加以下內容。
<node name="rundeck node2" description="Rundeck node2" tags="node2" hostname="10.1.0.1" osArch="amd64" osFamily="unix" osName="Linux" osVersion="3.11.10-03111015-generic" username="leo" ssh-keypath="/var/lib/rundeck/node2.key"/>
您可以更改節點中的 SSH 用戶名和私鑰文件名。 除此之外,您還可以更改所有其他命名參數,例如節點名稱和標簽等。
現在進入您的節點服務器。
leo@c1a5f48a6c4c:~/.ssh$ pwd /home/leo/.ssh leo@c1a5f48a6c4c:~/.ssh$ cat id_rsa.pub >> authorized_keys leo@c1a5f48a6c4c:~/.ssh$ chmod gw authorized_keys
leo@c1a5f48a6c4c:~/.ssh$ cat id_rsa
將私鑰保存到 rundeck 主機上的文件“/var/lib/rundeck/node2.key”。 現在身份驗證正常,可以從 rundeck 儀表板執行臨時命令
文檔隨處可見,不同的版本有不同的關鍵字,如果您使用了錯誤的關鍵字,則不會有任何警告。
相關文檔在這里: https : //docs.rundeck.com/2.11.3/plugins-user-guide/ssh-plugins.html
您需要指定:
ssh-authentication: privateKey
...和:
ssh-keypath: /path/directly/to/.ssh/id_rsa
(假設您正在使用文件系統密鑰存儲。)
使用以下命令從您的密鑰中刪除密碼:
ssh-keygen -p -m PEM -f /path/to/your/.ssh/id_rsa
...並且不要忘記確保 id_rsa 文件歸 rundeck 所有並且具有適當限制的權限。
就我而言,我的私鑰中有一個密碼。 確保您的私鑰密碼為空。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.