Skip to main content
Jamf Nation, hosted by Jamf, is a knowledgeable community of Apple-focused admins and Jamf users. Join us in person at the ninth annual Jamf Nation User Conference (JNUC) this November for three days of learning, laughter and IT love.

Deploying Palo Alto Traps

Hi guys,

Anyone know where is the plist for Traps Settings or way to set up the settings at all?

Been scanning for plist and any config file to set up the settings but couldnt find any.

Thanks

Like Comment
Order by:
SOLVED Posted: by matin.everquote

Palo Alto Traps For Mac is not like a standard application.

Here is where the Palo Alto Traps For Mac installs on the local computer:

However within Traps for Mac Client Agent, there are no static/local configurations. The specific location where there are configurations which is in config folder is synced with the Palo Alto Server that manages the client. So if you are updating these xml files, it will get over written when the Traps client checks in with the server. The only configurations that you can edit during installation time is the Palo Alto Traps Server address Traps Client should initially connect (server.xml) to which is located in the install zip file provided by the person that manage your Palo Alto Servers:

Like
SOLVED Posted: by dng

Has anyone deployed this properly with JAMF?

Like
SOLVED Posted: by matin

Yes, I have the Traps for Mac working with jamf. There are 2 options that you can use to deploy traps with jamf.

  • Option 1 - Create a custom package that lays down the installer, .version file, and custom xml file (custom client settings to set traps server addresses) in a static location on the clients computer along with a postinstall script that runs the install via the command line then put this into a policy.
  • Option 2 - Create policy with the following
    • a custom package that lays lays down the installer, .version file, and custom xml file (custom client settings to set traps server addresses) in a static location on the clients computer
    • script that triggers the install via the command line

I prefer the pkg with postinstall script because if we have to manually install traps, the experience is the same.

Like
SOLVED Posted: by matin

Thought I would add to my original response since I had to make documentation for my company on how to build this installer:

Prerequisites - Traps for Mac Installer from console. Usually comes in a ZIP file.
- Custom XML file provided by Traps Administrator with organization server addresses in xml format

Process
1. Place Traps installer, .version, xml file in a folder named Traps_macOS_installer and move folder to a temporary location on your computer. I usually use /tmp (/private/tmp). This way it will be removed at next restart.
2. Open Composer.
3. Create a new package by dragging and droping the Traps folder located in your temporary location into composer.

4. Go to the Scripts folder within your new Traps Source Package in Composer and create a postinstall script.
- Enter the following as shown in screenshot:

#!/bin/sh
## postinstall
wait 10
/usr/sbin/installer -allowUntrusted -pkg /private/tmp/Traps_macOS_installer/Traps.pkg -target /
exit 0

5. Build as PKG file since you have setup the postinstall script other wise the script will be stripped from the compiled installer/dmg.

Note: As long as you keep the Traps_macOS_installer consistant and all the file names are the same then you will just need to updated the .version file and traps.pkg file and recompile.

Like
SOLVED Posted: by dng

Thank you so much! I was almost on the right track to do so with packages.app instead of composer. I didn't think about using Composer in this way.

Like
SOLVED Posted: by FastGM3

@matin Thanks for sharing, worked perfectly and saved me some time!

Like
SOLVED Posted: by noahblair

Such a good post. Thanks man.

Like
SOLVED Posted: by kiwillia

Thank you!

Like
SOLVED Posted: by aoxley

Hey,
Thanks so much for this article, its super helpful. Where do I find the .version file? Also is Config.xml the new Server.xml?
Thanks!

Like
SOLVED Posted: by matin

The following files are create from the Traps Console. Unfortunately, I do not have access and these files are provided to me by my IT Security Team:
- .version
- Servers.xml

Like
SOLVED Posted: by mm13

Thank you @matin ! Issue right now is that Gatekeeper seems to be preventing the extension from running, which borks the install initially. Do you have any advice on how to disable or enable this app from running in Gatekeeper? A little cloudy on the process.

Thanks!

Like
SOLVED Posted: by matin

@mm13 - I think you are referring to User Approved Kernel Extension Loading. My company has a hybrid of mac hardware that have been imaged via Apple DEP and QuickAdd/Jamf Imaging. We manually authorize the User Approved Kernel Extension via Security and Privacy > General tab and manually approve the User Approved MDM via profiles. For Apple DEP and Jamf 10, we are whitelisting these Kernel Extension via Configuration Profile. Hope that helps.

Like
SOLVED Posted: by tguyers360

thanks @matin you have saved me a whole load of time ! much appreciated

Like
SOLVED Posted: by bcbackes

@matin Thank you for all your information. It's been a great deal of help. I did get stuck on the Kernel Extension via Configuration Profile. I did look at the links you provided, however, I can't seem to figure out how to create the profile and upload it into Jamf. We are not using a Mac Server. I do apologize since I'm really new to Jamf and Apple products in general.

All the documentation I've been reading through referred to using Profile Manager, which, appears to only be available on MacOS Server? Any tips you have will be helpful. FYI, I created a package following your instruction above and found that it would download locally to the Mac, however, never installed. Again, I suspect that the Kernel Extension Loading is what prevented that, even though nothing prompted about allowing it. In the \private\tmp folder I see it there, however, it has a red circle with a line in the circle (similar to a hyphen).

Whatever help you can lend will be greatly appreciated. Thanks again!

Like
SOLVED Posted: by matin

@bcbackes - If you are using jamf (like I am), you would use the built in options to create a white list configuration profile in Jamf as described by @rtrouton article Whitelisting third-party kernel extensions using profiles. You would need to scrolling down the bottom of the article on how to create one in Jamf Pro.

Note, You must be running Jamf Pro 10.3.1 or higher I think for these configuration profile options to be available.

Like
SOLVED Posted: by bcbackes

Thanks @matin ! That was my issue all along. I'm running Jamf Pro 10.0.0. We are in the process of migrating our server and updating Jamf, however, we are not there yet. I've just setup a DEV Server and installed the latest Jamf Pro 10.7.0. I found the "Approved Kernel Extensions" you were talking about. I'm excited to test this out. Thanks again!

Like
SOLVED Posted: by bcbackes

@matin Hello, I'm running Jamf 10.7 and have setup the Kernel Extension via Configuration Profile. I followed your instructions above as well. Palo Traps does install automatically, however, it doesn't appear to have any of the server settings in it.

I did verify that the "Servers.xml" is present with the Traps.pkg and the version file. I did create the postinstall script using the settings below:

!/bin/sh

postinstall

wait 10
/usr/sbin/installer -allowUntrusted -pkg /private/tmp/Traps_macOS_installer/Traps.pkg -target /
exit 0

I've packaged this as a PKG using Composer and uploaded this to the Jamf DP. I created a Policy to deploy this to all computers (doing this in my Dev environment). It deploys out when the computer checks in, however, after it installs and I open the Traps Console, there isn't anything in there. If I try to check-in I get an error. I'm not sure what I'm missing. Any ideas?

Like
SOLVED Posted: by matin

@bcbackes - Is the target client a DEP computer, user-enrolled computer or QuickAdd/Casper imaging client? Can you also verify that the target client MDM Profile is approved? This is required for the Kernel Approved Configuration Profile to deploy properly to macOS 10.13 or above clients. However, Traps for Mac install process sounds like all the components installed on the target system fine. Traps just cannot connect initially to the Traps Server. I would suggest trying the installation process on a 10.12 target client or below to verify the process.

Note, We are still utilizing the process that I wrote out in this document for 10.13 however we had to add Palo Alto to the kernel white list. Note, after the initial installation the client may require a restart.

Like
SOLVED Posted: by bcbackes

Just to follow up with everyone. I did get Traps to install correctly and contain all our server information. I've even tested using @matin's suggestion on making the package name generic (versionless). Then, I drop in the new pkg, save it in Composer, then, upload it using Jamf Admin. I've deployed out newer versions to existing installations and found that they upgrade without issues. I've even created an uninstaller that seems to work just fine.

Thanks for all the help!!! This was my first successful package that I've created in Composer!

Like
SOLVED Posted: by cbanfield0818

EDIT- Nevermind I just noticed it was a hidden file!

Hi Everyone,

So our zip folder does not contain a .version can anyone confirm this is the new normal with version 5 or am I missing something?

Like
SOLVED Posted: by cbanfield0818

So I was struggling in just about every way to get this working. Both using composer and also the solution shared by Martin.

I decided to get have a zoom meeting with Palo Alto and wanted to share my findings and what got it working for me so others don't go through my pain.

Anywho, I am not sure if its a new thing or what, but you can literally drag the Zip file into JAMF Admin and create a new policy to deploy the Zip. As long as you have the right whitelist information done its as smooth as any other deployment. Blew my mind it was that easy.

Like
SOLVED Posted: by khey

Oh wow, I came to this page after googling for Jamf palo alto traps and i was the OP.....
I managed to get it working and just couldnt remember this thread...

Here how i got it working.
FYI, this is for the Cloud version and should be the same as ESM Version.
Composer - Put the Installer under /Users/Shared

Post install Script

#!/bin/bash logFile="/Users/Shared/Traps_Install.log"

Check for Log file

if [ -f $logFile ]; then echo "$(date)" >> $logFile echo "Log Present" >> $logFile else touch $logFile echo "$(date)" >> $logFile echo "Log file Created" >> $logFile fi

Install the package

echo "Installing Traps Package..." >> $logFile /usr/sbin/installer -pkg "/Users/Shared/TRAPS_Cloud_Agent_macOS_6_1.0/Traps.pkg" -target / echo "Package installed..." >> $logFile

Launch Traps Service

echo "launch Traps plist..." >> $logFile sudo launchctl load /Library/LaunchDaemons/com.paloaltonetworks.trapsd.plist

Remove installer file

sudo rm -rf "/Users/Shared/TRAPS_Cloud_Agent_macOS_6_1.0" echo "deleting Traps folder" echo "complete" >> $logFile

My Policy

Extension Attribute

#!/bin/bash if [ -f /Library/Application\ Support/PaloAltoNetworks/Traps/version.txt ]; then version=$(cat /Library/Application\ Support/PaloAltoNetworks/Traps/version.txt | tail -1) echo "<result>$version</result>" else echo "<result>Not Installed</result>" fi
Like
SOLVED Posted: by villap5

Hi, just wanted to post in this thread to see if anyone was able to resolve the issue when deploying (using Matin's steps of making a custom package in Composer) and getting a System Extension blocked pop-up for Security & Privacy. It pops up and but still allows the install to take place. What am I doing wrong that causes the pop-up?

I have the below Configuration Profile payload for Approved Kernel Extensions that is pushed before I run the policy to install the software.

Approved Team ID
DISPLAY NAME Palo Alto Traps
TEAM ID PXPZ95SK77
Approved Kernel Extensions(Optional) Approve the following bundle IDs only
DISPLAY NAME KERNEL EXTENSION BUNDLE ID com.paloaltonetworks.GlobalProtect.gplock com.paloaltonetworks.GlobalProtect.gpsplit com.paloaltonetworks.traps-agent com.paloaltonetworks.kext.pangpd com.paloaltonetworks.driver.kproc-ctrl

Like
SOLVED Posted: by RedWings

@villap5 Add Traps to an Approved Extensions Configuration Profile.

See this list for the Team ID and other information regarding Extensions.

https://docs.google.com/spreadsheets/d/1IWrbE8xiau4rU2mtXYji9vSPWDqb56luh0OhD5XS0AM/edit#gid=1070689416

Like