在我目前的工作设置中,我有:
- Windows 7 笔记本电脑
- Ubuntu虚拟主机/SSH
- Windows 2k8 来宾
我希望能够从我的笔记本电脑通过 RDP 访问 Windows 客户机,而无需打开其他端口或将 Windows RDP 直接暴露到互联网。
如果我使用 Putty 将 localhost:10467 转发到 ubuntuhost:22,OpenSSH 可以将此连接转发到 windowsguest:3389 还是我需要开始寻找 VPN 解决方案?
答案1
使用隧道 SSH,您可以执行类似的操作:
laptop Ubuntu server guest
____ 10467 22 _____ ? 3389_____
| |___________________| |__________| |
|____| \ |_____| |_____|
\
\__SSH connection
但请注意,只有笔记本电脑和 Ubuntu 服务器之间的连接才会被加密。并且端口 3389 必须打开,所以这不是您要寻找的。如果您想通过可从 Internet 访问的服务器执行 RDP,则应该使用 VPN。
如果 Ubuntu 服务器与 windowsguest 位于同一个受保护的局域网 (LAN) 中,那就没问题。您只需在 windowsguest 上打开 3389 端口并在防火墙上将其关闭,以使其保持受保护状态。即使可以通过 Internet 访问 windowsguest,它也不会使用相同的接口与 Ubuntu 服务器以及世界其他地方进行通信。因此,只需确保 Internet 接口上的 3389 端口关闭,LAN 接口上的 3389 端口打开即可。
使用该openssh
程序,命令行将如下所示
ssh -L 10467:windowsguest:3389 user@ubuntuhost
。
PuTTY 也有相同的选项。
在此窗口中:
- 选择“本地”选项
- 输入“windowsguest:3389”作为目的地
- 输入“10467”作为源端口
- 保留“自动”选项
这张图片取自http://howto.ccs.neu.edu/howto/windows/ssh-port-tunneling-with-putty/这是一个关于使用 SSH 进行端口隧道的非常好的教程。