我正在尝试从家里通过大学计算机使用 SSH 隧道,以便我可以访问一些文章。
两台机器都运行 Ubuntu 11.04。大学的机器运转openssh-server。
在家里,我遵循了以下说明:
打开一个 ssh 会话:
ssh -D 9999 -C user@my_addr.com
Run Code Online (Sandbox Code Playgroud)然后我配置火狐端口用户SOCKS5连接9999的localhost。
这工作了一段时间。然后,它突然挂断了连接,终端就死机了。
我在这里缺少什么?
尝试autossh。它检测挂起的连接并自动重新连接。我过去在类似的情况下使用过它,它对我来说效果很好。
编辑
我曾经在 中运行它screen,这有两个好处:在后台运行(某种程度上),并且可以稍后返回到会话以检查其状态并在必要时进行调试,如下所示:
screen -d -m -S my-autossh-tunnel autossh your_autossh_args
Run Code Online (Sandbox Code Playgroud)
这将在后台启动屏幕。如果您想检查进程autossh,可以screen使用以下命令重新连接到此会话screen -R my-autossh-tunnel
为了方便起见,我使用了空密码,但为了增加安全性,我在远程端的authorized_keys中使用了以下选项:
Run Code Online (Sandbox Code Playgroud)command="/bin/false",no-agent-forwarding,no-X11-forwarding,no-pty`
这样就可以用密钥建立隧道,并且外壳不能被滥用于其他用途。
| 归档时间: |
|
| 查看次数: |
12256 次 |
| 最近记录: |