首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将远程和动态端口转发与SSH相结合实现双隧道

将远程和动态端口转发与SSH相结合实现双隧道
EN

Server Fault用户
提问于 2022-07-09 11:14:46
回答 1查看 720关注 0票数 0

我想要实现的几乎完全就是本文中描述的:https://peter-jp-xie.medium.com/use-double-ssh-tunnels-instead-of-vpn-to-access-private-network-f0dee50d82e3,并在这个图像中表示:

不过,我希望这个图的"Home PC“上的本地隧道(监听端口9000)就像一个动态端口转发(通常使用SSH的-D选项打开),因此基本上是SOCKS代理。

但我希望这个SOCKS代理不通过公共服务器重定向连接,而是将其路由到私有PC上,这将实质上成为真正的“枢纽”点,将连接重定向到它们真正的IP目的地。

换句话说,这就像在“家庭PC”上使用动态端口转发,通过ssh直接连接到“私有PC”,而不是连接到公共服务器。除了私有PC和家庭PC都落后于NAT,而且只能进行传出连接,因此公共服务器需要充当“交会点”。

我无法理解如何结合SSH选项来实现这一点,或者甚至可能与SSH一起实现。如果SSH不是一种选择,您还有什么其他技术可以建议吗?我考虑过可能使用Wireguard,但我不确定私有PC是否可以通过UDP - whish通过Wireguard访问公共服务器。

编辑:我想出了一个解决方案,在“私有PC”上需要一个SSH服务器:首先,创建一个与第一个图像完全相同的双隧道,除了指向本地主机:22在私有PC上。然后,在家庭PC上,SSH通过使用早期创建的本地端口转发(有效地允许home连接到私有PC)并使用-D标志通过这个隧道打开一个动态端口。所以..。一条SSH隧道穿过另一条“双SSH隧道”。我没试过,但我想应该管用的。

还有其他更美丽和更简单的方法来实现这一点吗?

EN

回答 1

Server Fault用户

发布于 2022-07-22 14:00:07

您已经在编辑中描述了一个解决方案:

您必须与ssh -D ...连接,从Home PCPrivate PC (或者可能是Private Server,如果它们位于同一个网络上)。

一个选项可以来自Private PC

代码语言:javascript
复制
ssh -R9000:localhost:22 PublicServer

然后在家庭电脑上:

代码语言:javascript
复制
ssh -J PublicServer -p9000 localhost  -D1080

您在家庭PC上的tcp/1080端口现在是通过PrivatePC的S接口退出的socks代理。

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1105186

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档