如何通过无线路由器后面的ssh远程连接到计算机?

如何通过无线路由器后面的ssh远程连接到计算机?

目前我使用的是无线路由器TP-Link WR740N。我尝试了以下两种解决方案来连接到位于无线路由器后面的主机:

  1. 使用TP-Link WR740N提供的“虚拟服务器”功能,将服务端口22映射到我的主机IP地址。
  2. 使用无线路由器的“DMZ”功能,通过该功能我的主机将完全向WLAN开放。

然而,上述两种解决方案都没有成功。我还确信我的无线路由器和主机的防火墙配置都允许 ssh 通信。

您能帮我找出原因吗?谢谢你!

答案1

我假设您在提到的配置中没有犯任何错误。如果您的主机位于 DMZ 中并且连接仍然失败,则您的 ISP 可能会阻止某些流量 - 特别是通常与服务器关联的流量。

解决此问题的一种方法是使用不同的端口进行连接。你可以

  • 将面向 WAN 的较高端口 (>1024) 转发到您盒子上的端口 22。
  • 配置 SSH 以侦听另一个端口并将该端口转发到您的盒子。

两者都有同样的效果。如果此时仍然无法正常工作,则可能是您的路由器配置设置不正确。

答案2

我真的不确定问题是什么,但通常我会选择 SSH,

  1. SSH Deamon 运行在主机上,如果运行则运行在哪个端口上?
  2. IPTables/防火墙允许该特定端口吗?
  3. TCPWrappers 有什么问题吗?

如果您知道主机的 IP,只需ssh username@hostnamessh username@IPof_host即可。

如果您遇到任何错误,请告诉我们。祝你好运。

答案3

我会尝试调试一下...

  • 首先,尝试拥有ssh主机ssh客户端在同一网络中,然后从您的客户端执行此操作ssh -p host_ssh_port host_user@host_ip,以确保此级别上一切正常。如果有效,您可以转到下一步,如果无效,请发布 的输出ssh -v -p host_ssh_port host_user@host_ip

  • 二、配置虚拟服务器在您的路由器上使用上面步骤中的host_ssh_porthost_ip,并尝试使用 进行连接ssh -p host_ssh_port host_user@router_external_ip。如果这不起作用,请发布 的输出ssh -v -p host_ssh_port host_user@router_external_ip

作为旁注,考虑到您的路由器似乎无法对不同端口(端口 4022 到端口 22)进行 NAT,请尝试使用host_ssh_port大于 1024 的端口并调整您的虚拟服务器到它。

相关内容