Create RDP gateway in Raspberry Pi or Ubuntu
Solution 1
There's no equivalent to Microsoft RDP Gateway service on Linux, but there are ways to simplify connecting to multiple RDP servers through a single external IP which should suit your needs.
The best solution on Linux I've found to date is Guacamole; not the green dip that goes great with tortilla chips and a tequila, but the clientless html5 RDP Gateway. http://guacamole.incubator.apache.org/
Guacamole allows you to build a secure landing page, with a list of preconfigured RDP connections (or VNC and SSH) and connect with any HTML5 browser. You don't even need an RDP client, which is great if you want to connect remotely and only have access to a browser. I've been using it for the past couple months, and it works very well. It does take a bit to get all configured, but I find well worth it to not have another Windows server just for RDP redirection. Lots of documentation out there on configuration and setup,
I've got this running on a really small VM (1 core, 256MB memory) and it handles a couple open connections just fine with CPU and memory to spare. I can't see why a RaspberryPi couldn't handle it (even the original Raspberry). Doing a quick google search for 'guacamole rdp raspberrypi' comes up with lots of links.
Good luck!
Solution 2
As an alternative, I use the '-L' mechanism provided by openssh.
For example, I set up a raspberry pi as the gateway server at home which provides ssh login service from WAN, and run this command on the PC at office:
ssh -nvL :13389:192.168.1.x:3389 IP-OF-PI"
which provides a secured transparent proxy, forwarding all traffic from 127.0.0.1:13389 to my home PC's 3389.
Then I can use mstsc.exe (native rdp client in Windows) to connect to 127.0.0.1:13389.
If you don't have openssh installed on Windows, tunnelier (a ssh client with GUI) is recommended.
Solution 3
There is a remote desktop gateway available that works anywhere where you can compile go programs. It will work on a Raspberry.
https://github.com/bolkedebruin/rdpgw
disclaimer: I’m the author
Related videos on Youtube
ashu
A fun-frolic guy loves to listen music and enjoy bits of life. If you find me, buy me a pizza!! :D
Updated on September 18, 2022Comments
-
ashu over 1 year
I have a few systems in my local network and want to RDP them from the Internet. One method is to allocate different ports to each system for RDP and configure them in the router. However, what I need is to configure RDP in default mode.
For example
<ip-address>:3389/ubuntu
should point to192.168.1.102:3389
.
Similarly,<ip-address>:3389/win7
shall point to192.168.1.101:3389
and so on.I searched Google but articles are related to Windows Server, where they prefer making an RDP gateway server. I a prefer a Linux system (and even better Raspberry Pi) to do this task for me. I tried some RDP related searches on Pi and got information on dnsmasq. But I guess its related to connect to outer network (websites) from local network instead of local network from outside network.
Is is possible? Any hint or link/reference will be very helpful.
-
MariusMatutiae over 8 yearsNo such thing in *Nix, it is a typical Microsoft application. What we use, in lieu of this, is a VPN, one of very many types.
-
ashu over 8 yearsLooks like i have been searching in wrong direction. Thanks for the help. Meanwhile, any help regarding how to connect to system and share screen (just like rdp) will be greatly appreciated.
-
MariusMatutiae over 8 yearsYou should look into vnc (which is a system not an application; apps implementing vnc are called tightvnc, realvnc, ultravnc, remmina) or teamViewer, depending on what you wish exactly to do.
-
-
ashu over 7 yearsThanks for pointing out in the direction. At that time, I was unable to get guide to properly setup and left it. Did it again few months back and it works absolutely fine. Just for help of others, I am adding link for the guide raspberrypi.org/forums/viewtopic.php?f=81&t=71166#p574149