Secure remote desktop access with VNC

qbee.io can securely forward any port from a target edge device to a local machine. It uses qbee-connect to map the remote port to a local port such that it is securely accessible via localhost:port. In this way it is very similar to Teamviewer, Anydesk or LogMeIn and a real alternative. The security layer between the VNC client and server is provided by the secure qbee VPN tunnel. Thus it can traverse firewalls, NATs and this works even through mobile connections without any static IP address.

Access any remote port on an edge device through any network

qbee.io can access any remote port locally on your PC going through any type of network. The qbee agent initiates the VPN tunnel. The desktop client software works on Windows, Linux and MacOS.

In this use case example it is shown how we connect to a remote VNC client on the embedded edge device. For this example we use a Raspberry Pi and RealVNC server as this is already part of the Rasbian image (Raspberry Pi OS). However, any other VNC server will work as well and this works on any platform qbee runs on.

There are a few simple steps to follow:

  • Install a full Raspbian / Raspberry Pi OS image on your Raspberry Pi. This includes a VPN server (RealVNC). Alternatively you can just install the RealVNC server or any other VNC server on your device.

  • Download the qbee agent and bootstrap the device to the qbee platform. Just follow this guide.

  • Enbable the VNC server in the Raspberry Pi menu by selecting enable (this is done manually here, ususally this would be done through the qbee configuration engine).
    qbee-vnc-server-enable

  • Download and install the RealVNC viewer for your local computer. This runs on Mac OS X, Linux or Windows

  • Start qbee-connect on your local computer and select the appropriate device in the tree.
    Add a custom port 5900 for RealVNC (or the according port for your VNC server) and connect.

    What is the standard VNC port?

    RealVNC uses port 5900. Please adjust your port according to VNC server or screen number N (port number + N).

    qbee-connecting-to-vnc

  • qbee-connect will give you a local mapped port number. In this case this is port 57509. Press on the copy button to get the port number

    qbee-vnc-mapped-port

  • Open RealVNC and conncet to localhost:57509 with the port number from the previous step:

  • Insert your user name and password and press OK. You can save this as your port will always stay the same.

    qbee-vnc-viewer-login

  • Now you have full secure VNC access to your remote edge device. This solution equals what Teamviewer or any of the other alternatives does.

    qbee-vnc-remote-access

This basically sums up qbee's VNC remote access use case and tutorial. There are a lot of VNC settings to granularly adjust how VNC behaves and make it meet your needs.

Summary of the VNC behind a firewall tutorial

qbee.io allows full remote VNC access to any edge device through its build in security solution. The remote VNC server can be reached through NAT and firewalls and this can be achieved for any device that qbee runs on and which supports installing any VNC server. There are even VNC solutions that grab a framebuffer directly. This would enable software to be used through qbee and the VNC by directly grabbing the framebuffer output. Thus the remote edge device does not have to run a desktop. This is a good solution for less powerful embedded Linux industrial controllers that do not have the X server overhead.

It is possible to use multiple concurrent connections, to upload files, to control the remote desktop. So basically all VNC functions are usable.