我很难连接到我的 Ubuntu SSH 服务器。我使用 Putty 作为我的 SSH 客户端。我已经运行了常规诊断程序并验证了...
- 服务器上安装了 OpenSSH
- 服务器和调制解调器上的端口 22 已打开
- 端口 22 转发到服务器
- SSH 正在运行
- 可以使用 Putty 从 LAN 上的其他设备连接到 SSH 服务器,但不能连接到外部
- 可以从 LAN 上的其他设备 ping SSH 服务器,但不能从外部
我甚至可以使用“canyouseeme.org”来获取...
“成功:我可以在端口 (22) 上的 $my.external.IP.address 上看到您的服务,您的 ISP 没有阻止端口 22”
但是...如果我将我的外部 IP 地址输入到 Putty 中,它只会带我进入黑屏,直到连接超时。
发生了什么事?我想不出问题可能出在哪里。
答案1
连接后,我尝试将外部 IP 地址输入到 Putty 中。当然……没用。我是否应该尝试从不在同一 LAN 上的计算机连接到服务器?这有关系吗?
是的,这是一个大问题。当您位于主(ISP)网关后面的 LAN 端时,您无法使用外部(公共 IP)地址。如果您的路由器不支持 NAT 反射(大多数消费级防火墙没有此功能),那么它将无法工作。尝试使用 putty 从本地网络(家庭/咖啡店)的“外部”连接到您的服务器,然后当您在 LAN 端时,它应该可以工作并使用服务器的本地(LAN)IP。
答案2
问题显然出在您的路由器上,而不是服务器。
“成功:我可以在端口 (22) 上的 $my.external.IP.address 上看到您的服务,您的 ISP 没有阻止端口 22”
这个结果对你没有太大帮助...未被阻止并不意味着设备正在该端口上监听数据。
您的路由器品牌和型号是什么?这样我们就可以为您提供帮助!
我知道怎么做,尝试添加一个 NAT 规则,将传入的端口 22 连接重定向到您要访问的 LAN 设备(例如:将端口 22 重定向到 192.168.0.45)