簡體   English   中英

在 rundeck 中添加遠程節點

[英]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 用戶名和私鑰文件名。 除此之外,您還可以更改所有其他命名參數,例如節點名稱和標簽等。

現在進入您的節點服務器。

  1. 創建一個 ssh 用戶,這里是 leo
  2. 切換到用戶 leo。 生成 SSH 密鑰
  3. ssh-keygen
  4. 將公鑰附加到authorized_keys
  5. leo@c1a5f48a6c4c:~/.ssh$ pwd /home/leo/.ssh leo@c1a5f48a6c4c:~/.ssh$ cat id_rsa.pub >> authorized_keys leo@c1a5f48a6c4c:~/.ssh$ chmod gw authorized_keys
  6. 復制私鑰
  7. 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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM