This section describes the steps to deploy the Netskope Client app in an iOS device using Jamf School.
Prerequisites
-
Administrators must possess proficient working knowledge of Jamf School.
-
Administrators must review Netskope Client Enrollment Methods to understand the Client User Enrollment methods available for their environment.
-
Users must be imported into the Netskope tenant – see Provisioning Users for Netskope Client
-
Download Netskope Root and Tenant Certificates and ensure the certificates are available when needed.
-
Download the Netskope package for macOS from Netskope Support.
-
See Deploy Netskope Client via IdP when using IDP as the method of user enrollment.
-
In Jamf School, enable the Scripting option under Organization > Settings > Modules to allow you to add the required scripts.
Supported Platforms and Enrollment Methods
This article outlines Netskope Client deployment instructions for the following user enrollment methods and support platforms. User enrollment methods not documented here are not supported at this time.
| Enrollment Methods | Single User | Multi-user |
|---|---|---|
| IDP | N | N |
| PLIST | Y | N |
Profile Setup
Jamf Configuration Profiles manage the core configuration for Client installation. The following sections provide a detailed overview of how to configure these profiles effectively.
Create Profile
Creating profiles is useful as it can help define and configure the system settings such as VPN, Restrictions, and so on for your device. Always create a profile before you start configuring the profile settings. For more information, view Profiles.
-
Log into JAMF School.

-
Go to Profiles.
-
Click +Create Profile.
-
In Platform, select the following:
-
Select the Platform as iOS
-
Select the Enrollment Type.
-
Click Next.
-
-
In Details, perform the following:
-
Enter the profile name.
-
Enter the description for the profile.
-
-
Click Next.
-
In Time Filter, select the checkbox to configure the time at which you want to apply the profile to the devices.
-
Click Finish.
After creating the profile, it navigates to the page where you can set up the profile details such as Certificates, System Extensions, and so on. Refer to the following sections to learn more about adding different attributes in your profile.
Pre-Approve VPN Popup for App Proxy
The Netskope Client on macOS installs a network extension that triggers updates to the device’s Network settings. The following configuration pre-approves these updates and suppresses end-user notifications requesting approval.
-
In the Jamf School console, go to Profiles.
-
Select and open the required Profile.
-
Click Scope.
-
Click + to add the desired group.
-
Click Save.
-
-
Go to iOS Payload > VPN.
-
The Netskope Client updates this definition, pre-creating it to prevent prompting the user to add a new VPN configuration.
Refer to the following table to understand the VPN configuration attributes:
Attribute Name Value Connection Name Anything Connection Type Custom SSL Identifier com.netskope.Netskope (case sensitive) Provider Type Packet Tunnel Server gateway-[tenantname].goskope.com User Authentication Password Enable VPN on-demand
Note: This document goes with the On-demand VPN. You can choose to use Per-App VPN configenable option On demand rules configuration XML
Action
Connect
InterfaceTypeMatch
WiFi
Action
Connect
InterfaceTypeMatch
Cellular
Prohibit users from disabling on-demand VPN settings enable option -
Click Save.
To add zero-touch configuration, use the Custom Data field in VPN. Adding zero-touch configurations allow automated deployment of the Client thereby removing the user interaction for enrollment. To add zero-touch, use the following Key-Value pair:
-
OrgKey: Use the tenant organizational key
-
AddonHost: Use the addon URL for the tenant: addon-<tenant-URL>
-
UserEmail: Use the variable that contains the user identity for the enrolment. Most likely %Email%
Do not use Managed Configuration if you are planning to automate the deployment process of the NS Client. -
-
Restrict App Proxy Removal
Netskope recommends adding two optional deployment parameters Prevent Disabling of System Extensions and Restrict App Proxy Removal to manage user permissions regarding System Extensions in macOS 15 (Sequoia) and above. These controls prevent the removal of the specified system extension by the user.
-
In the Jamf School console, go to Profiles.
-
Select and open the required Profile.
-
Click Scope.
-
Click + to add the desired group.
-
Click Save.
-
-
Go to iOS Payload > Restrictions.
-
Disable Allow creation of VPN configurations in the Connectivity settings.

Setup Notifications
This step is optional.
Perform the following steps to configure Notifications:
-
In the Jamf School console, go to Profiles.
-
Select and open the required Profile.
-
Click Scope.
-
Click + to add the desired group.
-
Click Save.
-
-
Go to General Payload > Notifications.
-
Configure this part to prevent the Netskope Client from prompting the user to enable its notifications.
-
Click Save.

Push Netskope Root and Tenant Certificates Through Jamf School
Provide additional trust to end users by pushing Netskope certificates during Client installation. Before pushing the root and tenant certificates, ensure that you do the following:
-
Download root and tenant certificates from Netskope Certificates page.
-
Login to Netskope tenant admin console with admin credentials.
-
Go to Settings > Manage > Certificates > SIGNING CA. The certificate download options are displayed in the Certificate Setup section.
-
-
Convert the downloaded certificates to .cer format by renaming the .pem files to .cer.
Perform the following steps to add certificates to Jamf School:
-
In the Jamf School console, go to Profiles.
-
Select and open the required Profile.
-
Click Scope.
-
Click + to add the desired group.
-
Click Save.
-
-
Go to General Payload > Certificates.
-
In Select your file, click Choose File and upload the root certificate.
-
Click Upload Certificate.
-
Repeat the same steps to upload the Netskope Intermediate certificate.
-
-
Click Save.
Create an App
To create an app:
-
Next, click Apps > Inventory.
-
Click + Add App to add the Netskope application and select Add iOS App from the dropdown menu.
-
Add Netskope Client application.
-
Edit the installed application and ensure to select Apply Managed Configuration.
-
Go to the Managed Configuration section and provide the configuration details.
<plist version="1.0"> <dict> <key>OrgKey</key> <string>xxxxxxxxxxxxxx</string> <key>UserEmail</key> <string>%Email%</string> <key>AddonHost</key> <string>addon-<tenant-URL>/string> <key>EnrollAuthToken</key> <string>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</string> <key>EnrollEncryptionToken</key> <string>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</string> </dict> </plist>
– You must replace OrgKey and Addon Host with tenant values.
– Ensure that the managed configuration is applied to the user/device before deploying. Failure to do so prevents the Netskope client from downloading its configuration.
– Zero-touch deployment: Do not use the managed configuration as it conflicts with the VPN profile.
Verifying Client Installation
Check the installation logs on the user’s machine in the /var/log/install.log folder. If the user configuration download script fails and the Netskope client installer is executed, the installer will exit and display the “Configuration file missing, aborting installation! error” message.
Check Netskope Client Installation Status
-
To verify the status of each device, go to Computer > Policies and click on the policy you created.
-
Click the Logs button at the bottom to view the log files for each device and then click the Show button.
Confirming the Netskope Client Extension Approval
To confirm that the Netskope Client extension has been approved and the client is running, run the following command in your macOS terminal window:
systemextensionsctl list
The output should look like this:
% systemextensionsctl list 1 extension(s) --- com.apple.system_extension.network_extension enabled active teamID bundleID (version) name [state] * * 24W52P9M7W com.netskope.client.Netskope-Client.NetskopeClientMacAppProxy (85.2.0.269/1) NetskopeClientMacAppProxy [activated enabled]
Additionally, inspect the system preferences and Network UI to confirm that Netskope Client extension is active.
Uninstalling Netskope Client
See Uninstalling the Netskope Client for instructions on uninstalling the Netskope Client.

