linux-通过ssh隧道路由RDP

我以为我可以在这里轻松找到答案,但是没有运气.也许这是不可能的:
假设以下情况:我坐在星巴克,将win 8笔记本电脑连接到他们的WLAN.我打开了到我的Amazon ec2 micro ubuntu实例的ssh连接.
早晨,在我离开家之前,我从家中的Win 8机器上打开了到同一实例的另一个SSH连接.
现在从我的腻子终端上,我可以看到连接pts / 0和pts / 1以及netstat -n给我提供了两个防火墙(星巴克和我的防火墙)的ip地址以及它们的10000端口号以及我的ubuntu服务器地址(带有端口22) .
我在ubuntu机器上的ssh服务器已启用TCPForwarding.

现在如何配置腻子以使rdp隧道化,以便可以访问我的家庭服务器?我是否需要在ubuntu实例上做其他工作才能转发rdp数据包?

Win-Laptop —>星巴克防火墙—> ec2-ubuntu-微实例<-my-firewall<-my-win-desktop 感谢您的观众.

解决方法:

如果您的台式机和笔记本电脑都运行OS X / Linux / BSD,建议您在台式机上运行此软件:

autossh -R 127.0.0.1:3389:127.0.0.1:3389 your.ec2.instance

这在您的笔记本电脑上:

ssh -L 127.0.0.1:3389:127.0.0.1:3389 your.ec2.instance

然后,您就可以在笔记本电脑上打开与本地主机的rdp连接,它将被转发到您的桌面.您无需在ec2实例上进行任何其他配置.我假设您的笔记本电脑上没有运行RDP服务器.

那么我们如何使用腻子来做到这一点呢? (我在这里稍作猜测.)

>在左侧窗格中选择“连接→SSH→隧道”类别
>对于“源端口”,输入“ 3389”
>对于“目标”,输入“ 127.0.0.1:3389”
>选择“本地”(用于从笔记本电脑连接)或“远程”(用于从台式机连接)
>点击“添加”
>然后您需要将这些详细信息保存在“会话”类别中

理想情况下,如果由于某种原因断开连接,则希望从桌面重新启动该连接. (如果您的家庭网络类似于我的家庭网络,它有时会出现故障并断开连接.但是也许您的家庭网络比我的网络更可靠.)

上一篇:CodeForces - 1237B - Balanced Tunnel(思维)


下一篇:java-HttpClient:如何从现有连接获取基础套接字?