sftp/ssh 连接在网络上有效,但在外部无效

sftp/ssh 连接在网络上有效,但在外部无效

好吧,这很奇怪。我通常不会在这里问问题,但我已经玩了 5 个小时,我的大脑都快崩溃了。

我已经在我的网络上设置了一个 sftp 服务器,并且在我的 sshd_config 文件中具有以下属性:

Match group sftp
ChrootDirectory /home
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp -d /dataUser/drive1/data/

运行良好当我在本地使用它时,我也可以连接到根当我从另一台 PC 本地连接时,用户。设备具有本地 IP 192.168.0.42。我们称之为设备A
现在我想通过互联网使用它,所以很自然地,我在这个设备上将端口 4000 转发到端口 22:
端口转发 - 左边数字为 LAN,右边数字为 WAN 端口

好的。那我们尝试连接吧。
错误消息:连接超时

那么是端口转发吗?我在 WAN 端口 42069 上有另一台服务器转发到 LAN IP 31 和端口 22(以及其他端口。它们都(刚好)工作)。我们称之为设备B。它运行良好。无论是在网络内部还是外部。

我也尝试连接到A使用 ssh 连接到 root 用户,而不是使用 sftp 连接到数据用户。它在网络上有效,在外部无效。

好吧,我使用 nmap 扫描我的端口
端口 42069 转到设备B- 状态:开放
4000 端口设备A - 状态:已过滤

我也尝试了其中一个网站 - CanYouSeeMee.org显然我的 ISP 没有阻止这个端口。

所以我尝试了同样的方法,使用 samba 文件共享。结果相同。它在网络内部有效,在外部无效。该网站表明我的 ISP 不是魔鬼为了浪费我的时间而创建的,nmap 显示状态为“已过滤”。

我多次更改了端口,在路由器设置中停用了防火墙,并且已经重新启动了两次(我的客户端和服务器也是如此)。

我真的不知道这是否可以解决。我目前已经放弃了,也许你可以帮助我。

答案1

您的路由器显然不支持 NAT 环回,这意味着如下环路:

PC -> 路由器 -> 互联网 -> 路由器 -> PC

NAT 环回/发夹结构 许多消费级路由器不支持。

要通过公共 IP 连接到计算机,您应该从本地网络外部进行连接。例如,使用您的手机。

答案2

您必须使用哪个路由器进行端口转发。您是否在其他网络上使用了公共 IP。

您需要使用另一个网络(例如手机的热点)来访问您的端口转发,否则所有流量都会流向路由器本身。

这在我的 OpenWRT 路由器上有效

相关内容