Skip to main content

Deploying Netskope Enterprise Browser to your Windows Fleet


Deploying Netskope Enterprise Browser to your Windows Fleet

Introduction

Enterprise Browser allows organizations to provide secure access to sensitive applications & content for unmanaged devices or devices not running the Netskope client. Here at Netskope the Global Information Security and Information Technology teams partnered closely to successfully launch this technology internally. Below you will find instructions on how the IT team deployed this solution to our fleet of Windows machines.

 

This method is for deploying with Microsoft Intune. This guide details how to deploy the Netskope Enterprise Browser with auto profile enrollment. Netskope Enterprise Browser profiles are leveraging users' corporate email address and for Entra Joined Windows machines, this allows admins to leverage the UPN to have the browser auto enroll upon deployment. 

 

The method described in this guide  consists of 2 steps, deploying the installer and config file to the local machine via Win32 Deployment, then leveraging a PowerShell Platform script or in our example a Remediation Script to complete the Enterprise Browser installation with auto profile enrollment. 
 

Script Based Auto Enrollment Deployment

 

Part 1 - Pre-requist task 

Installer & Configuration file deployment to local machine

  1. Get the MDM Installation artifact (currently a Windows MSI file), this file will be sent to you via your CSR
  2. Add this to a dedicated folder on your Windows Machine 
  3. Create a Powershell script that will run the deployment 
    1. Example of our deployment script, where we are targeting deployment of the files to Public Libraries folder

#Installation Script: EB-Installfile.ps1

$FileName = "EnterpriseBrowser.msi"

$ScriptPath = [System.IO.Path]::GetDirectoryName($MyInvocation.MyCommand.Definition)

Copy-Item -Path "$ScriptPath\$FileName" -Destination "$Env:Public\Libraries"

  1. You can also set up a removal script if required 
  2. Now your Dedicated folder should look like below

AD_4nXdbYmj8Awqh79KUjdVVYj4HLs8Ex7wK9XgnhOAzb_M_zGBvAdWBRCd5hQrEc3_ZDo7MvM6IcHa3HJZRPQ2fCZRX_jhcU3wk-c_dLZpiowvQUVy4KHFQEIE5b6DXYDUEa818i87f2g?key=2z3Isic0hT_C3PTulMwSJL76

 

  1. Now wrap the .ps1 file within the folder to package the whole contents using IntuneWinAppUtil.exe
    1. Download the IntuneWinAppUtil.exe tool from the Microsoft Download Center. - (GitHub - microsoft/Microsoft-Win32-Content-Prep-Tool: A tool to wrap Win32 App and then it can be uploaded to Intune ) - (You can information on how to use IntuneWinAppUtil within the link
  2. Now your Powershell and installer file is wrapped into a .intunewin it is ready to deploy as a Win32 Deployment to your target endpoints
  3.  Now your Powershell and installer file is wrapped into a .intunewin it is ready to deploy as a Win32 Deployment to your target endpoints
  4. Login to your Intune Environment - (https://endpoint.microsoft.com

 

AD_4nXd2ObPnpO6LCR40rx0Kb6jp19ArdFgRluI-L3YKG4UT0sTwWTz911kbVm-BrZ4X7_-oKG96EQyjuoxiemXRDIjJjQ5NFN4TRQvKPHUP7CpqYtc25Jd5Lb9itj8fuN2a6-S7fpegHw?key=2z3Isic0hT_C3PTulMwSJL76

 

  1. On Intune navigate to App and select create 
  2. Select Windows App Win32

AD_4nXc5OXp-attKsJpz6XaWiVt6tWII8232eza0umrqLs8DaUPAnVdLdpHed2qZmf8zUfa8i-0uNVJfBDHDQBTsoH9wvmn8Ywh1-lCrbT-DdVzdV103vM-QhZxDFnN_o0xiGnkav7Cwmg?key=2z3Isic0hT_C3PTulMwSJL76
 

  1. Enter the name and details of your package

AD_4nXf74D7FsEeqUxkh1YjtQA6pyntNiN4LGmdOOprUknCAnfi-5w5bXOkl4P9gg4tBXrpoRmpQUpLx-Jwhcu_oZVH6qUUIBB7MeRGaT_2eJ2w0oh1WqsM3IbKmHu0-wy_Qhu0jsfTgPA?key=2z3Isic0hT_C3PTulMwSJL76

AD_4nXeB_peJ2nKIwHtzi2whP5s0GbSuctbdte9hcXRDMwo38kXECMcrHTZFpnriJl8iY20Hk_DT3L2OyzodJ8IZT4AcvzD02-Fo31_VnwqQTehx55VXHJEJ-4yECT9VnKftOcMMe-sqnQ?key=2z3Isic0hT_C3PTulMwSJL76

 

  1. Add the following install commands & Set the Install behavior to System and no specific action for device restart

Install command: 

%windir%\system32\windowspowershell\v1.0\powershell.exe -executionpolicy bypass -file "EB-Installfile.ps1"

 

Uninstall Command:

Uninstall command: %windir%\system32\windowspowershell\v1.0\powershell.exe -executionpolicy bypass -file "Remove-file.ps1"

 

AD_4nXfCop3_w8nSpGol2JuYe1mt4nYLDVLp94lw4676QFjdmgNnxD1zVyWj1BlZii9ZwRGNl0nK6067xYwAX65bJT4N6yPBdeQorHD4gTBbL7pbxpHPt7J7h8kw53j8NMXnSwyrTGYDTA?key=2z3Isic0hT_C3PTulMwSJL76

 

  1. Set the requirements to 32bit and 64bit 

AD_4nXch6BKwL_se1StnYMPvtmzTRJy-2JiFhe1MIbzTZx-ZbAXYzSolRV-phsQnMcMEpQ2TNQH_AT76ZWM27a74eyV_a_kTiUTTbz5-z4cVifrB8YPq7fHL3pVlc8muKTpMgWdDAmqrnw?key=2z3Isic0hT_C3PTulMwSJL76

  1. For the detection, you can set manual and map to the C drive public Libraries folder: C:\Users\Public\Libraries. In the file section, place EnterpriseBrowser.msi

 

  1. Assign to your relevant scope or assignment group and then select complete and allow to deploy to your targeted fleet. 

Part 2 - Script Deployment task 

  1. Select Devices > then select Scripts & Remeditations

AD_4nXcJr7rTVleMGTYrEgoEAKNOBH4WdRYSGYQ_Jv7EgbNgAyKVcumTCrdlCz2FpHVJdSiNgejkNsshnMqkBeyoTl9ZW69ePRx5WZGQVsqz0ViuUuEdwlj1hzEqnAdAN0JQzdqWOnmlhA?key=2z3Isic0hT_C3PTulMwSJL76

 

  1. Set to remediations & select create

AD_4nXe5r-iQ6akRG3nq9qYEgG4nrpi-EnNgABObqtVoUX1T-t6ih1nsFN8M8HshITVtrmVYAXzdGRq0mPbXkxwwiQxLuhbEYXwC_j7nt1kO0I82G7DfUC2h6bLwo8smBceFLZUomoU5SQ?key=2z3Isic0hT_C3PTulMwSJL76

  1. Set a name and description

AD_4nXedQtZvAM95IndSFq9NGicNtUhA4jfqr_a1ZLmDiQjpE6-xSA5MVflsicNc41SP0ZOv6vPr59D24brl2300Bx5U8JqPu-GtLWI3U-wx_fL7K_gQJdBUtYs6HU912BtUzqe9lNsTaA?key=2z3Isic0hT_C3PTulMwSJL76

  1. Add your detection and Remediation script & set the script to run using the logged-on credentials and also set script to run in 64-bit

 

Detection Script - (Detecting if application is already installed on endpoint

 

# Discovery

 

$OutputVariable = & "%USERPROFILE%\AppData\Local\Netskope\Browser\Application\nsbrowsrer.exe" -f | Out-String

$OutputVariable

    exit 1 

 

Remediation Script - (This points to the installer file pushed down in Step 1 and creates a log file and installs using the install argument leveraging the UPN)

 

# Remediation

 

$msiPath = "$env:Public\Libraries\EnterpriseBrowser.msi"  # Ensure this points to the MSI file

$logFile = "$env:Public\Libraries\EnterpriseBrowser_Install.log"

$upn = (whoami /upn) -replace '\s+$', ''  # Get User Principal Name and remove trailing spaces

$timestamp = Get-Date -Format "yyyy-MM-dd HH:mm:ss"

# Function to Write Logs

function Write-Log {

    param ([string]$message)

    $logMessage = "$timestamp - $message"

    Write-Host $logMessage

    Add-Content -Path $logFile -Value $logMessage

}

# Validate MSI Path

if (-Not (Test-Path $msiPath)) {

    Write-Log "ERROR: MSI file not found at $msiPath. Exiting script."

    exit 1

}

# Define Install Arguments

 

# Define install arguments

$arguments = "/i `"$msiPath`" /qn NETSKOPEPROFILE=`"--netskope-mp-host=Your Host  --netskope-user-email=$upn --netskope-tenant-name=Your Tenant`""

 

# Start Installation

Write-Log "Starting Enterprise Browser installation for: $upn"

Start-Process -FilePath "msiexec.exe" -ArgumentList $arguments -NoNewWindow -Wait

$exitCode = $LASTEXITCODE

# Check if installation was successful

if ($exitCode -eq 0) {

    Write-Log "Enterprise Browser Installed Successfully."

} else {

    Write-Log "ERROR: Installation Failed with Exit Code: $exitCode"

    exit 1

}

exit 0

AD_4nXcSPynMVZ5oVjwRW54jdR_wstoawN4P9QWJfJ0AM4GmF8q0Q3-cmJzcm5QP4TmkefcjaDBqKof-sYG1kS8BzkxHx1H_Y1u9MKuWEqooPxsM7BAmK-VyUMFO2bgKCfg237emHSaUQA?key=2z3Isic0hT_C3PTulMwSJL76

 

  1. Set your scope targets or your assignment group depending on your assignment setup on your Microsoft Intune Tenant & set the schedule suitable for your environment

AD_4nXds3DM87J-4j9ShRfOi2KUmk1Z7oFLQj9ozYtljIDR4Pn-Z21JjelCMKvG2U9EV186M6SMJXGVEcOeRIt0lLvnvW4C1ecuv-5MX3E66YRmWhgOYvfHRTbMmQ5yyE2pUHz0WnQCA?key=2z3Isic0hT_C3PTulMwSJL76

  1. Now review and create 

AD_4nXeU6dG0IWQ3KBjRLzziz8JB4GcNJqqrfLFlaTfbXEhVx_2X9rXRCeIlpyaSS90avZ6phU6ZpxC8GIO4GKVxNxCT_0Pptq7_SHD5Z6oOuPHnOvtCDcSzAeYB4KCjWF8ArZy9Rwj4cQ?key=2z3Isic0hT_C3PTulMwSJL76

 

Once the script runs the user should see the icon on their desktop with the profile automatically enrolled 

Below is an example of what your end users will see post deployment

 

AD_4nXeZ0y6TIDbd2PIDki4rtctIK2VCSIgw8LKt-TstXv07dS_GagsLGXUWxKE7klPSwcR39t_9PaVUChrkS9OnV6X2zE7WpZ9DZXeAxpZ1hkQIFahr-6Gw08bDiWHjeQKlUv4KjzKb?key=2z3Isic0hT_C3PTulMwSJL76AD_4nXcHQVt3yHichqBymWH6DD6HFnoDKcwPIi5TQM9oN_pQ1D_-Keggo5wa-6NHCQ3MmhTmzaG8xpqaxuqTJetj-Br4SqHf7R3UM9aJ2ORkchOziYZ_YmH1v21xFDU9zwjymwU3iYF_Ag?key=2z3Isic0hT_C3PTulMwSJL76

Please let us know if these instructions were helpful to you and don’t hesitate to leave a comment or question below!

Did this topic help you find an answer to your question?

0 replies

Be the first to reply!

Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings