我需要通过VNC从我的机器A连接到另一台属于我的朋友B的机器。我们都无法打开传入端口-- IP不允许隧道操作,除非您购买基于静态IP的业务计划。两者都是linux系统BTW。
我们有一个具有完全访问权限的web服务器,在那里我们都可以使用ssh进入。我们如何设置一个隧道,从两端到服务器,使VNC工作?
我知道如何在两个系统之间建立一个ssh隧道,我相信通过先在A到B上运行ssh,然后在B到C上运行ssh来实现A->B->C并不难。
但我需要A->C和B->C,而不是A->B和B->C
基本上,我想我需要一个代理服务器--这能用SSH或者某种linux网络魔法来完成吗?
发布于 2020-04-20 13:07:02
假设C是你们两个都可以访问的Let服务器(A:您和B:您的朋友)。
C的
添加网关端口yes
vim /etc/ssh/sshd_config
在底部添加"GatewayPorts是“,这样远程主机将在0.0.0.0接口上而不是127.0.0.1接口上侦听
GatewayPorts是
B的
ssh -i auth.pem -R 0.0.0.0:port1:localhost:port2 xxx@xxx.xxx.xxx
A的
现在,您可以使用VNC连接到C的port2,同时实际查看B的屏幕。
发布于 2020-04-18 22:43:22
这可能是你想要的答案,也可能不是你想要的答案,但是有两个服务需要查看:
他们所做的事情大致相同。这两种方法都允许您在多台计算机之间创建虚拟专用网络,而无需执行任何防火墙或端口转发配置。这两种服务都有一个免费的层,尽管如果您需要大量连接的计算机,ZeroTier允许更多的计算机使用它们的免费版本。两者都可以在Linux、Windows和Mac上工作(ZeroTier也可以在许多其他平台上工作)。
https://serverfault.com/questions/1012982
复制相似问题