分页: 1 / 1

怎样实现ssh登录自动输入密码阿

发表于 : 2011-07-05 13:50
baby
我这里经常要用ssh登录其它电脑,帐号密码是一样的,我只需要输入主机名作为传入参数就可以自动为我完成yes,密码的输入
参考了下
viewtopic.php?f=21&t=330208&hilit=ssh+% ... 6%E7%A0%81
这个帖子,写不出来。。。唉

Re: 怎样实现ssh登录自动输入密码阿

发表于 : 2011-07-05 13:54
qifei9
#!/usr/bin/expect

set timeout 60

spawn /usr/bin/ssh -D 7070 [email protected]
#这里的 username 为你自己的用户名,yourserver.com 为你自己的服务器域名或ip

expect {
"password:" {
send "password\r"
#将第二个 password 改为你自己的密码
}
}

interact {
timeout 60 { send " "}
}

Re: 怎样实现ssh登录自动输入密码阿

发表于 : 2011-07-05 14:20
baby
谢谢,可以登录了
怎么可以改成传入主机名作为参数阿

代码: 全选

例如我保存为 autossh.sh
执行autossh.sh  abc.com 来实现自动登录
该死,shell的语法都忘记了

Re: 怎样实现ssh登录自动输入密码阿

发表于 : 2011-07-05 14:37
baby
谢谢二楼的兄弟,参考了另外一个帖子,弄出来了

代码: 全选

#!/usr/bin/expect -f

set timeout -1
set server  [lindex $argv 0] 
spawn ssh -l user $server
expect {
    "(yes/no)" { send "yes\r"; exp_continue }
    "assword:" { send "password\r"; }
}
expect "*Last login*" interact

Re: 怎样实现ssh登录自动输入密码阿

发表于 : 2011-07-05 16:24
hubert_star
ssh支持证书登陆的啊,你把你的证书传上去就行了,不用密码,只用到你的证书

Re: 怎样实现ssh登录自动输入密码阿

发表于 : 2011-07-05 17:17
baby
hubert_star 写了:ssh支持证书登陆的啊,你把你的证书传上去就行了,不用密码,只用到你的证书
机器太多,而且经常换系统,这样子比证书更方便,当然如果源码被看到了很危险
要是shell支持代码加密的话。。。。

Re: 怎样实现ssh登录自动输入密码阿

发表于 : 2011-07-05 20:41
eexpress

代码: 全选

-i identity_file
你可以带着证书跑的啊。特殊要求,多看man。

Re: 怎样实现ssh登录自动输入密码阿

发表于 : 2011-07-06 8:34
lexdene
ssh带着证书就不需要输入密码了。