开源中国

我们不支持 IE 10 及以下版本浏览器

It appears you’re using an unsupported browser

为了获得更好的浏览体验,我们强烈建议您使用较新版本的 Chrome、 Firefox、 Safari 等,或者升级到最新版本的IE浏览器。 如果您使用的是 IE 11 或以上版本,请关闭“兼容性视图”。
使用 autossh 自动重启 SSH 会话和通道 - 技术翻译 - 开源中国社区

使用 autossh 自动重启 SSH 会话和通道 【已翻译100%】

oschina 推荐于 4年前 (共 2 段, 翻译完成于 05-29) 评论 7
收藏  
68
推荐标签: Autossh 待读
参与翻译 (1人) : 红薯 仅中文 | 中英文对照 | 仅英文 | 打印此文章
autossh 是一个用来启动 ssh 并进行监控的程序,可在需要时重启 ssh,例如程序挂掉或者是网络出现问题。其灵感和机制来自于 rstunnel  (Reliable SSH Tunnel). autossh 1.2 的方法已经改变:autossh 使用 ssh 来构造一个 ssh 重定向循环(本地到远程和远程到本地),然后发送测试数据并获得返回结果。

autossh 1.3 增加了一个新的方法:可指定远程 echo 服务的端口用于返回测试数据发送结果。这个避免握手阶段以及所有远程机器端口的冲突问题。而老的 loop-of-forwardings 方法依然可用。
红薯
 翻译得不错哦!

在 Ubuntu 上安装 autossh

打开终端窗口并运行以下命令

sudo apt-get install autossh

Autossh 语法

autossh [-V] [-M port[:echo_port]] [-f] [SSH_OPTIONS]

在启动时启动 ssh 通道

我们可以使用 upstart 来在 Ubuntu 下启动 ssh 通道,只需要将如下 autossh.conf 文件放在 /etc/init 目录即可。

# autossh startup Script

description "autossh daemon startup"

start on net-device-up IFACE=eth0
stop on runlevel [01S6]

respawn
respawn limit 5 60 # respawn max 5 times in 60 seconds

script
export AUTOSSH_PIDFILE=/var/run/autossh.pid
export AUTOSSH_POLL=60
export AUTOSSH_FIRST_POLL=30
export AUTOSSH_GATETIME=0
export AUTOSSH_DEBUG=1
autossh -M 0 -4 -N USER@HOSTNAME -D 7070 -o "ServerAliveInterval 60″ -o "ServerAliveCountMax 3″ -o BatchMode=yes -o StrictHostKeyChecking=no -i SSH_KEY_FILE_PATH
end script

红薯
 翻译得不错哦!
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们
评论(7)
Ctrl/CMD+Enter

人工置顶 啊 别黑我
顶一个
无法解决登录到远程服务器后,网络断掉后再恢复的情况呢!! 此时terminal 还是卡死,并且不能输入任何东西!
狂顶
感觉不错吖

引用来自“fmxzhou”的评论

无法解决登录到远程服务器后,网络断掉后再恢复的情况呢!! 此时terminal 还是卡死,并且不能输入任何东西!

+1
-M 这个参数目前还不清楚真的意义
顶部