RDP-Proxy
Starting with version 0.6.0 RPort has the ability to create a tunnel to a remote RDP server with a built-in HTTPS proxy. RPort uses the Apache Guacamole Server to connect to the remote RDP Server, which brings the remote desktop into your browser without the need of an RDP viewer. If a rdp tunnel with https proxy is created, RPort first creates the tunnel to the remote machine and makes it available through the https proxy with path “/”. Pointing the browser to this URL creates a websocket tunnel to connect the browser with the guacamole server and starts the connection to the remote RDP server.
- Apache Guacamole Proxy Server 1.4.X has to be running on 127.0.0.1
- RPort server configuration
tunnel_proxy_cert_fileandtunnel_proxy_key_filemust be set up. The guacd proxy depends on the generic built-in TLS reverse proxy, which is enabled by providing a key and a certificate.
👉 You don’t need a fully featured Guacamole installation. Only theguacdis needed, which is a lightweight and easy to install daemon. It does not require any configuration or special maintenance.
To run the guacamole server guacd you have the following options:
Use the pre-compiled packges for Ubuntu or Debian we have perpared to run the
guacdjust for RPort. downloads and instructionsBuild the Guacamole Server from source and run it, which is described here.
Use one of the provided Docker images for guacd, e.g. from linuxserver.io
docker pull lscr.io/linuxserver/guacd docker run -d --name=guacd -p 4822:4822 --net=host --restart unless-stopped lscr.io/linuxserver/guacdImportant: docker run with
--net=hostto connect to RPort tunnel on 127.0.0.1
If the browser links to the exposed proxy port with “/”, query parameters can be set to control the rdp connection.
E.g. /?username=Administrator&width=800&height=600&security=nla&keyboard=de-de-qwertz
usernameis the pre-filled login user on the remote machine. For security reasons, the password cannot be injected.widthfor the required screen width andheightfor the required screen height. Ifwidthandheightare omitted, 1024 x 768 are the default values.securitywith one of the following values:any,nla,nla-ext,tls,vmconnect,rdp.nlais the most commonly used security option on MS Windows. Read more on the Guacamole documentation.keyboardto identify the local keyboard of the user, not the desired remote keyboard, with one of the following options.- Brazilian (Portuguese),
pt-br-qwerty - English (UK)
en-gb-qwerty - English (US)
en-us-qwerty - French
fr-fr-azerty - French (Belgian)
fr-be-azerty - French (Swiss)
fr-ch-qwertz - German
de-de-qwertz - German (Swiss)
de-ch-qwertz - Hungarian
hu-hu-qwertz - Italian
it-it-qwerty - Japanese
ja-jp-qwerty - Norwegian
no-no-qwerty - Spanish
es-es-qwerty - Spanish (Latin American)
es-latam-qwerty - Swedish
sv-se-qwerty - Turkish-Q
tr-tr-qwerty
- Brazilian (Portuguese),
Read more on the Guacamole documentation