GlobalProtect
Deploy the GlobalProtect Mobile App for macOS Using Jamf Pro
Table of Contents
Expand All
|
Collapse All
GlobalProtect Docs
-
10.1 & Later
- 10.1 & Later
- 9.1 (EoL)
-
- How Does the App Know Which Certificate to Supply?
- Set Up Cloud Identity Engine Authentication
- Configure GlobalProtect to Facilitate Multi-Factor Authentication Notifications
- Enable Delivery of VSAs to a RADIUS Server
- Enable Group Mapping
-
-
- GlobalProtect App Minimum Hardware Requirements
- Download the GlobalProtect App Software Package for Hosting on the Portal
- Host App Updates on the Portal
- Host App Updates on a Web Server
- Test the App Installation
- Download and Install the GlobalProtect Mobile App
- View and Collect GlobalProtect App Logs
-
-
- Deploy App Settings in the Windows Registry
- Deploy App Settings from Msiexec
- Deploy Scripts Using the Windows Registry
- Deploy Scripts Using Msiexec
- Deploy Connect Before Logon Settings in the Windows Registry
- Deploy GlobalProtect Credential Provider Settings in the Windows Registry
- SSO Wrapping for Third-Party Credential Providers on Windows Endpoints
- Enable SSO Wrapping for Third-Party Credentials with the Windows Registry
- Enable SSO Wrapping for Third-Party Credentials with the Windows Installer
- Deploy App Settings to Linux Endpoints
- GlobalProtect Processes to be Whitelisted on EDR Deployments
-
-
- Mobile Device Management Overview
- Set Up the MDM Integration With GlobalProtect
- Qualified MDM Vendors
-
-
- Set Up the Microsoft Intune Environment for Android Endpoints
- Deploy the GlobalProtect App on Android Endpoints Using Microsoft Intune
- Create an App Configuration on Android Endpoints Using Microsoft Intune
- Configure Lockdown Mode for Always On Connect Method on Android Endpoints Using Microsoft Intune
-
- Deploy the GlobalProtect Mobile App Using Microsoft Intune
- Configure an Always On VPN Configuration for iOS Endpoints Using Microsoft Intune
- Configure a User-Initiated Remote Access VPN Configuration for iOS Endpoints Using Microsoft Intune
- Configure a Per-App VPN Configuration for iOS Endpoints Using Microsoft Intune
-
-
-
- Create a Smart Computer Group for GlobalProtect App Deployment
- Create a Single Configuration Profile for the GlobalProtect App for macOS
- Deploy the GlobalProtect Mobile App for macOS Using Jamf Pro
-
- Enable GlobalProtect System Extensions on macOS Endpoints Using Jamf Pro
- Enable GlobalProtect Network Extensions on macOS Big Sur Endpoints Using Jamf Pro
- Add a Configuration Profile for the GlobalProtect Enforcer by Using Jamf Pro 10.26.0
- Verify Configuration Profiles Deployed by Jamf Pro
- Remove System Extensions on macOS Monterey Endpoints Using Jamf Pro
- Non-Removable System Extensions on macOS Sequoia Endpoints Using Jamf Pro
- Uninstall the GlobalProtect Mobile App Using Jamf Pro
-
- Configure HIP-Based Policy Enforcement
- Configure HIP Exceptions for Patch Management
- Collect Application and Process Data From Endpoints
- Redistribute HIP Reports
-
- Identification and Quarantine of Compromised Devices Overview and License Requirements
- View Quarantined Device Information
- Manually Add and Delete Devices From the Quarantine List
- Automatically Quarantine a Device
- Use GlobalProtect and Security Policies to Block Access to Quarantined Devices
- Redistribute Device Quarantine Information from Panorama
- Troubleshoot HIP Issues
-
-
- Enable and Verify FIPS-CC Mode on Windows Endpoints
- Enable and Verify FIPS-CC Mode on macOS Endpoints
- Enable and Verify FIPS-CC Mode Using Workspace ONE on iOS Endpoints
- Enable FIPS Mode on Linux EndPoints with Ubuntu or RHEL
- Enable and Verify FIPS-CC Mode Using Microsoft Intune on Android Endpoints
- FIPS-CC Security Functions
- Resolve FIPS-CC Mode Issues
-
-
- Remote Access VPN (Authentication Profile)
- Remote Access VPN (Certificate Profile)
- Remote Access VPN with Two-Factor Authentication
- GlobalProtect Always On VPN Configuration
- Remote Access VPN with Pre-Logon
- User-Initiated Pre-Logon Connection
- GlobalProtect Multiple Gateway Configuration
- GlobalProtect for Internal HIP Checking and User-Based Access
- Mixed Internal and External Gateway Configuration
- Captive Portal and Enforce GlobalProtect for Network Access
- GlobalProtect on Windows 365 Cloud PC
-
- About GlobalProtect Cipher Selection
- Cipher Exchange Between the GlobalProtect App and Gateway
-
- Reference: GlobalProtect App Cryptographic Functions
-
- Reference: TLS Ciphers Supported by GlobalProtect Apps on macOS Endpoints
- Reference: TLS Ciphers Supported by GlobalProtect Apps on Windows Endpoints
- Reference: TLS Ciphers Supported by GlobalProtect Apps on Android 6.0.1 Endpoints
- Reference: TLS Ciphers Supported by GlobalProtect Apps on iOS 10.2.1 Endpoints
- Reference: TLS Ciphers Supported by GlobalProtect Apps on Chromebooks
- Ciphers Used to Set Up IPsec Tunnels
- SSL APIs
-
- View a Graphical Display of GlobalProtect User Activity in PAN-OS
- View All GlobalProtect Logs on a Dedicated Page in PAN-OS
- Event Descriptions for the GlobalProtect Logs in PAN-OS
- Filter GlobalProtect Logs for Gateway Latency in PAN-OS
- Restrict Access to GlobalProtect Logs in PAN-OS
- Forward GlobalProtect Logs to an External Service in PAN-OS
- Configure Custom Reports for GlobalProtect in PAN-OS
-
6.3
- 6.3
- 6.2
- 6.1
- 6.0
- 5.1
-
- Download and Install the GlobalProtect App for Windows
- Use Connect Before Logon
- Use Single Sign-On for Smart Card Authentication
- Use the GlobalProtect App for Windows
- Report an Issue From the GlobalProtect App for Windows
- Disconnect the GlobalProtect App for Windows
- Uninstall the GlobalProtect App for Windows
- Fix a Microsoft Installer Conflict
-
- Download and Install the GlobalProtect App for macOS
- Use the GlobalProtect App for macOS
- Report an Issue From the GlobalProtect App for macOS
- Disconnect the GlobalProtect App for macOS
- Uninstall the GlobalProtect App for macOS
- Remove the GlobalProtect Enforcer Kernel Extension
- Enable the GlobalProtect App for macOS to Use Client Certificates for Authentication
-
6.1
- 6.1
- 6.0
- 5.1
-
6.3
- 6.3
- 6.2
- 6.1
- 6.0
- 5.1
Deploy the GlobalProtect Mobile App for macOS Using Jamf Pro
Learn how to deploy the GlobalProtect app to your macOS endpoints using Jamf
Pro.
Where Can I Use This? | What Do I Need? |
---|---|
|
|
Starting with GlobalProtect app 6.0.4 and later and 6.1 releases, you can deploy the
GlobalProtect app to managed macOS endpoints that have enrolled with Jamf Pro by
using a script that prepopulates GlobalProtect app settings such as the default
portal address and connection method. As a best practice, you can also target the
app installation or upgrade to a smaller group of endpoints before rolling out the
installation to the rest of your organization.
If you configured dual GlobalProtect portals, you can set up the script to support
multiple portals. This method works only on initial deployments, when you're
deploying the GlobalProtect app for the first time to your endpoints without any
preexisting configuration present. In this case, you must configure the Jamf policy
to run the script before installing the GlobalProtect package.
For a
demonstration on how to deploy the GlobalProtect app by using Jamf Pro, watch
this video.
For step-by-step instructions, refer to the following procedure:
- Download the GlobalProtect app package for macOS from the Customer Support Portal.
- Log in to the Palo Alto Networks Customer Support Portal (https://support.paloaltonetworks.com/).You must have a valid Palo Alto Networks Customer Support Portal account to log in to and download software from the Software Updates page.
- Select UpdatesSoftware Updates.
- Select the GlobalProtect app version for macOS.
- Review the Release Notes for the app version, and then select the download link.
- Upload the GlobalProtect app PKG file to Jamf Pro:
- Select SettingsComputer ManagementPackages.
- Click New.
- Configure general settings for the package, including the display name and category (optional).
- Click Choose File and select the GlobalProtect app package to upload.
- Save your settings.
- Create a script that you will add to Jamf Pro that prepopulates default settings, such as the default GlobalProtect portal and connection method. You can also set up the script to support multiple GlobalProtect portals.The following examples are provided as a reference. Customize the script and app settings as needed for your environment.Single portal script:
#!/bin/bash ## Description: Checks for global preferences file and populates ## it with the default portal if needed. ## Body ########################################################### ## Declare Variables ############################################## # Get current Console user active_user=$( stat -f "%Su" /dev/console ) # Global Prefs File gPrefs=/Library/Preferences/com.paloaltonetworks.GlobalProtect.settings.plist ## Logic ########################################################## # Check to see if the global preference file already exists... if [[ -e $gPrefs ]]; then echo "Default global portal already exists. Skipping." else echo "Setting default global portal to: your.portal.here.com" # If it does not already exist, create it and populate the default portal using the echo command echo '<?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>Palo Alto Networks</key> <dict> <key>GlobalProtect</key> <dict> <key>PanSetup</key> <dict> <key>Portal</key> <string>your.portal.here.com</string> <key>Prelogon</key> <string>0</string> </dict> <key>Settings</key> <dict> <key>connect-method</key> <string>on-demand</string> </dict> </dict> </dict> </dict> </plist> ' > $gPrefs echo $? # Kill the Preference caching daemon to prevent it from overwriting any changes killall cfprefsd echo $? fi # Check exit code. exit $?
Multiple portal script:#!/bin/bash ## Description: Checks for global and user preferences and populates with a test portal if needed. ## Body ############################################################### ## Declare Variables ################################################## # Get current Console user active_user=$( stat -f "%Su" /dev/console ) # Global Prefs File gPrefs=/Library/Preferences/com.paloaltonetworks.GlobalProtect.settings.plist # User Prefs File uPrefs=/Users/${active_user}/Library/Preferences/com.paloaltonetworks.GlobalProtect.client.plist ## Logic ############################################################## echo "Setting default global portal to: your.portal.here.com in GPS" # If it does not already exist, create it and populate the default portal using PlistBuddy /usr/libexec/PlistBuddy -c "Add Palo\ Alto\ Networks:GlobalProtect:PanSetup:Portal string your.portal.here.com" \ -c "Add Palo\ Alto\ Networks:GlobalProtect:PanSetup:Prelogon string 0" $gPrefs echo $? # Kill the Preference caching daemon to prevent it from overwriting any changes killall cfprefsd echo $? #convert plist files from binary to xml format plutil -convert xml1 $uPrefs echo "Setting default user portal to: your.portal.here.com in GPA" # If it does not already exist, create it and populate the default portal using the echo command echo '<?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>PanPortalList</key> <array> <string>your.portal.here.com</string> <string>your.second.portal.here.com</string> </array> </dict> </plist> ' > $uPrefs echo $? # Kill the Preference caching daemon to prevent it from overwriting any changes killall cfprefsd echo $? # Assign ownership of the user preference file to the signed in user chown $active_user $uPrefs echo $? #restart GlobalProtect pkill GlobalProtect # Check exit code. exit $?
- (Optional) If you configured the GlobalProtect portal to authenticate users through SAML authentication, end users can connect to SAML-enabled applications without having to reenter their credentials, providing a seamless single sign-on (SSO) experience. To enable an endpoint to use the default system browser for SAML authentication, add the following statements to the Settings dictionary in the default settings script:
<key>default-browser</key> <string>yes</string>
For example, the following sample script pushes the default GlobalProtect portal address, connection method, and the setting for using the default system browser for SAML authentication:#!/bin/bash ## Description: Checks for global preferences file and populates ## it with the default portal if needed. ## Body ########################################################### ## Declare Variables ############################################## # Get current Console user active_user=$( stat -f "%Su" /dev/console ) # Global Prefs File gPrefs=/Library/Preferences/com.paloaltonetworks.GlobalProtect.settings.plist ## Logic ########################################################## # Check to see if the global preference file already exists... if [[ -e $gPrefs ]]; then echo "Default global portal already exists. Skipping." else echo "Setting default global portal to: your.portal.here.com" echo "Setting fips mode" # If it does not already exist, create it and populate the default portal using the echo command echo '<?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>Palo Alto Networks</key> <dict> <key>GlobalProtect</key> <dict> <key>PanSetup</key> <dict> <key>Portal</key> <string>your.portal.here.com</string> <key>Prelogon</key> <string>0</string> </dict> <key>Settings</key> <dict> <key>connect-method</key> <string>on-demand</string> <key>default-browser</key> <string>yes</string> </dict> </dict> </dict> </dict> </plist> ' > $gPrefs echo $? # Kill the Preference caching daemon to prevent it from overwriting any changes killall cfprefsd echo $? fi # Check exit code. exit $?
- Add the script to Jamf Pro.
- Select SettingsComputer ManagementScripts.
- Click New.
- Enter a Display Name for the script.
- Select Script and copy and paste your script to the editor.
- Save the script.
- If you have not done so already, create a Jamf Smart Computer Group to target specific macOS devices for installation of the GlobalProtect app.
- Select ComputersSmart Computer GroupsNew.
- Enter a Display Name for the group.
- Select Criteria and Add the criteria for the group.
- Save your settings.
- Create a Jamf Policy by adding the GlobalProtect package and script to the policy, and setting the scope to the Smart Computer Group that you created for your macOS devices in step6.
- In Jamf Pro, select ComputersPoliciesNew.
- In the General payload, configure the basic settings for the policy:
- Enter a Display Name for the policy and Enable the policy.
- (Optional) Select a Category.
- Specify a Trigger that will initiate a policy, such as Recurring Check-in.
- Select an Execution Frequency, such as Once per computer and Automatically re-run the policy on failure.
- Configure the Scripts payload by selecting ScriptsConfigure.Add the script that you created in step5and select the Priority for running the script. For multiple portal support, ensure that you set the Priority to Before so that the script will run before the installation of the GlobalProtect package.If you set the priority to After, make sure to restart the GlobalProtect app after the deployment has completed so that the configuration can take effect.
- Configure the Packages payload by selecting PackagesConfigure.
- Add the GlobalProtect app package that
you uploaded in step 2.
- Select a Distribution Point.
- Select Install in the Action menu.
- Add the GlobalProtect app package that
you uploaded in step
- Configure the Maintenance payload by selecting MaintenanceConfigure.Select Update Inventory.
- Configure the scope of the policy.
- Select Scope and Add a deployment target.
- Click Computer Groups and Add the Smart Computer Group that you created in step6.
- Click Done. The computers in the selected computer group will be targeted for deployment of the GlobalProtect app.
- Save the policy.The next time macOS endpoints in the Smart Computer Group that is scoped to the policy check in with Jamf Pro and meet the trigger in the General payload, the policy will run and deploy the GlobalProtect app to the endpoints.