#ssh免密驗證,shell自動設定
echo '#!/bin/sh
. /etc/init.d/functions
[[ -f /usr/bin/expect ]] || #若沒expect則安裝
[ $? = 0 ] || #安裝失敗則退出
pub=/'`whoami`'/.ssh/id_dsa.pub #公鑰路徑
[[ -f $pub ]] || #若沒公鑰則生成
#expect自動互動
function exp()
"password:"
eof
}eof}#
for i in `cat /tmp/ip.txt`
doip=$(echo "$i"|cut -f1 -d":")
pass=$(echo "$i"|cut -f2 -d":")
exp >/dev/null 2>&1
echo $n hostname >/dev/null 2>&1
[[ $? == 0 ]] && action "*****===$n" /bin/true || action "*****===$n" /bin/false
done
'>./ssh.sh
##################以上是生成shell檔案ssh.sh##################
建立被登入端ip列表
列表中伺服器ip和密碼用冒號":" 分割
[root@lnamp ~]# cat >> ip.txt << eof
192.168.8.50:admin1
192.168.8.220:admin2
ip:password
eof#執行shell檔案,ssh批量認證
sh ./ssh.sh
expect實現無互動切入root
expect 可以實現無互動 1.yum install y expect 先進行安裝 2.which expect 檢視位置 一般在 usr bin expect 然後就可以使用expect命令 傳送命令 例如執行乙個遠端 執行完就會產生乙個程序但是不會馬上讓你輸入密碼 expect expect...
使用expect指令碼實現linux的互動式操作
root localhost tar zxvf tcl8.6.8 src.tar.gz root localhost cd tcl8.6.8 unix root localhost configure prefix usr tcl enable shared root localhost make ...
使用expect實現自動互動,自動登入指令碼
使用expect實現自動互動,自動登入指令碼 指令碼 如下 usr bin expect set timeout 30 spawn ssh l username 192.168.1.1 expect password send ispass r interact 1.usr bin expect 這...