Victor Lyuboslavsky
Victor Lyuboslavsky
Fleet v4.59.0 introduces support for helping your end users connect to Wi-Fi by adding your SCEP server. Fleet currently supports Microsoft's Network Device Enrollment Service (NDES) as a SCEP server.
This guide will walk you through configuring and using NDES with Fleet acting as a SCEP proxy.
Go to the Fleet web interface, navigate to Settings
, go to the Integrations
tab, and click Mobile device management (MDM)
. Scroll down to Simple Certificate Enrollment Protocol (SCEP)
and click Add SCEP
.
You will need to provide the SCEP URL that accepts the SCEP protocol. You'll also need to give the admin URL with the associated username and password to get the one-time challenge passwords for SCEP enrollment.
Note:
/certsrv/mscep/mscep.dll
and /certsrv/mscep_admin/
respectively. These path suffixes are the default paths for NDES on Windows Server 2022 and should only be changed if you have customized the paths on your server.Create a configuration profile in Fleet that includes the SCEP payload. In the profile, you will need to set $FLEET_VAR_NDES_SCEP_CHALLENGE
as the Challenge
and $FLEET_VAR_NDES_SCEP_PROXY_URL
as the URL
.
Adjust the Subject
values according to your organization's needs. You may set $FLEET_VAR_HOST_END_USER_EMAIL_IDP
if the hosts were enrolled into Fleet MDM using an IdP (Identity Provider). You can also use any of the Apple profile variables to uniquely identify your device.
Example profile:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PayloadContent</key>
<array>
<dict>
<key>PayloadContent</key>
<dict>
<key>Challenge</key>
<string>$FLEET_VAR_NDES_SCEP_CHALLENGE</string>
<key>Key Type</key>
<string>RSA</string>
<key>Key Usage</key>
<integer>5</integer>
<key>Keysize</key>
<integer>2048</integer>
<key>Subject</key>
<array>
<array>
<array>
<string>CN</string>
<string>%SerialNumber% WIFI $FLEET_VAR_HOST_END_USER_EMAIL_IDP</string>
</array>
</array>
<array>
<array>
<string>OU</string>
<string>FLEET DEVICE MANAGEMENT</string>
</array>
</array>
</array>
<key>URL</key>
<string>$FLEET_VAR_NDES_SCEP_PROXY_URL</string>
</dict>
<key>PayloadDisplayName</key>
<string>WIFI SCEP</string>
<key>PayloadIdentifier</key>
<string>com.apple.security.scep.9DCC35A5-72F9-42B7-9A98-7AD9A9CCA3AC</string>
<key>PayloadType</key>
<string>com.apple.security.scep</string>
<key>PayloadUUID</key>
<string>9DCC35A5-72F9-42B7-9A98-7AD9A9CCA3AC</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</array>
<key>PayloadDisplayName</key>
<string>SCEP proxy cert</string>
<key>PayloadIdentifier</key>
<string>Fleet.WiFi</string>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>4CD1BD65-1D2C-4E9E-9E18-9BCD400CDEDC</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>
Upload the profile to Fleet in Controls > OS Settings > Custom settings.
When sending the profile to hosts, Fleet will replace the $FLEET_VAR_NDES_SCEP_CHALLENGE
, $FLEET_VAR_NDES_SCEP_PROXY_URL
, and $FLEET_VAR_HOST_END_USER_EMAIL_IDP
variables with the proper values. Any errors will appear as a Failed
status in the host's OS settings
.
Note: If the uploaded profile is signed, Fleet will replace the variables and invalidate the signature.
The SCEP proxy in Fleet acts as a middleman between the device and the NDES server. When a device requests a certificate, the SCEP proxy forwards the request to the NDES server, retrieves the certificate, and sends it back to the device. In addition, the SCEP proxy:
The issued certificate will appear in the System Keychain on macOS. During the profile installation, the OS generates several temporary certificates needed for the SCEP protocol. These certificates may be briefly visible in the Keychain Access app on macOS. The CA certificate must also be installed and marked as trusted on the device for the issued certificate to appear as trusted. The IT admin can send the CA certificate in a separate CertificateRoot profile.
A common use case for SCEP is connecting devices to a corporate WiFi network. This involves creating a profile with SCEP and WiFi payloads and linking them together. Here's how you can use Fleet's SCEP proxy to achieve this:
PayloadCertificateUUID
in the WiFi payload should reference the PayloadUUID
of the SCEP payload.Fleet's NDES SCEP proxy feature allows your devices to receive certificates from your certificate authority's NDES service. This feature simplifies managing certificates on your devices and enables a secure and efficient way to connect them to your corporate network.