Replies: 7 comments 20 replies
-
|
The main problem is macOS does not allow to grant “Screen Recording" permission from command line.
|
Beta Was this translation helpful? Give feedback.
-
|
So… @rustdesk How can we, via CLI using administrator account, enable RustDesk to start at boot (boot, not user login) after having installed it (id. copied the The use case is deployment of the application on multiple machines for remote-hand assistance of non-tech users, it should be fairly simple:
Somehow the RustDesk integration on macOs makes the last 2/3 points difficult… |
Beta Was this translation helpful? Give feedback.
-
|
Having RD as a pkg installation file would / should solve these problems. |
Beta Was this translation helpful? Give feedback.
-
|
A script to setup daemons - tested on a Proxmox MacOS VM (15.2) [ Update - fixed USE_PW ] |
Beta Was this translation helpful? Give feedback.
-
|
I have recently been looking at how best to automate installing RustDesk for Mac and have found the following issues and workarounds. Firstly I have to say that whilst RustDesk as a remote control app seems a good solution its approach for configuring on a Mac is awful and totally anti-Mac. It in this area appears to be a terrible reskinned Linux app. (This is purely in relation to configuring it.) As a result it does not use standard macOS plist files and hence cannot be configured via standard Mac tools or an MDM. Worse still it appears RustDesk requires its proprietary settings be installed in a users individual Preferences folder and not e.g. /Library/Preferences I have therefore - so far done the following.
The above works for both non-admin and admin level users
The above also works for both non-admin and admin level users To summarise - the RustDesk app is deployed in a way that does not require an admin user account, the Outset utility is deployed in a way that does not require an admin user account, the RustDesk preferences are deployed in a way that works for any user and the user does not require an admin level account. Note: The RustDesk supplied Mac deployment script has two bugs. Firstly it has to be run by an admin level user and requires manual entry of the users password, secondly if the ~/Library/Preferences/com.carrierz.rustdesk folder does not already exist, it is created in the right place but it is set with access to only root and hence the user - even if an admin level user cannot access the generated preferences. This permissions/ownership issue does not occur if rather than using their script you manually import/paste the config string. My goal was to automate deploying the app, automate deploying the settings and to make this all work for non-admin level user logins. Due to Apple restrictions it is not possible to auto-enable screen recording. I am aware of the custom tccutil solutions but do not want to install them and do not want to turn off SIP protection. Since the 'official' Mac deployment script has the above issues and hence is literally useless - although for admin level users a simple single line addition to the script to 'fix' the preference folder permissions would help for them, the above is an approach that so far seems to act as a successful replacement and works also for non-admin users. Via Munki (and AutoPkg) it has the bonus of also automatically updating the RustDesk desktop app. Munki could be set to automatically run either a post-install script to create launchctl files or run another pkg to do this. As all our user Macs are FileVault encrypted I had no need to ensure RustDesk was available at the login window since this would not work till after a FileVault enabled user has logged in anyway. |
Beta Was this translation helpful? Give feedback.
-
|
Thanks for the details. On macOS, just having “--server” running as root is not enough. The ID is owned/managed by the background service, and the desktop-capture server must run in a GUI session (including the LoginWindow session). If the service can’t register to the ID server, “--get-id” will return nothing and you can’t connect. What usually goes wrong The service is not loaded as a LaunchDaemon (or exits), so no ID is registered. A) Make sure the service is running (system domain) It must be a LaunchDaemon: B) Start the desktop server in a GUI session LaunchAgents don’t run until a GUI session exists. To support the login screen, the LaunchAgent should include: api/key if you use them D) Network/firewall Ensure outbound traffic to your ID/relay is allowed (often TCP 21115/21116/21117, or put relay on 443/TCP to pass corporate/5G). Quick checklist Service: active in system domain, logs show connected to hbbs (ID server). sudo launchctl print system/com.carriez.RustDesk_service |
Beta Was this translation helpful? Give feedback.
-
|
A bit late to the party but.. My main goal was to get some sort of remote desktop solution working for a 2023 Mac Mini (M2 cpu). I tried countless approaches, tried to make it work with Gemini deep-research, etc - always the same result - device only accessible after manual login. Got tired, ditched the RustDesk and went for TeamViewer - initially was the same (no access after reboot) until I found someone pointing out that "when the FileVault disc encryption is enabled, then programs can only start after logging in". I turned it off for my device and device was available after reboot - problem solved for me. I'm sure that turning off the FileVault disc encryption isn't the ideal solution but for me the Mac is more of a "testing device". I didn't have the time to test it out with RustDesk after cleaning it up but hopefully this information is useful in some way - if not, feel free to delete my comment (it that's a thing in GH). |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I am trying to deploy RustDesk remotely, using SSH (on multiple computers) and the goal is to allow remote access event when no one is physically present in front of the computer.
I managed to install it (using the
.dmg,/usr/bin/hdiutil attachand copying to/Applications) and define macOS's privacy settings.I created the
/Library/LaunchDaemons/com.carriez.RustDesk_service.plistand/Library/LaunchAgents/com.carriez.RustDesk_server.plistfiles followingsrc/platform/privileges_scripts/install.scpt.But, after a reboot (to check if everything starts smoothly and unattended) I:
/Applications/RustDesk.app/Contents/MacOS/RustDesk --serverrunning asrootuser (checked using SSH, without any user physically logged in)/Applications/RustDesk.app/Contents/MacOS/RustDesk --get-idIf I run
launchctl load -w /Library/LaunchDaemons/com.carriez.RustDesk_service.plistI have more process (according tops aux | grep -i MacOS/RustDesk) but same issue (not able to connect):I tried with both versions v1.2.3-2 and nightly (
65f7541ec76): same issue.Any idea?
macOS version is 13.5 ("Ventura")
Beta Was this translation helpful? Give feedback.
All reactions