Runtime wrapper for the RustDesk OSS server.
This repository is not a Home Assistant app repository (formerly called an add-on repository). It only contains the wrapper runtime used to start and supervise the RustDesk services.
Home Assistant app/add-on packaging, build configuration, and Supervisor-facing metadata live in the parent repository that consumes this wrapper.
run.sh: canonical runtime entrypoint for consumers of this repository
PUBLIC_HOST: optional public hostname or IP address used to print the recommended RustDesk client configuration in the logs/data/options.json: optional compatibility source forpublic_host
- Starts
hbbsandhbbr - Persists RustDesk data in
/data - Copies the public key to
/data/public_key.txt - Prints the public key in the logs
- Prints recommended RustDesk client values when
PUBLIC_HOSTis available
This wrapper does not expose RustDesk to the internet by itself.
Common ways to reach the server from outside your local network are:
- Tailscale or another VPN
- Port forwarding plus a public hostname or IP address
DuckDNS is a valid option if you want a simple public hostname for PUBLIC_HOST.
RustDesk usually needs these ports when you are not using a VPN:
21115/tcp21116/tcp21116/udp21117/tcp
If your ISP uses CGNAT, direct port forwarding may not work. In that case, use Tailscale, another VPN, or a different public entrypoint.
Always test RustDesk from a network outside your LAN, for example from mobile data, before considering the setup complete.
When PUBLIC_HOST is configured, the wrapper logs print the recommended
RustDesk client values.
Typical client values are:
ID Server: your public hostname or IPKey: the public key shown in the logs or stored in/data/public_key.txtRelay Server: usually the same public hostname if you want to set it explicitly