如何隧道Windows远程桌面通过SSH使用Linux的盒子?

我的家庭networking中有两台物理服务器,linux192.168.8.x )和windows server 2008( 192.168.8.y )。

Linux服务器不能通过ssh在非标准的端口上访问(比如23008)。 如何通过Linux上的SSHbuild立一个永久的RDP隧道? 我知道我可以在外部机器上使用腻子,但我不知道如何正确地在Linux上设置sshd。 感谢任何提示!

假设您的Linux机器可以通过端口23008从1.2.3.4的互联网访问,那么在外部系统上,我会这样做:

 external% ssh -p 23008 -L 13389:192.168.8.y:3389 [email protected] 

然后,我会连接到端口转发的RDP系统

 external% rdesktop localhost:13389 

如果你的外部盒子不是Linux的盒子,那么你将拥有相同的命令。 这个想法还是一样的:把外部端口13389转发到192.168.8.y的端口3389,然后使用外部的RDP客户端连接到localhost:13389

你指的是正确设置linux的sshd,但是除非你重新configuration了它,否则标准的sshd设置很可能会支持这一点。

 ssh -L 3389:<ip of windows server>:3389 <ip of ssh server> -l <ssh user> -N 

假设3389是您的RDP运行的端口,并且ssh服务器可以访问所述端口,那么您可以连接到127.0.0.1:3389,就好像它是远程服务器一样。