我试图从Windows或Linux计算机上configuration一个到NexentaStor设备的SSH隧道,以便我可以根据Crashplan支持站点上的这些说明将Crashplan桌面GUI连接到在Nexenta盒子上运行的无头Crashplan服务器: Connect到一个无头的CrashPlan桌面 。
到目前为止,我无法从Windows客户端(使用Putty)或Linux客户端(使用命令行SSH)获得有效的SSH隧道。 我相当确定问题出在NexentaStor的接收端。 博客文章 – Nexenta上的CrashPlan备份 – 表明它可以在“在/etc/ssh/sshd_config启用Nexenta中的TCP转发之后”工作 – 尽pipe我不确定如何去做或者特别是什么我需要去做。
确保Nexenta框上的Crashplan服务器正在侦听端口4243
$ netstat -na | grep LISTEN | grep 42 127.0.0.1.4243 *.* 0 0 131072 0 LISTEN *.4242 *.* 0 0 65928 0 LISTEN
从Linux主机build立隧道:
$ ssh -L 4200:localhost:4243 admin:10.0.0.56
然后从Linux主机的另一个terminal上用telnetvalidation隧道:
$ telnet localhost 4200 Trying ::1... Connected to localhost. Escape character is #^]'.
没有更多,虽然Crashplan服务器应该回应一些东西 。
从Windows使用PuTTY我已经按照Crashplan支持站点上的说明build立了一个等效隧道,但是在Windows上的telnet完全没有响应,Crashplan GUI也无法连接。 隧道连接的PuTTY日志显示合理的输出:
... 2011-11-18 21:09:57 Opened channel for session 2011-11-18 21:09:57 Local port 4200 forwarding to localhost:4243 2011-11-18 21:09:57 Allocated pty (ospeed 38400bps, ispeed 38400bps) 2011-11-18 21:09:57 Started a shell/command 2011-11-18 21:10:09 Opening forwarded connection to localhost:4243
但是来自Windows的telnet localhost 4200命令什么也不做 – 它只是等待一个空白的terminal。
在NexentaStor服务器上,我检查了/etc/ssh/sshd_config文件,一切似乎都是正常的 – 我已经注释掉ListenAddress条目,以确保我正在监听所有的接口。
我该如何build立一个隧道,以及如何validation它正在工作?
Rob,请尝试以NexentaStor服务器上的root用户身份运行ssh隧道,而不是admin ,然后回报。
$ ssh -L 4200:localhost:4243 [email protected]
还有一件事你可能要尝试的是validation你的linux ssh主机允许隧道。 我使用OpenMediaVault ,它有一个特定的设置,名为“允许执行SSH隧道”,这是未经检查的。 检查它允许我成功地使用PuTTY方法。
您需要转发到端口4242,而不是端口4243。
ssh -L 4200:localhost:4242 admin:10.0.0.56