1 Publish over SSH插件安裝
打開Jenkins的“系統管理>管理插件”,選擇“可選插件”,在輸入框中輸入“Publish over SSH”進行搜索,如果搜索不到可以在“已安裝”里確認是否已經安裝過。在搜索結果中選中“Publish over SSH”,點擊頁面的“直接安裝”按鈕,系統會自動安裝,此插件安裝后不需要重啟Jenkins。如果插件安裝成功在“系統管理>系統設置”會出現相關配置項。

插件安裝完成后,需要重啟才能生效。
2 SSH Server 配置
SSH Server配置為Publish Over SSH中運程機的配置,分“基本設置”和“高級設置”兩部分;“基本設置”主要是運程機IP、SSH用戶名、SSH端口、連接超時時間等,“高級設置”和大部分“全局設置”中的選項相同。Job中使用的每一個運程機都要在這里進行配置。
配置的基本思路是:
第一步:利用xshell生成公鑰和私鑰,保存好公鑰和私鑰文件。
第二步:將公鑰放到被管理服務器上的
2.1 基本設置
SSH Server的基本設置如下圖:


此處設置在使用“172.16.18.192-SSH”的所有設置中都生效,相當於SSH節點的全局設置;基於與“全局設置”中同樣的原因這里的設置在Job中也可以被覆蓋,這在多用戶進行遠程操作時很有必要,如在172.16.18.192這台機器上有userA和userB兩個用戶分別用來部署"應用A"和“應用B”。
2.2 參數說明
Passphrase:SSH的密碼 使用用戶名/密碼登錄時為用戶名的密碼,使用私鑰登錄時為私鑰的密碼。 Path to key:存放在Jenkins服務器上的SSH私鑰的文件路徑 私鑰文件的路徑,可以是絕對路徑,也可以是相對$JENKINS_HOME的相對路徑 Key:私鑰私鑰導出后的文本內容。 如果“Key”和“Path to key”都設置,則“Key”的優先級較高,私鑰的密碼是“Passphrase”中設置的內容。 Disable exec:禁止在目標機上執行命令 勾選后將會忽略在Job配置中“Exec command”選項中設置的命令。Jenkins的說明文檔中的“The Disable exec in the advanced settings for individual configurations will be ignored.”沒有完全理解,從實際效果來看,只要“Disable exec”被勾選后,不管SSH Server中是否勾選“Disable exec”,Job中設置的命令都將補忽略。 參數說明 Name SSH節點配置的名稱,在Job中使用Publish over SSH插件時,此名稱將出現在“SSH Server”中“Name”的下拉列表中,如下圖: Hostname 通過SSH連接到的機器的主機名或IP Username SSH服務使用的用戶名,使用key進行連接時為key指定的用戶名 Remote Derictory 運程機器上真實存在的目錄,並且“Username”指定的用戶要有訪問此目錄的權限,插件將把文件傳送到此目錄下。
2.3 高級設置
高級設置里可以設置SSH端口、重試時間以及重新設置“全局設置”中的選項,由於做用相似,不再做重復說明,設置如下圖:

