Why This Matters
The ideal Windows automation environment must:- Stay active without an RDP session
- Maintain consistent resolution at 1024x768 (optimal for computer use models)
- Never restart unexpectedly or require manual intervention
If you or your client already has a Windows VM or physical machine, this guide will help you optimize it for reliable automation.
Setup Guide
1
Launch Windows Server 2022
You can use any cloud provider or virtualization platform. We recommend AWS EC2 for reliability.Configuration checklist:
- Enable inbound port 3389 for RDP (only needed for initial setup)
- Save your RDP credentials securely (you’ll only need them once)
- Generate and save the access key pair
If you’re unfamiliar with AWS security groups or RDP configuration, ask ChatGPT: “How do I enable RDP access on AWS EC2 for Windows Server 2022?”
2
Connect via RDP
Use your RDP client to connect to the Windows Server. You’ll only need RDP for this initial configuration—RustDesk will replace it.
3
Install RustDesk
Copy this link into your Windows VM’s browser to download RustDesk:Once downloaded, run the installer to complete the installation.
If you have trouble with this download link, visit rustdesk.com to download the latest version of RustDesk.
4
Configure RustDesk security
Launch RustDesk and configure a permanent password:
- Click the three dots menu in the left sidebar
- Navigate to the Security tab
- Click Unlock Security Settings (blue button)
- Scroll to Password section
- Select Use permanent password
-
Enter a strong password and click Save
- RustDesk ID (displayed on the home screen)
- Permanent password (you just created)
Store these credentials in a password manager. You’ll need them to connect from your local machine.
5
Install RustDesk locally
On your local machine (laptop/desktop):
- Download RustDesk from rustdesk.com
- Install and launch the application
- Enter the ID and password from Step 4
- Click Connect
- Click the Display icon in the RustDesk toolbar
- Select Scale adaptive
- This scales the remote display to fill your local monitor for easier viewing
The Console session is the main desktop session. This is critical for automation to work correctly.
6
Disconnect RDP and set resolution
You can now close the RDP connection permanently. Continue using RustDesk:
- In the RustDesk toolbar, click the Display icon
- Hover over Resolution
-
Select 1024x768
7
Install and configure Cyberdriver
Follow the Cyberdriver Installation Guide to set up desktop automation.Important recommendations:The keepalive mode ensures Windows doesn’t automatically lock and return to the login screen, which would interrupt automation.
- Use the
--keepalive
flag to prevent Windows from locking due to inactivity - Run Cyberdriver as Administrator if you need to automate applications that require elevated privileges
8
Close RustDesk (on your local machine)
You can now close the RustDesk connection on your local machine (Mac/PC).Important: Leave RustDesk running on the Windows VM—it helps keep the console display active for automation.Whenever you need manual access, simply open RustDesk on your local machine and reconnect using your saved credentials.
9
Force resolution to 1024×768 via Cyberdesk
Navigate to the Desktops page in your Cyberdesk Dashboard.
- Click on your Windows VM to open the desktop details page
- Click the Tools button
- Scroll to the Set Resolution to 1024×768 section
-
Click Set to 1024×768
This step uses Cyberdriver to remotely execute a PowerShell command that sets the display resolution. Make sure Cyberdriver is running and connected.
10
Verify and finish setup
While still in the Cyberdesk Dashboard:
- Rename your desktop to something descriptive (e.g., “Production Windows Server” or “Client-ABC VM”)
- Verify the resolution shows 1024×768 in the desktop details
- Create a test run to confirm everything works
- ✅ Stay active without RDP connection
- ✅ Maintain persistent 1024×768 resolution
- ✅ Handle automation runs reliably
Troubleshooting
Windows keeps locking
If Windows returns to the login screen despite using--keepalive
:
- Verify Cyberdriver is running with the
--keepalive
flag - Check that no Group Policy is forcing screen locks
- Check Windows power settings to ensure the display doesn’t turn off or the system doesn’t sleep
RustDesk not connecting to Windows VM
If your local RustDesk app (on your laptop/PC) won’t connect to the Windows VM, restart the RustDesk service on the Windows VM:- RDP into the Windows VM
- Open the RustDesk application on the Windows VM
- Click the three dots (⋮) menu → Settings
- Click Stop Service
- Close and reopen RustDesk on the Windows VM
- Click Start Service at the bottom of the window
- Try connecting again from your local RustDesk app
RustDesk connected but shows black screen
If RustDesk connects successfully but you only see a black screen, this is often a network/firewall issue. Common cause: Public WiFi networks (coffee shops, libraries, coworking spaces) often have strict firewalls that block video streaming traffic from RustDesk. Solution: Switch your network connection:- Use a mobile hotspot from your phone
- Connect to your home WiFi
- Use a different network without restrictive firewalls
If you’re still experiencing issues, reach out to the team at founders@cyberdesk.io - we’re happy to debug with you on a call.
RustDesk connection drops
If RustDesk frequently disconnects:- Check internet stability on both machines
- Verify no firewall is blocking RustDesk traffic
- Try using a custom RustDesk relay server for better stability
Automation runs fail
If workflows aren’t executing correctly:- Confirm Cyberdriver is running (check the Desktops page)
- Verify the resolution is exactly 1024x768
- Check that no Windows updates are pending restart
Clicks failing but typing works
If Cyberdriver can type but mouse clicks aren’t registering, this is often a virtual display initialization issue on certain Windows configurations. Fix: Add a second virtual display in RustDesk (even though you won’t use it):- Connect to the Windows VM via RustDesk
- Click the Display icon in the toolbar
- Click Virtual display
- Click the + button to add a second virtual display
- Stay on Display 1 (don’t switch to Display 2)
- Disconnect from RustDesk

This is likely related to how Windows handles mouse input when virtual display drivers are first initialized. Having multiple displays forces Windows to properly route input events to the virtual display adapter.