ssh记住密码自动登录,clone session

1,安装必备软件
基本工具
$sudo apt-get install ssh-client

自动化应答工具
$sudo apt-get install expect

2,登录脚本
利用expect建立一个ssh登录自动应答脚本
$vi sshHostWithUsernameAndPassword

填入下面的内容
#!/usr/bin/expect
# This script needs one argument to(s) connect to remote server:
# host = IP Addreess of remote UNIX server, no hostname
# For example:
# ./sshadmin 192.168.1.11 admin admin
#set Variables
set host [lrange $argv 0 0]
set username [lrange $argv 1 1]
#support to compose produce env password with static part and dynamic part
set password [lrange $argv 2 3]
spawn ssh $username@$host
expect {
#if need check hostkey, send yes
-re ".*Are.*.*yes.*no.*" {
send "yes\r"
exp_continue
#look for the password prompt
}
"*assword:" {
send -- "$password\r"
#the expect command will now return
}
}
#using 'interact' to stop execute spawn
interact;



3,登录的alias
$vi .bash_aliases

添加
alias sshHost1="sshHostWithUsernameAndPassword yourhost yourUsername yourPassword"

然后
$. .bash_aliases
$sshHost1

就能用ssh免输入账号密码来登录服务器了
赶紧体验吧

如果有动态密码,那
$vi .bash_aliases

添加
alias sshHost2Dynamic="sshHostWithUsernameAndPassword yourhost yourUsername yourStaticPassword"
$sshHost2Dynamic yourDynamicPassword

就可以了(通过sshHostWithUsernameAndPassword的“set password [lrange $argv 2 3]”来组合)

4,clone session
是不是很羡慕secureCRT里的clone session的方式来重用同一个连接,避免第二次登录还要输入密码?其实这个就是ssh内置功能,我们只要按下面设置一下就好了。
创建文件
$vi ~/.ssh/config

在config的文件中,添加如下内容:
host *
ControlMaster auto
ControlPath ~/.ssh/master-%r@%h:%p


然后
$vi ~/.bash_aliases

添加(后面不需要密码了)
alias sshHost2DynamicClone="sshHostWithUsernameAndPassword yourhost yourUsername"
$. ~/.bash_aliases


第一次登录
$sshHost2Dynamic yourDynamicPassword

后面再登录
$sshHost2DynamicClone

就可以登录了

同时我们发现~/.ssh/目录下有master-*的sock文件,就是它记录了我们目前登录到的机器,这样的话,我们登录同样的机器就会重用同一个session了。
其他linux发行版的同学应该都可以使用,毕竟这只是个ssh的客户端配置文件。

config文件的详细介绍可以参考:

http://linux.die.net/man/5/ssh_config
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值