Posted on 01-23-2017 02:50 PM
Hi Everyone.
I am trying to add a policy that installs Pulse Secure on our endpoints, because we require it for use with VPN. I have seen the instructions from @rtrouton on now to deploy with a custom config, but they do not work, as I am simply trying to get the app to install.
I have a .dmg from Pulse that contains a simple .pkg file. When running it manually on an endpoint, it works no problem. However, when I upload the same .pkg to the JSS and use a policy to install it, it results in a broken application that will not open.
I have tried using Composer as well to create my own installer, that has the same result. Does anyone have any ideas here? I feel like this should be a really simple answer, but it is evading me currently.
Thanks in advance!
Solved! Go to Solution.
Posted on 02-23-2017 11:35 AM
I saw the same problem when doing our installations. It seemed the installer worked the first time but ONLY once and any subsequent installations resulted in a damaged/corrupted App no matter what I did.
I ended up doing the following
Step 1. Use the App's own un-installer (note Application name change) to get rid of any existing installations.
#!/bin/sh
####################################################################
# Kill off older, possibly corrupt installations of Junos Pulse or Pulse Secure
# NOTE: This should NOT be run unless user is experiencing issues
# with the Junos SSLVPN software already. This is intended
# to be a clean-up ONLY and NOT a precursor to 1st install.
####################################################################
# Cobbled together from other's hard work
# By Christopher Miller for ITSD-ISS of JHU-APL
# Dated: 2015-02-18, Updated: 2016-02-14
####################################################################
# Look for a Junos Pulse or Pulse Secure installation
if [ -e "/Applications/Junos Pulse.app/" ]
then
echo "Found Junos Pulse, now removing"
/bin/sh '/Library/Application Support/Juniper Networks/Junos Pulse/Uninstall.app/Contents/Resources/uninstall.sh'
sleep 5
elif [ -e "/Applications/Pulse Secure.app/" ]
then
echo "Found Pulse Secure, now removing"
/bin/sh '/Library/Application Support/Pulse Secure/Pulse/Uninstall.app/Contents/Resources/uninstall.sh'
sleep 5
else
echo "SSL-VPN App not Found"
fi
echo "Done!"
exit 0
Step 2. Using the vendor's own installer .PKG file to perform an installation.
Step 3. Use a simple Composer .PKG install of ONLY the application itself from a good, first install.
Step 4. Use another Composer .PKG install that drops a .jnprpreconfig file from the VPN server into /Library/Application Support/Juniper Networks/Junos Pulse/ If you don't have this file, get one from whoever is the Admin. This same .PKG also has a post-install shell script invoking the App's built-in import tool. Modify the ImportFile Variable to your own needs.
#!/bin/sh
## postflight
##
## Not supported for flat packages.
######################################
# By: Christopher Miller of ITSD-ISS for JHU-APL
# Dated: 2016-02-12
######################################
pathToScript=$0
pathToPackage=$1
targetLocation=$2
targetVolume=$3
# Specify location and filename of the enterprise server config file
ImportFile="/Library/Application Support/Juniper Networks/Junos Pulse/FILENAMEHERE.jnprpreconfig"
# Now, Determine the version of the app to route to correct importer tool, then import
if [ -e "/Applications/Junos Pulse.app" ] ; then
ImportApp="/Applications/Junos Pulse.app/Contents/Plugins/JamUI/jamCommand"
elif [ -e "/Applications/Pulse Secure.app" ] ; then
ImportApp="/Applications/Pulse Secure.app/Contents/Plugins/JamUI/jamCommand"
fi
if [ "$ImportApp" != "" ] ; then
"$ImportApp" -importFile "$ImportFile"
echo "Import of settings finished!"
else
echo "Vendor Import Application not found"
fi
exit 0 ## Success
exit 1 ## Failure
After this, you should have a working installation of the App and a configuration setup for your enterprise specific server. Good Luck! -CTM
Posted on 01-23-2017 03:25 PM
Have you tried rebooting it after deploying the dmg installer? I don't have the time to look deeper into my deployment but I am using a .dmg that I packaged using composer. If I remember right, it includes LaunchAgents/Daemons that won't be running until a reboot.
Posted on 01-23-2017 03:47 PM
2nd that I think a reboot is needed...
C
Posted on 02-23-2017 11:35 AM
I saw the same problem when doing our installations. It seemed the installer worked the first time but ONLY once and any subsequent installations resulted in a damaged/corrupted App no matter what I did.
I ended up doing the following
Step 1. Use the App's own un-installer (note Application name change) to get rid of any existing installations.
#!/bin/sh
####################################################################
# Kill off older, possibly corrupt installations of Junos Pulse or Pulse Secure
# NOTE: This should NOT be run unless user is experiencing issues
# with the Junos SSLVPN software already. This is intended
# to be a clean-up ONLY and NOT a precursor to 1st install.
####################################################################
# Cobbled together from other's hard work
# By Christopher Miller for ITSD-ISS of JHU-APL
# Dated: 2015-02-18, Updated: 2016-02-14
####################################################################
# Look for a Junos Pulse or Pulse Secure installation
if [ -e "/Applications/Junos Pulse.app/" ]
then
echo "Found Junos Pulse, now removing"
/bin/sh '/Library/Application Support/Juniper Networks/Junos Pulse/Uninstall.app/Contents/Resources/uninstall.sh'
sleep 5
elif [ -e "/Applications/Pulse Secure.app/" ]
then
echo "Found Pulse Secure, now removing"
/bin/sh '/Library/Application Support/Pulse Secure/Pulse/Uninstall.app/Contents/Resources/uninstall.sh'
sleep 5
else
echo "SSL-VPN App not Found"
fi
echo "Done!"
exit 0
Step 2. Using the vendor's own installer .PKG file to perform an installation.
Step 3. Use a simple Composer .PKG install of ONLY the application itself from a good, first install.
Step 4. Use another Composer .PKG install that drops a .jnprpreconfig file from the VPN server into /Library/Application Support/Juniper Networks/Junos Pulse/ If you don't have this file, get one from whoever is the Admin. This same .PKG also has a post-install shell script invoking the App's built-in import tool. Modify the ImportFile Variable to your own needs.
#!/bin/sh
## postflight
##
## Not supported for flat packages.
######################################
# By: Christopher Miller of ITSD-ISS for JHU-APL
# Dated: 2016-02-12
######################################
pathToScript=$0
pathToPackage=$1
targetLocation=$2
targetVolume=$3
# Specify location and filename of the enterprise server config file
ImportFile="/Library/Application Support/Juniper Networks/Junos Pulse/FILENAMEHERE.jnprpreconfig"
# Now, Determine the version of the app to route to correct importer tool, then import
if [ -e "/Applications/Junos Pulse.app" ] ; then
ImportApp="/Applications/Junos Pulse.app/Contents/Plugins/JamUI/jamCommand"
elif [ -e "/Applications/Pulse Secure.app" ] ; then
ImportApp="/Applications/Pulse Secure.app/Contents/Plugins/JamUI/jamCommand"
fi
if [ "$ImportApp" != "" ] ; then
"$ImportApp" -importFile "$ImportFile"
echo "Import of settings finished!"
else
echo "Vendor Import Application not found"
fi
exit 0 ## Success
exit 1 ## Failure
After this, you should have a working installation of the App and a configuration setup for your enterprise specific server. Good Luck! -CTM