Skip to main content

Hi all,

Anyone have any skills with deploying NinjaOne to Macs through Jamf?

I’m having some troubles deploying Ninja to my environment in Jamf pro. I’m deploying the pkg using a policy. I pulled the pkg direct from my Ninja admin site using their method of acquiring the necessary file. I’m also deploying a config file to allow the necessary streamer application to run in the background and quiet install (see screenshot for config.) Every time I deploy through Jamf, the NC Streamer file does not go to the device, and the device does not enter my Ninja console. When I manually install the same pkg without Jamf, the NC Streamer installs fine and the device is added as a local machine. I’m trying to figure out where I’m going wrong with my install and why this is isn’t working through Jamf. It’s just a simple PKG in a policy and a small config file.

Please let me know if anyone has suggestions for me or if I need to provide more info.

I have contacted NInja support already. They claim it’s a Jamf problem and won’t help.

 

Hi JSKeller,

We are experiencing the same issue. The only difference is that we are using Kandji as our MDM, but that shouldn’t matter since the deployment with the PKG and mobileconfig is essentially the same.

When we deploy the NinjaOne Agent (.pkg) manually on a MacBook, it shows up in the NinjaOne dashboard, just like you mentioned.

I’m currently in contact with NinjaOne support since we are still in the onboarding phase. My guess is that it might be related to the mobileconfig being outdated (maybe because the .pkg file now contains additional required settings, or perhaps due to recent changes on Apple’s side).

If you have an solution to this please let me know, same here if I hear something Ill let you know!
 


Same here, in contact with Ninja. I still think they need to help in some way. Something isn’t deploying right and I feel like I need more scripting from them in order to properly deploy this iteration of Ninja. It feels like there’s an install script that isn’t running. So far their support hasn’t been a lot of help.

It seems like more items install when I run a local install as opposed to deploying with Jamf. I’m installing the same PKG files in both instances, literally the same. But they do different things. My config profile works, but the machine never goes into my Ninja environment.


Given everything that’s stayed here, I would clarify if the package is designed to run in the root or in user context i.e. as user. my bet would be the config profile is fine, however the pkg may not like being run in the root context. 

if this is true in theory, if the package was cached to the box via policy, and the current user was located, the package could be running user context like this. 

 

 #find console user (not loginwindow)
currentUser=$(/usr/sbin/scutil <<<"show State:/Users/ConsoleUser" | \
awk '/Name :/ && !/loginwindow/ {print $3}')
br -z "${currentUser:-}" ]] && { echo "No user logged in; exiting."; exit 0; }
uid=$(id -u "$currentUser")

PKG="/Library/Application Support/JAMF/Waiting RoomNinjaOne.pkg"
HOME="/Users/$currentUser" as_user /usr/sbin/installer -pkg "$PKG" -target /

just a thought. 


I agree that it might not like being run in the root. I’m a little slow in how the scripts work which is why I’m asking for help. Ninja has now told me they don’t have a recommended mass deployment for Macs so they’ve been little help. I may just go manually install where I need this.

In my trials, I’ve noticed that 3 additional folders appear in the Applications folder under the NinjaRMMAgent folder that are not there when deployed with Jamf. Then, the folder hides itself once the computer gets added to the Ninja console. Ninja support has not been helpful in helping me find a deployment script I can use in Jamf. They just keep pointing to a lack of support for mass deployment of Mac devices.

Thanks for the replies so far, I appreciate any input here!


that’s really interesting that additional folders are created when deployed by hand; have you ever inspected the package with a utility like https://mothersruin.com/software/SuspiciousPackage/

 

the utility will give you a good idea as to what the package is doing in terms of all files written to the HD and there paths; this utility should let you inspect permissions; and pre and post flight scripts; essentially all the info you need to reproduce in jamf.  The same site features Apparency which is also helpful.

 

best of luck


@JSKeller  Hey! 

I got it working!! 

After many communication back and forth with NinjaOne we finaly got it working with a custom script.

On the buttom of this page: https://ninjarmm.zendesk.com/hc/en-us/articles/28931939645709-NinjaOne-Agent-Installation-Deploy-via-Intune
There is a script: InstallNinjaOneAgentmacOS.sh 

Open the script with notepad++ or any other editing program.
Put your custom .PKG url that you can get from agent in NinjaOne. I used the one with the token already in the url, so I left the token value empty sinds its included in the url.
So the script looks like this:
….
URL='https://eu.ninjarmm.com/agent/installer/YOUR TOKEN SHOULD BE HERE/9.0.4181/NinjaOne-Agent_YOUR TOKEN SHOULD BE HEREea-InternalInfrastructure-MainOffice-MACLAPTOP.pkg'
# If using generic installer URL, a token must be provided
Token=’ ‘ 
…..

 

This script is then deployed as a custom script. Hope this helps you too :) 

 

Best regards,

Frederik


Excellent! I’ll give this a try. Did you place the InstallNinjaOneAgentmacOS.sh into the custom pkg file (like with Jamf Composer) or did you add the script into Jamf separately to deploy before the pkg?


@JSKeller No, I just deployed the InstallNinjaOneAgentmacOS.sh as a custom script, without the PKG, since the script itself downloads the PKG using the custom token that links to your environment.

Did you get it working as well?


Ahh, no I haven’t gotten it to work, but I also tried the script along with a Pkg so maybe that wasn’t the best option. I’ve since found that an older version of Ninja deployments is still working for our environment. Something is wrong with our pkg downloads or they’re deploying differently in some way. I’ll send the script out to a test machine and see what happens. Thanks for your follow-up!

Edit: That worked great!! And it was so simple, it’s scary… Thanks for the fix. Much appreciated!!


I have tried the script that you posted here ​@Majestic and it looks like the NinjaOne agent gets installed but the Macbook isn’t showing up in my console under pending device approvals.

 

The Ninja agent is running in the background and I can see it has the privacy & security permissions set using the configuration profiles.

 

Script result: 2025-09-10 12:42:29 - Performing checks...
2025-09-10 12:42:29 - Downloading installer...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  1 69.3M    1  817k    0     0  1097k      0  0:01:04 --:--:--  0:01:04 1096k
  8 69.3M    8 5889k    0     0  3401k      0  0:00:20  0:00:01  0:00:19 3400k
 18 69.3M   18 12.8M    0     0  4824k      0  0:00:14  0:00:02  0:00:12 4823k
 29 69.3M   29 20.7M    0     0  5688k      0  0:00:12  0:00:03  0:00:09 5687k
 39 69.3M   39 27.4M    0     0  5933k      0  0:00:11  0:00:04  0:00:07 5933k
 47 69.3M   47 33.1M    0     0  5917k      0  0:00:12  0:00:05  0:00:07 6637k
 58 69.3M   58 40.3M    0     0  6142k      0  0:00:11  0:00:06  0:00:05 7091k
 69 69.3M   69 48.4M    0     0  6416k      0  0:00:11  0:00:07  0:00:04 7284k
 79 69.3M   79 54.8M    0     0  6430k      0  0:00:11  0:00:08  0:00:03 6984k
 88 69.3M   88 61.4M    0     0  6469k      0  0:00:10  0:00:09  0:00:01 6976k
 99 69.3M   99 68.9M    0     0  6574k      0  0:00:10  0:00:10 --:--:-- 7327k
100 69.3M  100 69.3M    0     0  6582k      0  0:00:10  0:00:10 --:--:-- 7311k
2025-09-10 12:42:40 - Download successful. Beginning installation...
installer: Package name is NinjaOne RMM agent
installer: Installing at base path /
installer: The install was successful.
2025-09-10 12:42:43 - Successfully installed NinjaOne!

 

I attempted wiping the machine multiple times while tweaking different things in the script and policies but no luck.

 

Does anyone know where I can check the Ninja agents config on the Macbook to see if it is orphaned and not set to sync with my tenant?

 

EDIT: Realized that the device was in Ninja all along. We never deleted the device prior to wiping it when it was already approved, so when we reinstalled Ninja just assigned that agent back to the original device in the console. The script works!


@qroberts When you select your link from Ninja One, which one are you using for Macs? The Desktop Link, the Laptop link, and are you using the link to the pkg or the dmg? Personally, I was using the laptop link to a pkg file. You may give that a try if you haven’t done this already. I noticed it also takes about 15-20 minutes for the Mac to fully check in with Ninja once its installed. Hope this helps!

 

Jordan


Reply