Ubuntu中让SSH自动重连
Ubuntu中让SSH自动重连,简单的办法是安装autossh和expect。autossh负责自动重连,expect负责自动输入密码。
安装:
sudo apt-get install autossh
sudo apt-get install expect
sudo apt-get install expect
新建一个sh脚本,例如:/etc/autossh.sh,内容:
#!/bin/bash
HOST="xx.xxx.com"
USER="yourname"
PASS="yourpassword"
CMD=$@
VAR=$(expect -c "
spawn /usr/bin/autossh -M 2000 -N -v -D 127.0.0.1:7070 $USER@$HOST $CMD
match_max 100000
expect \"*?assword:*\"
send -- \"$PASS\r\"
send -- \"\r\"
expect eof
")
echo "==============="
echo "$VAR"
HOST="xx.xxx.com"
USER="yourname"
PASS="yourpassword"
CMD=$@
VAR=$(expect -c "
spawn /usr/bin/autossh -M 2000 -N -v -D 127.0.0.1:7070 $USER@$HOST $CMD
match_max 100000
expect \"*?assword:*\"
send -- \"$PASS\r\"
send -- \"\r\"
expect eof
")
echo "==============="
echo "$VAR"
运行/etc/autossh.sh,就自动登录了。
微信扫一扫交流
作者:CoderZh
公众号:hacker-thinking (一个程序员的思考)
独立博客:http://blog.coderzh.com
博客园博客将不再更新,请关注我的「微信公众号」或「独立博客」。
作为一个程序员,思考程序的每一行代码,思考生活的每一个细节,思考人生的每一种可能。
文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。