假设我在计算机实验室中使用一台 Ubuntu 机器,它的私有 IP 为 10.255.1.34。我在家里使用本地 ISP 提供的互联网,所以我家里的 PC 有一个私有 IP,如 172.16.203.105。我在两个地方都只是用户。是否可以通过 SSH 隧道将这些连接到 PC?您也可以建议我任何其他方法。
谢谢
答案1
您想让两个私有 IP 在互联网上通信吗?除非您可以转发两端的端口(以便能够从 A 到 B 进行 ssh 连接,反之亦然,否则您只能单向连接):不行。
替代方案?您可以在某处设置具有公共 IP 或可转发的 IP/端口的 VPN 服务器。
答案2
以下可能不是真正的 ssh 隧道,但可以作为问题的替代解决方案。首先……
您必须在家庭网络防火墙/路由器上设置转发规则。假设您将端口 2022 转发到 172.16.203.105 上的 22。这意味着您可以像下面所示那样通过 ssh 连接到您的家用电脑“172.16.203.105”。
ssh -p 2022 “你的公共主 IP”
下一步是 ssh 隧道,你可以针对每个应用程序或整个 PC 执行此操作
对于整个来说
ssh -X -p 2002 "YOUR-PUBLIC-HOME-IP"
只想访问你电脑上的 80 端口
ssh -L 2112:72.16.203.105:80 "YOUR-PUBLIC-HOME-IP" Note:- Port 2112 is a random port you can choose any unused port >1000
假设你想在本地工作站上安装你的主文件系统
sshfs -p 2022 user@YOUR-PUBLIC-HOME-IP /local-mountpoint
首页 这回答了您的问题。