我需要在远程 MS-windows 中创建隧道,因此 MS-windows 中的端口 443 被重定向到端口 443 上的远程目标。
我想做的是从我的远程服务器:
ssh -N -R 443:remote.target:443 [email protected]
但我收到这个错误:
Warning: remote port forwarding failed for listen port 443
在 Windows 服务器中我安装了 OpenSSH。
如果我在 Windows 中使用 8443 端口,隧道就可以工作,例如:
ssh -N -R 8443:remote.target:443 [email protected]
但我需要用 443 做隧道。我尝试更好地配置 OpenSSH(“AllowTcpForwarding yes”、“PermitTunnel yes”和“GatewayPorts yes”,我还尝试以管理员身份重新启动 sshd 服务),但它没有工作。
答案1
可能是因为端口被保留了。许多操作系统都保留了低于 1024 的端口。要使用它们,您必须具有特殊权限(例如,成为 root 用户)。
尝试更高的端口号。如果这有效,那么您就知道问题是什么了。 (只有监听端口必须更高。)
答案2
我在 Windows Server 2019 上遇到了同样的问题,我安装了带有“管理可选功能”的“OpenSSH Server”并进行了配置
AllowAgentForwarding yes
AllowTcpForwarding yes
GatewayPorts yes
我遇到了和你一样的错误。
可以使用的端口在范围内1001 至 65535。
我仍然被这个问题困扰。并且使用该命令netstat -an
没有发现任何使用端口443的程序。
我使用网络测试工具进一步测试。.\iperf3.exe -s -p 443
在 Windows Server 和客户端计算机上使用该命令.\iperf3.exe -c windows.source -p 443
都可以使用,不会发现任何问题。