我可能有一个可以想象到的最简单的 ssh/端口转发问题。我在这里和其他地方搜索过,但还是没能让它工作。我使用网络和 ssh 多年,但从未设置过,所以缺少一些基本的了解。
无论如何,我想做的事情很简单。我家里有 WLAN,配有 Netcomm 调制解调器/路由器。我相信我已经为我在家里运行的某台机器设置了端口 22 的端口转发(即为这台机器指定 192.168.1.X 地址)。我通过调制解调器的 GUI 界面执行了此操作。
现在,我希望能够从家庭 WLAN 之外的任何其他地方(即远程)通过 SSH 进入这台机器。
我可以成功 ping 我的固定 IP 地址,但尝试 ssh 连接却失败。不管怎么说,这台机器运行的是 Ubuntu。很抱歉问这么基础的问题。
答案1
您需要进入调制解调器/路由器的配置面板。然后将 ssh 端口转发到运行 sshd 的机器的 IP
在 netear 上,Firewal Rules
您需要为服务Inbound Service
添加192.168.1.X
端口22
ssh
答案2
您需要验证您的 ISP 是否不会阻止创建连接(巴西的某些 ISP 会阻止您的固定 IP 监听较低的端口 (< 1024))。
另一个选择是让互联网上的一台机器作为您家用机器的代理 - 您需要在家用机器上运行 ssh 到此-R
代理机器并GatewayPorts
在远程启用,以便您可以在接口而不是本地主机上重定向端口。例如,如果您在 Ubuntu 机器上运行:
ssh -N -f -R 0.0.0.0:2222:localhost:22 user@remote-machine
端口上的所有连接都2222
将remote-machine
通过隧道重定向到您的 Ubuntu 机器(即使该机器位于 NAT 内部并且没有端口转发调制解调器)。