Overview
These are recommended best practices for deploying Citrix HDX and HP Anyware PCoIP on MacStadium infrastructure. This document provides generalized guidance on MDM enrollment, permissions, networking, and performance tuning.Security and Encryption
Disable FileVault unless your security policy requires it. If a machine with FileVault enabled powers down, a MacStadium Data Center Technician must intervene locally before it can be accessed remotely. If encryption is required, coordinate with MacStadium to set up secure restart scripts that automate reboots and recovery before enabling it. Note: If your organization requires the use of FileVault, it is highly recommend that macOS Tahoe is used on your host devices. Apple released a pre-boot SSH capability in Tahoe that allows for remote disk decryption as an alternative to physical DCT intervention. FileVault is not officially supported by MacStadium. Use an MDM solution (Jamf Pro, Kandji, or Intune) to enforce your security baseline. See MDM Policies and Permissions for VDI-specific configuration.MDM Enrollment for VMs
Apple Business Manager (ABM) Automated Device Enrollment is not available for virtual machines. Apple identifies VM hardware identifiers as virtual and blocks auto-enrollment. This cannot be worked around. The standard approach is user-initiated enrollment scripted into your golden image. A LaunchDaemon runs at first boot to install the management framework. A LaunchAgent runs at login to prompt the user to approve the MDM profile. That approval is a macOS requirement on unsupervised devices. MacStadium’s tested and supported enrollment process for VMs at scale uses Jamf Pro. For a full walkthrough, see Jamf Enrollment for MacStadium VDI Desktops. The LaunchDaemon/LaunchAgent pattern is the same for Intune and Kandji, but MacStadium is still validating and developing optimized guidance for those platforms. A few things to get right before sealing the image:- Set enrollment tokens to expire on a schedule aligned to your image rotation cycle.
- Verify enrollment on a test VM before promoting to production:
profiles status -type enrollmentshould returnMDM enrollment: Yes. - Do not seal the image with an MDM profile or management framework already present.
MDM Policies and Permissions
Configure and test these before sealing your golden image. Some permissions cannot be pre-approved via MDM, so they need to be granted manually on a clean VM before the image is sealed.Privacy Preferences (PPPC / TCC)
| Permission | Citrix HDX | HP Anyware PCoIP | MDM pre-approvable? |
|---|---|---|---|
| Accessibility | Required | Required | Yes |
| Screen Recording | Required | Required | No (grant manually before sealing) |
| Microphone | Optional (audio redirect) | Optional | No (user-controlled) |
| Camera | Optional (webcam redirect) | Optional | No (user-controlled) |
| Application | Bundle ID | Team ID |
|---|---|---|
| Citrix Workspace / VDA | com.citrix.ctxism | S272Y5R93J |
| HP Anyware Client | com.teradici.swiftclient | Not published by HP |
| HP Anyware User Agent | com.teradici.pcoip-user-agent | Not published by HP |
designated => line from the output into the Code Requirement field of your MDM’s PPPC payload.
System Extensions (Citrix only)
Citrix VDA installs system extensions for camera and USB redirection. Pre-approve these to prevent user-facing prompts.| Extension | Bundle ID | Type | Team ID |
|---|---|---|---|
| Camera extension | com.citrix.mvda.vdacfg.cameraextension | System extension | S272Y5R93J |
| USB redirection | com.citrix.kext.gusb | Kernel extension | S272Y5R93J |
/Library/LaunchAgents and /Library/LaunchDaemons. On Ventura and later, users see a “Background Items Added” notification on first login. This is expected. Do not suppress or disable these services.
MDM Platform Notes
| Platform | PPPC | System Extensions | Notes |
|---|---|---|---|
| Jamf Pro | Privacy Preferences Policy Control payload | System Extensions payload (Team ID S272Y5R93J) | MacStadium’s tested and supported platform for VM enrollment at scale. For HP Anyware, generate the code requirement string with codesign -dr - and paste it manually. See the Jamf Enrollment guide. |
| Microsoft Intune | Custom Configuration Profile (macOS XML) | Endpoint Security > macOS System Extensions | Deploy HP Anyware or Citrix Workspace as a macOS DMG app via the Apps blade. Optimized VM enrollment guidance for Intune is in development. |
| Kandji | Privacy Preferences Library Item | System Extensions Library Item (Team ID S272Y5R93J) | 3.x supports non-removable extensions on macOS 15. Optimized VM enrollment guidance for Kandji is in development. |
Networking and Connectivity
Disable packet inspection and SSL interception on VDI session traffic. Both HDX and PCoIP are sensitive to latency added by middleboxes. Route sessions as directly as possible and avoid unnecessary proxy hops. Required ports:| Protocol | Citrix HDX | HP Anyware PCoIP |
|---|---|---|
| Primary session | TCP/UDP 1494, 2598 | UDP 4172 |
| Session fallback | — | TCP 4172 |
| Broker / licensing | TCP 443 | TCP 443, 60443 |
| EDT (performance) | UDP 1494, 2598 | — |
| Workload type | Recommended |
|---|---|
| General productivity / coding | 2-3 Mbps |
| Design / graphics | 5-10 Mbps |
| Video editing / high-performance | 15-25 Mbps |
Performance Tuning
macOS Settings (both protocols)
Disable desktop animations and transparency effects before sealing your image: System Settings > Accessibility > Display > Reduce Motion and Reduce Transparency. Disable screen saver, hot corners, and idle timers:Protocol-Specific Tuning
| Setting | Citrix HDX | HP Anyware PCoIP |
|---|---|---|
| Transport tuning | EDT settings, H.264/H.265 codec selection, audio quality profiles (see Citrix Workspace App for Mac docs | pcoip.max_link_rate, image quality, frame rate — configured via plist (see below) |
| Config location | Citrix Workspace settings | /Library/Preferences/com.teradici.pcoip-agent.plist |
| Applies to | VDA | Graphics Agent and Standard Agent |
Management and Policy
Define MDM policies before sealing your golden image. A baseline for Orka VDI:| Category | Policies |
|---|---|
| Must be enabled | Remote management, System Integrity Protection, disable end-user restart and shutdown |
| Should be enabled | Password complexity, software firewall, Gatekeeper, software update enforcement |
| Avoid | User lockout policies requiring local physical recovery; FileVault without a MacStadium-coordinated recovery plan |
Backup and Recovery
Keep machines in an always-on or wake-on-network state. Maintain a secondary administrative connection (VNC or MacStadium secure console) that does not depend on your VDI session. Enable Time Machine or equivalent backup on a schedule that meets your retention requirements. VDI sessions are not a substitute for enterprise backup.Quick Reference
| Citrix HDX | HP Anyware PCoIP | |
|---|---|---|
| Session ports | TCP/UDP 1494, 2598; TCP 443 | UDP/TCP 4172; TCP 443, 60443 |
| Main bundle ID | com.citrix.ctxism | com.teradici.swiftclient |
| System extensions | Camera kext, USB kext | None |
| Accessibility (MDM) | Pre-approvable | Pre-approvable |
| Screen Recording (MDM) | Grant manually before sealing | Grant manually before sealing |
| MDM enrollment | User-initiated only | User-initiated only |
| Agent variants | VDA | Graphics Agent, Standard Agent |
| Agent config | Citrix Workspace settings | /Library/Preferences/com.teradici.pcoip-agent.plist |

