RustDesk Unattended Access on Windows: Proper Service Setup

Posted by Michael S. on March 20, 2026

I finally got RustDesk unattended access working the way I wanted — on at least one machine. That sounds small, but after a bunch of "it works until sign-out" moments, I’m taking the win.

My framing here is simple: trust matrix first, convenience second. A desktop in a fixed location gets one trust profile. My Mac laptop is different — it moves, it has more personal data, and I’m still not fully sure I want the same unattended footprint there yet. So this post is what I did on Windows when I decided the tradeoff made sense.

The key lesson: if RustDesk only works while the app window is open, it isn’t truly in unattended service mode. The durable fix is MSI install + service config + verification.


What I changed (Windows)

After installing with the MSI, I ran these commands in an elevated shell:

sc.exe config RustDesk start= auto
sc.exe failure RustDesk reset= 86400 actions= restart/5000/restart/5000/restart/10000
sc.exe failureflag RustDesk 1
sc.exe start RustDesk

Then I rechecked RustDesk settings (direct IP access + permanent password) and tested from lock screen/sign-out, not just with the app visible.


Expected output (what good looks like)

1) Failure policy

sc.exe qfailure RustDesk

[SC] QueryServiceConfig2 SUCCESS
SERVICE_NAME: RustDesk
        RESET_PERIOD (in seconds)    : 86400
        FAILURE_ACTIONS              : RESTART -- Delay = 5000 milliseconds.
                                       RESTART -- Delay = 5000 milliseconds.
                                       RESTART -- Delay = 10000 milliseconds.

2) Service config

sc.exe qc RustDesk

[SC] QueryServiceConfig SUCCESS
SERVICE_NAME: RustDesk
        START_TYPE         : 2   AUTO_START
        BINARY_PATH_NAME   : "C:\Program Files\RustDesk\RustDesk.exe" --service
        SERVICE_START_NAME : LocalSystem

3) Runtime state

Get-Service RustDesk | Format-Table Name,Status,StartType

Name      Status  StartType
----      ------  ---------
RustDesk  Running Automatic

Quick troubleshooting (if it still acts weird)

Black screen after sign-out: usually means service mode/capture path is still unhealthy. Confirm RustDesk is running as --service under LocalSystem.

Service shows Stopped: start it and verify again after a short delay:

sc.exe start RustDesk
Start-Sleep -Seconds 3
Get-Service RustDesk | Format-Table Name,Status,StartType

Settings got reset: re-enter direct IP + permanent password, then retest unattended login.


What I avoid now

  • I don’t use taskkill /IM rustdesk.exe /F as a normal "health check."
  • I don’t treat START_PENDING as success — only RUNNING.
  • I don’t call it unattended access until lock-screen/sign-out tests pass.

Footnotes

[1] Killing rustdesk.exe can stop service on some builds.
[2] START_PENDING is not final state; verify RUNNING.
[3] Settings may reset once after service/elevation changes; re-check direct IP access and permanent password.
[4] Unattended access fails when service is stopped even if app UI works.