无密钥登录的自动脚本实现:
[root@server22 ~]# vim auto_ssh.sh#!/usr/bin/expect
set timeout 10
set username [lindex $argv 0]
set password [lindex $argv 1]
set hostname [lindex $argv 2]
spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $username@$hostname
expect {
#first connect, no public key in ~/.ssh/known_hosts
"Are you sure you want to continue connecting (yes/no)?" {
send "yes\r"
expect "password:"
send "$password\r"
}
#already has public key in ~/.ssh/known_hosts
"password:" {
send "$password\r"
}
"Now try logging into the machine" {
#it has authorized, do nothing!
}
}
expect eof
[root@server22 ~]# chmod 777 auto_ssh.sh
然后执行下述命令
[root@server22 ~]# ./auto_ssh.sh root 123456 192.168.10.162
试验结果:
162机器上传看:
成功!
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9034054/viewspace-2059463/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/9034054/viewspace-2059463/