remote.it allows you to make secure remote connections between two computers. Some of the benefits include:
Crossing multiple NATs/firewalls
Using a single TCP port
portforwardless: without requiring port forwarding in the router, significantly reducing your network's vulnerability
Many TCP-based protocols and applications are supported
SSH/SCP - network console and file transfer
VNC, RDP, Mac Screen Sharing - remotely access the Graphical User Interface (GUI)
http/https (web servers and applications such as node-red)
SMB (Samba) file sharing
other protocols supported under the "custom TCP" option, e.g. MQTT
connectd is the component that is installed on the devices which will be connected. In the case of a peer to peer connection, connectd will be installed on the connection initiating device as well. You can also interact with connectd to run network diagnostics and troubleshoot other issues with your device.
remote.it supports installation of a desktop application, CLI or just connectd on multiple platforms and architectures.
The Desktop application provides a UI to interact with your devices which includes configuration, connections, and event logs. This is the easiest application for technical and non-technical users.
The CLI provides a local command line interface to the device to which it is installed. This includes configuration, connections, status, and some debugging tools. This is useful when a UI is not needed, however you may also need to use some API requests to use some of the functions such as connections.
Other packages can install just the connectd component. This is useful when a UI is not needed and a small footprint on the device is needed. For example, an embedded device with very limited storage.
APIs are the backbone of the applications and provide ways to view and manage your remote.it account as well as your devices, connections, and event logs. Further details on the APIs can be found here.