分享一个ssh打通的脚本

分享一个ssh打通的脚本,经过测试可用。目前只能单向打通,且要求本地用户名为admin(写入代码,可简单修改)。本身只是个人使用,故通用性、异常情况考虑不多,大家可以做个参考。

补充一点,Important Tip:

authorized_keys文件的权限很重要,如果设置为777,那么登录的时候,还是需要提供密码的 :

chmod  400 authorized_keys

 

 

#!/usr/local/bin/expect -f

set user [lindex $argv 0]
set ipaddr [lindex $argv 1]
set passwd [lindex $argv 2]

spawn ssh-keygen -t rsa 

expect {
"*save the key" {send "\r";exp_continue}
"Overwrite (y/n)?" {send "\r";exp_continue}
}

spawn ssh $user@$ipaddr "mkdir /home/$user/.ssh" 

expect {
"*password:"    {send "$passwd\r";exp_continue}
}

spawn scp /home/admin/.ssh/id_rsa.pub $user@$ipaddr:/home/$user/.ssh/id_rsa.pub

expect {
"*password:"    {send "$passwd\r";exp_continue}
}


spawn ssh $user@$ipaddr "touch /home/$user/.ssh/authorized_keys"

expect {
"*password:"    {send "$passwd\r";exp_continue}
}

spawn ssh $user@$ipaddr "cat /home/$user/.ssh/id_rsa.pub >> /home/$user/.ssh/authorized_keys"

expect {
"*password:"    {send "$passwd\r";exp_continue}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值