在端口 80 上设置 SSH 服务器

在端口 80 上设置 SSH 服务器

我想在端口 80 上设置一个到公共互联网的 SSH 服务器。

我有适用于 Windows 的 SSH安装在我的计算机上,我可以使用 Putty 通过 SSH 进入本地主机。

在我的路由器配置中,我设置了一个“虚拟服务器”来将 TCP 和 UDP 从公共端口 80 转发到我本地机器的端口 22。

但是当我使用盾牌升起它告诉我端口 80 是关闭隐身。

我使用的是 D-Link 路由器。我可能遗漏了什么吗?

为什么是 80 端口?我正尝试从防火墙后面的另一台计算机访问我家里的机器上的某些文件,该防火墙阻止了端口 22。不确定 443 或 8080 是否被阻止。

答案1

对于 ssh 来说,使用端口 433 是一个好主意,因为数据包与 https 无法区分。

如果防护罩向上显示端口关闭,这意味着

  1. 路由器上的防火墙正确地允许数据包传递到您的 LAN,但它们不会被您机器上的守护进程接收。
  2. 路由器上的防火墙并未配置为仅仅将数据包丢弃到不需要的端口。

第二点不太可能——防火墙通常只是丢弃不需要的数据包,因为回复意味着通过管道发送更多不必要的流量,攻击者可能会从回复中获取知识,或者源 IP 可能被欺骗(这甚至可能意味着有人在利用你来攻击别人..)。

因此假设 1. 为真,则有可能

  1. 您的机器上运行着某种个人防火墙,可以对数据包进行回复。
  2. 您的 ssh 守护程序不接受连接(也许它被配置为仅接受来自某些设备、子网等的连接)

如果 shields up 告诉您端口是“隐藏的”,则意味着途中的防火墙会悄悄丢弃数据包。这要么意味着您的路由器配置错误,要么意味着您处于某种 NAT 后面。

您可以在问题中添加有关您的互联网连接方式和 ISP 的信息,这可能会有所帮助。

答案2

有几个原因:

  1. 一些 d-link 路由器不喜欢端口转发 80。您可以通过将路由器接口使用的端口更改为 8080 之类的端口来解决此问题 - 然后您的规则可能会起作用。

  2. 一些 ISP 不允许端口 80 上的入站流量 - 这很可能就是您看不到允许的总体原因。

为什么需要使用 80 端口?可以使用其他端口吗?

答案3

您的 ISP 可能会阻止端口 80 上的流量,以阻止您运行 Web 服务器,请尝试使用高端口,例如 48928

答案4

您肯定走在正确的道路上!

之前提到的路由器不愿意放弃 80 端口的建议是合理的。我以前处理过类似的问题,并且取得了成功,所以我将与你分享我的经验。

我建议使用您一定能在 ISP 出口防火墙上找到的打开的端口。

Port 443 

此端口始终是我的首选。您的 ISP 无法锁定此端口,否则会破坏所有允许您在线购物的网站。

Port 53  

这个港口也几乎总是开放的。

相关内容