There are a number of ways to configure RustDesk Clients to use your own self-hosted server, we will cover some below.
You can have your own name, logo, icon, configuration, be signed and more.
Currently, Windows X64, Mac Arm64 / X64, Linux, Android Arm 64 are supported.
In the main RustDesk Client home click on the Menu button [ ⋮ ] next to your ID then click on Network, you can now unlock the settings using elevated privileges and set your ID, Relay, API and Keys.
Enter the hbbs
host or IP Address in the ID Server input box (local side + remote side). The other two addresses can be left blank, RustDesk will automatically deduce (if not specially set), and the Relay Server refers to hbbr
(port 21117).
e.g.
hbbs.example.com
or
hbbs.example.com:21116
Key
In order to establish an encrypted connection to your self-hosted server, you need to enter its public key. The key is usualy generated on the first run of hbbs
and can be found in the file id_ed25519.pub
in your working directory / data folder.
As a Pro
user you will additionally be able to retrieve the Key
from the web console.
API Server
This is for Pro
user only. When you can log in on web console, but fail to log in on RustDesk client, it probably you have not set API Server
correctly.
If your API Server does not run on default 21114
port (you may not add this port to firewall if you come from open source version), please specify API Server
explicitly.
e.g. your API Server runs on default HTTPS port, please specify API Server
with https://hbbs.example.com
.
If you still can not confirm the value of API Server
, please go to the welcome page of web console, the API Server
is shown in above picture (The input box with API:
label).
Export Server Config
.Import Server Config
.Apply
.The easiest way to setup automatically is using deployment scripts found here.
You can fix the Password is required and use a reverse Base64 string in the format {"host":"HOSTADDRESS","key":"HOSTKEY","api":"http://HOSTADDRESS:21114"}
to automatically configure the clients, this is available automatically with RustDesk Server Pro via the console.
You can also use the steps from above to export the string, remove any =
at the start or end of the string. Restart RustDesk Client if settings don’t show.
Change rustdesk.exe
to rustdesk-host=<host-ip-or-name>,key=<public-key-string>
.exe, e.g. rustdesk-host=192.168.1.137,key=xfdsfsd32=32
.exe. You can see the config result in the About Window below.
As a Pro
user you will be able to retrieve the whole encrypted string from the web console then download and rename the RustDesk Client exe, you can upload this somewhere easy for your customers to use.
You need to set both host
and key
, missing either one will not work.
Optionally add a ,
(comma) character after the key, before the .exe
part as a delimiter, to avoid the key being mangled if Windows or the browser renames the file when downloading duplicated names, e.g. host=<host-ip-or-name>,key=<public-key-string>,.exe
.
If there are invalid characters in the key which can not be used in a Windows file name, please remove the
id_ed25519
file from your server and restart hbbs
/hbbr
. This will cause the id_ed25519.pub
file to regenerate. You may need to
repeat this process until you get valid characters.
--
in the nameExample: rustdesk--{config-string}--.exe
Please do not use -licensed-
together with --
, e.g. rustdesk-licensed-{config-string}--.exe
does not work in version 1.2.3. We will fix it in version 1.2.4.
We have noticed that in some cases, when double downloaded, something like copy (1)
is added to the end of the file name, and this ruins the config.
By adding --
at the end right after our config string, even if something is added to the file name, it won’t corrupt the config string, and RustDesk will correctly retrieve it.
Pro
via clipboardhttps://github.com/rustdesk/rustdesk-server-pro/discussions/372#discussioncomment-10473298
--config
rustdesk.exe --config <config-string>
You can get the config string from web console (you can see it on above picture) or from RustDesk client “Settings → Network” (here is a discussion about this).