自動化 免密工具 sshpass

2021-09-25 14:25:18 字數 1291 閱讀 7578

在大多數情況下,linux 系統管理員使用 ssh 登入到程 linux 伺服器時,要麼是通過密碼,要麼是無密碼 ssh 登入,或基於金鑰的 ssh 身份驗證。

如果你想自動在 ssh 登入提示符中提供密碼和使用者名稱怎麼辦?這時 sshpass 就可以幫到你了。

sshpass 的定義:ssh 登陸不能在命令列中指定密碼,sshpass 的出現則解決了這一問題。它允許你用 -p 引數指定明文密碼,然後直接登入遠端伺服器,它支援密碼從命令列、檔案、環境變數中讀取。

安裝sshpass:

一、啟用 epel 倉庫並使用 yum 命令安裝它。

yum install sshpass  -y

二、原始碼安裝 sshpass:

$ wget -o sshpass.tar.gz

$ tar -xvf sshpass.tar.gz

$ cd sshpass-1.06

$ ./configure

# sudo make install

三、rpm包安裝sshpass:

可以去官網獲取rpm安裝包,安裝命令 rpm -ivh sshpass(包名)

檢視sshpass包是否安裝成功:rpm -qa | grep sshpass

#rpm包也可以聯絡作者獲取。

使用sshpass:

1、直接遠端連線某主機

sshpass -p ssh @

2、遠端連線指定ssh的埠

sshpass -p ssh -p $ @

3、從密碼檔案讀取檔案內容作為密碼去遠端連線主機

sshpass -f $ ssh @

4、從遠端主機上拉取檔案到本地

sshpass -p scp @:$ $

5、將主機目錄檔案拷貝至遠端主機目錄

sshpass -p scp $ @:$

6、遠端連線主機並執行命令

sshpass -p ssh -o stricthostkeychecking=no @ 'rm -rf /tmp/test'

-o stricthostkeychecking=no :忽略密碼提示

例for i in `cat /home/jiaoben/$1`;do sshpass -p密碼 ssh -o stricthostkeychecking=no $2@$i $3;done

$1是批量主機ip    $2是使用者名稱    $3是需要批量執行的命令,長命令用」」括起來。

個人**--------------> 

自動化部署工具

1.puppet puppet是開源的基於ruby的系統配置管理工具,基於c s的部署架構。是乙個為實現資料中心自動化管理而設計的配置管理軟體,它使用跨平台語言規範,管理配置檔案 使用者 軟體包 系統服務等。客戶端預設每隔半小時會和伺服器通訊一次,確認是否有更新。當然也可以配置主動觸發來強制客戶端更...

自動化互動工具 expect

lenovo v110 15ikb notebook scp 192.168.70.187 123 192.168.70.187 s password sudo apt install expect 安裝會在 usr bin 下生成expect工具。spawn 啟動新的程序 send 用於向程序傳送...

自動化測試工具

二 如何實施自動化測試 自動化測試指軟體測試的自動化,在預設狀態下執行應用程式或者系統預設條件包括正常和異常,最後評估執行結果。將人為驅動的測試行為轉化為機器執行的過程。自動化測試框架一般可以分為兩個層次,上層是管理整個自動化測試的開發,執行以及維護,在比較龐大的專案中,它體現重要的作用,它可以管理...