使用ProxyTunnel通过HTTP进行SSH"套接字读取错误:[104]由对等方重置连接"

cad*_*air 6 linux apache ssh

我试图通过我的apache web服务器通过HTTP连接到我的SSH服务器,我已经按照[1]和[2]等指南中的说明进行操作,隧道连接并且大约1分钟我得到了SSH连接到我的服务器.

但是,在链中的某处似乎有60秒的超时,因为我Socket read error: [104] Connection reset by peer在大约60秒后得到了错误.当我按配置运行ssh命令和单独运行命令时,都会发生这种情况proxytunnel.

我试图通过改变来解决此问题ServerAliveInterval至30秒,使TCPKeepAlive.ssh/config文件,以及把一个ProxyTimeout 3600在Apache的配置,其中下面我有.

ProxyRequests On AllowConnect 22 ProxyTimeout 3600 <Proxy *> Order deny,allow Deny from all </Proxy> <ProxyMatch 127.0.0.1> Order deny,allow Allow from all </ProxyMatch>

谢谢你的帮助.

[1] http://dag.wiee.rs/howto/ssh-http-tunneling/

[2] http://blog.cppse.nl/apache-proxytunnel-ssh-tunnel

编辑:我正在运行Apache 2.4

小智 1

由于没有确切的问题,以下是我如何为我的服务器解决此问题(当我想从世界各地的任何计算机访问它时):

https://wiki.ubuntuusers.de/shellinabox/

“shell-in-a-box”模拟一个 ssh shell,可以从任何浏览器调用(我测试了 chrome 和 firefox)。

很好的安装教程在这里:

http://www.howtoing.com/shell-in-a-box-a-web-based-ssh-terminal-to-access-remote-linux-servers/

并且不要忘记删除“--localhost-only”

# if you want to restrict access to shellinaboxd from localhost only
SHELLINABOX_ARGS="--o-beep -s /:SSH:172.16.25.125 --localhost-only"
Run Code Online (Sandbox Code Playgroud)

在配置文件中

/etc/default/shellinabox
Run Code Online (Sandbox Code Playgroud)

以便能够从网络外部访问它。