一个用户有一台公司笔记本电脑(Windows Vista),并且位于不允许任何流量传出的网络中,需要登录我的一台 SSH 服务器。但没用。据我所知,安全性如下:
- 路由器级别的一般端口限制;仅允许 80、443 等。
- 本地软件防火墙限制程序访问(赛门铁克软件)
- HTTP 没有代理。
- 他不是笔记本电脑的本地管理员。
我制定了一条 iptables 规则,将端口 80 转发到 22。当他使用 Internet Explorer 访问主机时,他会获得一个 SSH 版本字符串。但是,Putty 无法连接。wget 也不能。
我怀疑是赛门铁克防火墙阻止了它。打开状态面板时,您看不到允许什么和不允许什么(但您可以看到每个程序建立的连接),但我怀疑当有人以管理员权限访问它时,您将能够看到它,并授予程序访问权限。
总而言之,我尝试过:
- 端口 80 上的 ssh
- VPN 到主机(也被阻止)
- 命名 putty.exe IExplore.exe
- 将路由添加到路由表(不能,您需要管理员权限)
目前我看到的唯一解决方案是在相关服务器上安装基于 Web 的 ssh 客户端......
答案1
我会先联系他们的网络管理员,解释为什么需要打开端口。作为网络管理员,如果有人需要 SSH 流量是有正当理由的,我会毫不犹豫地启用它,并调整他们机器上的防火墙规则,以允许所需的任何流量。
这些东西被屏蔽的原因是,许多地方只允许他们需要的流量,而屏蔽其他所有流量,直到有人真正需要它为止。屏蔽所有流量并允许您认为是好的东西要比允许所有流量并试图屏蔽坏东西容易得多。例如,这样的限制可以帮助防止病毒传播或连接到其控制服务器。
如果网络管理员不能/不愿意帮助您,您可以在服务器上安装基于 Web 的终端程序。 盖特一号是一款非常棒的产品,具有很多实用的功能。
由于这些都是常规网络流量,因此本地计算机防火墙和网络防火墙都可能允许其通过。我在一家酒店非常严格的网络上进行了测试,没有出现任何问题。
总结
您的选择从好到坏依次为:
联系网络管理员,让他们修复它 - 如果是出于商业目的,他们会
在你的服务器上安装基于 Web 的终端或 SSH 客户端
获取一个蜂窝互联网 USB 棒并使用它来代替提供的网络
答案2
另一个解决方法可能是安全组,一个 ssh/ssl 多路复用器:它将 https 连接多路复用(在 443 上监听)到 apache 并将 ssh 请求多路复用到 sshd。
答案3
我不确定这是否需要管理员权限,但您可以使用 stunnel。防火墙会将其视为 https,并且 putty 的本地访问几乎不会被阻止。
答案4
也许防火墙也会检查流量类型,如果它发现 SSL 流量通过 80 端口,它就会断开连接。尝试在端口 443 上启动 ssh,如果我没记错的话,这可能会有所帮助。