Shell命令sshpass非互動SSH密碼驗證

2021-06-22 22:47:37 字數 1636 閱讀 3168

shell命令sshpass非互動ssh密碼驗證

#安裝sshpasssshpass

$ tar -zxvf sshpass-1.05.tar.gz

$ cd sshpass-1.05

$ ./configure --prefix=/opt/sshpass

#指定安裝目錄

$ make

$ make install

$ cp /opt/sshpass/bin/sshpass /usr/bin/

安裝完成

#檢視幫助

sshpass -h

usage: sshpass [-f|-d|-p|-e] [-hv] command parameters

-f filename   take password to use from file

-d number     use number as file descriptor for getting password

-p password   provide password as argument (security unwise)

-e            password is passed as env-var "sshpass"

with no parameters - password will be taken from stdin

-h            show help (this screen)

-v            print version information

at most one of -f, -d, -p or -e should be used

#!/bin/bash

cd $(dirname $0)

source ./config.sh

date=`date +%y-%m-%d`

#上傳dump指令碼到服務端

sshpass -pyour_pwd scp -p22 ./dump.sh [email protected]:~/

#-o stricthostkeychecking=no 避免第一次登入出現公鑰檢查。

sshpass -pyour_pwd scp -o stricthostkeychecking=no -p22 ./dump.sh [email protected]:~/

#登陸到服務端位址,執行dump指令碼,將執行結果寫入本地檔案

sshpass -pyour_pwd ssh -p22 your_user @192.168.1.10 "sh ~/dump.sh" >local_result.txt

#使用檔案中的密碼

sshpass -f pwd.file ssh -p22 [email protected] "sh ~/dump.sh" >>local_result.txt

#從環境變數(sshpass)讀取密碼

sshpass -e ssh -p22 [email protected] "sh ~/dump.sh" >>local_result.txt

sshpass命令使用

一 sshpass安裝 yum install sshpass sshpass v 二 sshpass命令使用 1 直接遠端連線某主機 sshpass p ssh 2 遠端連線指定ssh的埠 sshpass p ssh p 3 從密碼檔案讀取檔案內容作為密碼去遠端連線主機 sshpass f ssh...

sshpass命令使用

1 直接遠端連線某主機 sshpass p ssh 2 遠端連線指定ssh的埠 sshpass p ssh p 3 從密碼檔案讀取檔案內容作為密碼去遠端連線主機 sshpass f ssh 4 從遠端主機上拉取檔案到本地 sshpass p scp 5 將主機目錄檔案拷貝至遠端主機目錄 sshpas...

sshpass非互動SSH的密碼驗證

ssh登陸不能在命令列中指定密碼。sshpass的出現,解決了這一問題。sshpass用於非互動ssh的密碼驗證,一般用在sh指令碼中,無須再次輸入密碼 本機known hosts檔案中有的主機才能生效 它允許你用 p 引數指定明文密碼,然後直接登入遠端伺服器,它支援密碼從命令列 檔案 環境變數中讀...