2016-09-27 53 views
1

詹金斯SSH爲了自動建立一個服務器上,我必須做到以下幾點:無密碼

  1. 讓用戶與目標服務器上的root訪問權限
  2. 添加RSA根公鑰authorised_keys的目標服務器,用於無密碼登錄。
  3. 創建腳本,第一個命令是ssh user @ dest。

我們面臨的問題是,命令執行仍然要求sudo ...我們如何在腳本或其他方面實現這一目標?

+0

您是如何給服務器上的用戶root訪問權限的?你可以發佈你的/ etc/sudoers文件嗎? –

+0

或者您可以直接將pubkey添加到'〜root/.ssh/authorized_keys'。 @DanKing問題+1。 – Misko

+0

@Misko,我猜他們沒有以root身份登錄,而是以具有root權限的用戶身份登錄,然後執行以sudo開頭的命令。有一種方法可以爲所有人提供這樣的設置,只要設置或單個用戶,[在此解釋](http://askubuntu.com/questions/192050/how-to-run-sudo-command-with-no-password)但我真的會考慮你爲什麼要這樣做,因爲這絕對是一個安全風險。 –

回答

1

有一個插件可以使這個簡單。

SSH plugin可以接收服務器的詳細信息和憑據,並可以爲我們處理所有這些。

要使用它,請按照下列步驟操作:

  • 您詹金斯從管理插件安裝SSH插件。
  • 去配置系統,在SSH遠程主機下添加。
  • 添加連接到服務器所需的所有詳細信息
  • 在您的工作中,添加構建步驟 - 使用ssh在遠程主機中執行shell腳本。