尝试通过 SSH 在 LAN 外进行操作超时,即从互联网到 LAN 未建立连接

尝试通过 SSH 在 LAN 外进行操作超时,即从互联网到 LAN 未建立连接

我运行的是 Ubuntu 12.04,无法通过 SSH 从“Internet”连接。路由器是 TL-MR3420,设置为将请求转发到 ubuntu 机器上的一个 NIC(总共有 3 个 NIC)。

我可以从“本地”网络/LAN 上的客户端进行 SSH。

路由器中的转发机制似乎有效。如果我在 Ubuntu 计算机上停止 SSH 服务,并在 Windows 计算机上启动 SSH 服务 - 它运行良好。

我不使用标准端口 22,但据我所知这应该不是问题 - 因为它在 Win 机器上的同一端口上工作。

由于我的公共 IS 不是静态的,因此我使用 dynDNS 服务,但如前所述,相同的设置可在 win 机器上运行。

路由器位于 192.168.0.1

Ubuntu NIC 具有以下 IP:eth2 192.168.0.100,eth1 192.168.0.101,eth0 192.168.0.102,并且我已将“外部”请求转发到 192.168.0.100

关于 Ubuntu 机器上的防火墙设置,我已经禁用 ufw,并且命令 ufw status 给出状态:不活动。

我不知道这是相关信息,但是

命令 iptables --list 给出:

链输入(策略接受)目标保护选择源目标

链转发(策略接受)目标保护选择源目标

链输出(策略接受)目标保护选择源目标

我尝试借助 wireshark(我不太习惯使用的工具)来捕获流量,似乎有几个(3 个?)“请求”实际上到达了 NIC,但是……什么也没有发生。

在这些尝试期间,系统日志不会显示任何条目。

或许是一些路由问题,但我已经达到了我的能力水平并且陷入了困境......非常感谢所有帮助和支持来解决这个问题。

我是 Linux 新手,所以请不要假设我的配置是正确的 - 但正如我之前所写的 - 如果启动 SSH 的客户端在 LAN 上,那么一切都可以正常工作。

附言:我也曾尝试通过互联网使用 VPN(PPP),但没有成功——VPN 再次在 Windows 机器上运行...所以我最好的猜测是,这与 ubuntu 机器如何处理(IP)流量有关,而不是 TL-MR3420 路由器或其他网络问题。

答案1

可能发生的情况是 SSH 服务未在所有网络接口上运行。检查你的/etc/ssh/sshd_config文件是否包含以下内容

端口(您的端口)
#使用这些选项来限制 sshd 将绑定到哪些接口/协议
#聆听地址 ::
#监听地址 0.0.0.0

并且该ListenAddress指令注释掉了。

相关内容