SCTGDesk server 1.1.16-sctg.1
First release of the consolidated repository: the RustDesk-derived server, the API server and the web console now live in one place, and the server follows upstream release by release.
SCTGDesk is an independent project, not affiliated with or endorsed by the RustDesk project or Purslane Ltd. Licensed under the AGPL-3.0; the source of this release is this repository at the tag
sctg-v1.1.16-sctg.1.
What is in it
- Based on upstream
rustdesk-server1.1.16, merged tag by tag from 1.1.12. This brings upstream's fixes: peers offline for more than 24.9 days wrongly reported online, unauthenticated UDP punch-hole requests usable for reflection, a Windows crash, the real client IP behind a WebSocket proxy. libs/hbb_commonis now a git submodule onrustdesk/hbb_common(clone with--recurse-submodules).- TCP/WebSocket key exchange version 1 (signed parameters, one key per direction) next to the legacy version 0. New option
--require-kx-v1(REQUIRE_KX_V1=Y) refuses legacy clients; it is off by default. The session key is no longer written to the debug log, and a malformed key exchange no longer aborts the connection task. - The API server and the web console are part of this repository (
crates/,web/); the formersctgdesk-api-serverrepository is archived. POST /api/software/version/latest: the update check of current RustDesk clients, answered by the API server.- Client: its sources are in
client/as a small overlay on upstream RustDesk 1.5.0. No client binary is part of this release. - A developer manual, contribution guide and code of conduct.
Changes you may notice
- Versions now follow
<upstream version>-sctg.<n>and tags are prefixedsctg-v; the former1.1.99-xxnumbers are not used any more. - No more 32-bit ARM (armv7) binaries and no more
.debpackages. Static Linux binaries are published for amd64 and arm64, and so is the Docker image (sctg/sctgdesk-server).
Upgrading
Back up db_v2.sqlite3 and your key pair (id_ed25519, id_ed25519.pub) first. Upgrading from 1.1.99.48 has not been tested.
Known limitations
- The Windows and macOS builds, and the Linux release archives with their attestation, have not been exercised since the consolidation.
- The unit tests of
crates/api-oauth2do not compile and are excluded from the CI;cargo auditreports advisories that are not triaged yet. - The TCP key exchange was checked against upstream's client code and with unit tests, not with a released official client binary.