我正在尝试通过我的apache web服务器通过HTTP连接到我的SSH服务器,我已按照[1]和[2]等指南中的说明进行操作,隧道连接并且约1分钟后我得到SSH连接到我的服务器。
然而,在链中的某处似乎有60秒的超时,因为我在大约60秒后得到错误Socket read error: [104] Connection reset by peer
。当我按配置运行ssh命令和单独运行proxytunnel
命令时,都会发生这种情况。
我尝试通过将ServerAliveInterval
更改为30秒并在TCPKeepAlive
文件中启用.ssh/config
以及在apache中放置ProxyTimeout 3600
来解决此问题配置,我在下面包含。
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
答案 0 :(得分:1)
由于没有确切的问题,以下是我如何为我的服务器修复此问题(当我想从全球任何计算机访问它时):
https://wiki.ubuntuusers.de/shellinabox/
&#39; shell-in-a-box&#39;模拟一个可以从任何浏览器调用的ssh shell(我测试过chrome和firefox)。
这里的安装教程很好:
http://www.tecmint.com/shell-in-a-box-a-web-based-ssh-terminal-to-access-remote-linux-servers/
并且不要忘记删除“仅限本地主机”&#39;
# if you want to restrict access to shellinaboxd from localhost only
SHELLINABOX_ARGS="--o-beep -s /:SSH:172.16.25.125 --localhost-only"
在配置文件中
/etc/default/shellinabox
以便能够从您的网络外部访问它。
答案 1 :(得分:0)
可以通过在apache配置中设置以下内容来工作
RequestReadTimeout header=0,MinRate=500 body=0,MinRate=500
请参阅https://sourceforge.net/p/proxytunnel/mailman/message/33649006/