批量ssh
Posted water-sky
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批量ssh相关的知识,希望对你有一定的参考价值。
一、安装expect
yum -y install expect
二、常用程序
expect程序:
#!/usr/bin/expect -f
set ip [lindex $argv 0 ] #接收第一个参数,并设置IP
set password [lindex $argv 1 ] #接收第二个参数,并设置密码
set timeout 10 #设置超时时间
spawn ssh [email protected]$ip "hostname" #发送ssh请滶
expect { #返回信息匹配
"*yes/no" { send "yes
"; exp_continue} #第一次ssh连接会提示yes/no,继续
"*password:" { send "$password
" } #出现密码提示,发送密码
}
interact #交互模式,用户会停留在远程服务器上面
三、批量ssh
#!/bin/bash
SERVERS="192.168.1.241 192.168.1.242"
PASSWD="123456"
function sshcopyid
{
expect -c "
set timeout -1;
spawn ssh-copy-id $1;
expect {
"yes/no" { send "yes
" ;exp_contine; }
"password:" { send "$PASSWD
";exp_continue; }
};
expect eof;
"
}
for server in $SERVERS
do
sshcopyid $server
done
以上是关于批量ssh的主要内容,如果未能解决你的问题,请参考以下文章