批量添加ssh密钥脚本
批量添加ssh密钥脚本
脚本1:
使用sshpass实现
#!/bin/bash
IP=2.2.2
PASS=123456
ssh-keygen -P "" -f /root/.ssh/id_rsa &> /dev/null
rpm -q sshpass &> /dev/null||yum -y install sshpass &> /dev/null
for i in {1..100};do
echo "正在为$i导入"
{
sshpass -p $PASS ssh-copy-id -o StrictHostKeyChecking=no -i /root/.ssh/id_rsa.pub $IP.$i &> /dev/null
}&
done
wait
脚本2:
结合expect工具实现
#!/bin/bash
IP=2.2.2
US=root
PW=123456
for i in $IP.{1..100} ;do
expect <<-EOF
set timeout 20
spawn ssh-copy-id $US@$i
expect {
"yes/no" {send "yes\n";exp_continue}
"password" {send "$PW\n"}
}
expect eof
EOF
done

浙公网安备 33010602011771号