我想通过 SSH 远程访问我的 Ubuntu PC。SSH 守护程序当前正在监听端口 [x]。我的路由器是 ASUS DSL-N12E。
我已经为防火墙创建了一条规则,其参数如下:
- 协议:TCP
- 方向:下游
- 源端口:[X]
- 目标 IP/掩码:192.168.1.100/255.255.255.255
- 目的港:[X]
以及具有以下参数的 NAT 虚拟服务器规则:
- 协议:TCP
- 本地 IP:192.168.1.100
- 本地端口:[X]
- 广域网 IP:pppoe1
- WAN 端口:[X]
我可以使用 从本地网络连接到 SSH 服务器,但无法使用。我猜路由器配置有问题,尽管 canyouseeme.org 说端口 [x] 已打开。ssh -p [x] [email protected]
ssh -p [x] myuser@mypublicip
对我可能做错的事情有什么想法吗?
答案1
这是很多路由器的常见问题。
这听起来很简单,就像您需要启用NAT reflection
,Nat hairpin
或者NAT loopback
,名称在不同的路由器上会发生变化 - 但请注意,并非所有路由器都支持它。
... 请检查您的固件版本,看起来您的路由器要么开箱即用,要么有缺陷......我刚刚发现这个,尽管已经 6 个月了,但它表明固件修复了环回不总是起作用的问题。(不要从这里下载 - 直接查看华硕是否有更新的版本)。
答案2
您可以通过本地网络的 ssh 访问连接您的机器,但无法进行远程访问。
您可以通过 ;local 网络连接,因为您的机器上打开了端口 [x],并且您使用本地 ip 来访问它
请检查您的端口转发设置是否完美。
还可以使用 telnet 检查从远程 IP 到你的公共 IP 的监听端口
telnet [remote_ip] [port_number]
希望这可以帮助!