1

我的问题可能有点令人困惑,但无论如何。我的学校打算在单独的 IP 上为学生开放 WiFi DMZ,但他们说端口 80 将是唯一开放的端口。

我想要什么?好吧,我想通过我的家庭服务器传输我的流量,该服务器在 80 上运行 Apache2,在 21 上运行 SSH。这只是一个常规设置。因为它是一台生产机器,我希望客户端能够连接到端口 80,但我想连接到端口 80 来建立隧道。问题是:如何做到这一点?

可能的解决方案:放弃从学校IP连接到服务器上运行的网站并使用IPTABLES的可能性。如果源 ip == $school_ip && 端口 == 80:重定向到端口 21。完成。但我认为必须有另一个优雅的解决方案......难道不能实际使用 HTTP 传输进行 SSH 传输吗?我的意思是创建一个名为 ssh.mydomain.tld 的主机,并使用一些 apache 模块将服务器端重定向到端口 21,但仅限于该特定主机名?我能做些什么?

Box 正在运行 Debian GNU/Linux

谢谢你的帮助...

题外话:他们认为他们会阻止任何形式的非法操作。事实上,HTTP 可能是仅次于 BitTorrent 的第二大易受攻击的协议。为什么不把它也锁起来?如果没有开放端口,那将是绝对安全的,不是吗?我个人认为阻止 POP、IMAP、Jabber 等端口没有任何好处。如果他们甚至无法打开老师发给他们的邮件,我认为他们可能会严重激怒某人。哦,有网络邮件吗?不不不!SSL/TLS 在端口 443 上运行,记得吗?我认为阻止所有流量不会有任何好处。IMO 他们应该阻止未加密的 BitTorrent 并为未分类的传输应用低优先级 QoS。

4

2 回答 2

2

您可以尝试此处的说明:http: //dag.wieers.com/howto/ssh-http-tunneling/

proxytunnel 在稳定的 repo 中可用: http ://packages.debian.org/search?keywords=proxytunnel&searchon=names&suite=stable§ion=all

于 2012-01-05T19:08:13.437 回答
0

一个简单且有效的解决方案是sslh。它正是解决该问题的工具。BTW ssh 通常设置在 22 端口。

于 2014-11-11T21:51:14.710 回答