在 Raspberry Pi 或 Ubuntu 中创建 RDP 网关

在 Raspberry Pi 或 Ubuntu 中创建 RDP 网关

我的本地网络中有几个系统,我想通过互联网使用 RDP 连接它们。一种方法是为每个系统分配不同的 RDP 端口,并在路由器中配置它们。但是,我需要的是将 RDP 配置为默认模式。

例如<ip-address>:3389/ubuntu应该指向192.168.1.102:3389
同样,<ip-address>:3389/win7应指向192.168.1.101:3389等等。

我在 Google 上搜索,但文章都与 Windows Server 有关,他们更倾向于制作 RDP 网关服务器。我更喜欢使用 Linux 系统(甚至更好的 Raspberry Pi)来为我完成这项任务。我在 Pi 上尝试了一些与 RDP 相关的搜索,并获得了有关 dnsmasq 的信息。但我猜这与从本地网络连接到外部网络(网站)有关,而不是从外部网络连接到本地网络。

有可能吗?任何提示或链接/参考都会非常有帮助。

答案1

Linux 上没有与 Microsoft RDP 网关服务等效的服务,但有一些方法可以简化通过单个外部 IP 连接到多个 RDP 服务器的过程,这应该可以满足您的需求。

到目前为止,我发现的 Linux 上最好的解决方案是 Guacamole;不是与玉米片和龙舌兰酒搭配的绿色酱,而是无客户端的 html5 RDP 网关。http://guacamole.incubator.apache.org/

Guacamole 允许您构建一个安全的登录页面,其中包含预配置的 RDP 连接(或 VNC 和 SSH)列表,并连接到任何 HTML5 浏览器。您甚至不需要 RDP 客户端,如果您想远程连接并且只能访问浏览器,这非常棒。我过去几个月一直在使用它,它运行良好。配置确实需要一点时间,但我发现这非常值得,因为不必再为 RDP 重定向而使用另一台 Windows 服务器。关于配置和设置的文档很多,

我在一个非常小的虚拟机(1 核,256MB 内存)上运行了这个程序,它可以很好地处理几个打开的连接,而且 CPU 和内存都很充足。我不明白为什么 RaspberryPi 无法处理它(即使是原始的 Raspberry)。在谷歌上快速搜索“guacamole rdp raspberrypi”会出现很多链接。

祝你好运!

答案2

作为替代方案,我使用 openssh 提供的“-L”机制。

例如,我在家里设置了一个 Raspberry Pi 作为网关服务器,它从 WAN 提供 ssh 登录服务,并在办公室的 PC 上运行此命令:

ssh -nvL :13389:192.168.1.x:3389 IP-OF-PI"

它提供了一个安全的透明代理,将所有流量从 127.0.0.1:13389 转发到我家用电脑的 3389。

然后我可以使用 mstsc.exe(Windows 中的本机 rdp 客户端)连接到 127.0.0.1:13389。

如果您没有在 Windows 上安装 openssh,建议使用 tunnelier(带有 GUI 的 ssh 客户端)。

答案3

有一个远程桌面网关可用,可以在任何可以编译 go 程序的地方工作。它可以在 Raspberry 上运行。

https://github.com/bolkedebruin/rdpgw

免责声明:我是作者

答案4

截至目前,至少有一个开源和一个商业的 Microsoft RD Gateway 兼容 Linux 的替代解决方案可用:

相关内容