NAVANEM
advanced5 steps · 6 min read · jun 15, 2026 · 19:06 utc

FortiClient VPN Intune Deployment Without EMS Premium

Extract FortiClient MSI, deploy via Intune LOB app, and configure VPN settings with PowerShell registry scripts. Works with Windows 10/11 x64 devices.

by Emanuel De Almeida

Illustration of deploying FortiClient VPN with Intune using an extracted MSI and PowerShell scripts without EMS Premium

TL;DR

  • Extract the MSI from FortiClient's online installer cache folder before completing installation
  • Create a Line-of-Business app in Intune using the captured MSI with silent install switches
  • Capture VPN registry settings from a configured test device to use as your deployment template
  • Deploy a PowerShell script through Intune that writes VPN configuration to the registry automatically
  • No Fortinet EMS Premium license required: this method uses native Intune capabilities only

Why Deploy FortiClient VPN Through Microsoft Intune?

When we tested FortiClient deployment in our environment, Intune's Line-of-Business app functionality proved the most reliable method for organizations without Fortinet EMS Premium licensing. You extract the MSI installer, upload it to Intune, and push pre-configured VPN settings via PowerShell registry scripts.

VPN security matters more than ever. According to Infosecurity Magazine, exploitation of edge devices and VPNs grew nearly eightfold in 2024-2025, jumping from 3% to 22% of all vulnerability exploitation actions. Keeping VPN clients updated through centralized deployment reduces your attack surface significantly.

Microsoft Intune commands approximately 37.19% market share in Mobile Device Management according to Enlyft. This dominance means most enterprise administrators already have the tools needed for this deployment.

What Are the Prerequisites for This Deployment?

Before starting, gather these requirements. Missing any item will block your deployment.

Requirement

Details

Intune access

Administrator role in Microsoft Intune admin center

Fortinet account

Support portal access for downloading the installer

Test device

Windows machine for MSI extraction and config capture

Target OS

Windows 10 version 1607 or later, x64 architecture

Azure AD groups

Configured for pilot and production deployment phases

VPN details

Server FQDN and port from your network team

The Windows 10 1607 minimum requirement stems from Intune's LOB app support for that build and newer. If you manage older systems, consider alternative deployment methods or upgrading those endpoints. Organizations running current Windows builds should also stay current on patches. Review the Windows 11 KB5094126 June 2026 patch notes for recent security fixes affecting managed devices.

How Do You Extract the MSI from FortiClient Online Installer?

Fortinet does not offer direct MSI downloads. You must capture the installer package from the temporary cache during online installer execution.

Download the FortiClient VPN online installer from the Fortinet support portal. Launch the executable and wait for the welcome screen. Do not click Install yet.

Open File Explorer and navigate to the cache directory:

shell
C:\ProgramData\Applications\Cache\

Locate the folder with a GUID name containing a version subfolder. Sort by date modified to find the newest entry. Copy the MSI file to a working directory:

shell
copy "C:\ProgramData\Applications\Cache\{GUID}\{VERSION}\FortiClientVPN.msi" "C:\Temp\FortiClientVPN.msi"

Cancel the installer after copying. Right-click the MSI, select Properties, and confirm it displays as a Windows Installer Package with a file size between 50 and 100 MB. This validates you captured the complete package.

How Do You Create a Line-of-Business App in Intune?

Package the extracted MSI as an LOB application for centralized distribution through the Intune admin center. This method works without additional Fortinet licensing.

Sign into https://intune.microsoft.com and navigate to Apps > All apps > Add. Select Line-of-business app and choose Windows as the platform. Upload your extracted MSI file.

Configure the application metadata:

  • Name: FortiClient VPN
  • Publisher: Fortinet
  • Description: Secure VPN client for remote access

Set the command-line arguments for silent installation:

shell
/quiet /norestart

Under Install behavior, select System. Intune auto-detects the MSI product code for detection rules. For more control, create a custom detection script:

powershell
$AppPath = "C:\Program Files\Fortinet\FortiClient\FortiClient.exe"
if (Test-Path $AppPath) {
    Write-Output "Detected"
    exit 0
}
exit 1

Set requirements to x64 architecture and Windows 10 1607 minimum. Assign the application to a pilot device group before enterprise-wide rollout. If you encounter deployment errors, the troubleshooting guide for Intune Error 65000 and certificate expiry covers common Intune app deployment failures.

How Do You Capture VPN Configuration from a Test Device?

Manually configure FortiClient on a test machine to capture the registry structure your deployment script will replicate. This ensures accuracy.

Install FortiClient and add a new VPN connection through the GUI. Enter your production VPN server address, port, and authentication settings. Test the connection to confirm it works before capturing settings.

Export the registry keys containing your configuration:

shell
reg export "HKLM\SOFTWARE\Fortinet\FortiClient\Sslvpn\Tunnels" C:\Temp\FortiVPN_Config.reg

Open the exported file in a text editor. Document the values you need:

shell
[HKEY_LOCAL_MACHINE\SOFTWARE\Fortinet\FortiClient\Sslvpn\Tunnels\CompanyVPN]
"server"="vpn.yourcompany.com"
"port"="443"
"description"="Company VPN Connection"
"auth_method"="sslvpn"
"save_password"=dword:00000000

These values become variables in your deployment script. Keep your VPN infrastructure patched. Security.org reports that 92% of organizations worry VPN vulnerabilities directly lead to ransomware attacks, while VPNs and firewalls now account for 58% of ransomware incidents.

What PowerShell Script Configures the VPN Settings?

Build a PowerShell script that writes VPN settings to the registry after FortiClient installation completes. The script runs in system context through Intune.

Create a file named Configure-FortiVPN.ps1 with this content:

powershell
# FortiClient VPN Configuration Script
$VPNName = "CompanyVPN"
$VPNServer = "vpn.yourcompany.com"
$VPNPort = "443"
$Description = "Company VPN Connection"

$RegPath = "HKLM:\SOFTWARE\Fortinet\FortiClient\Sslvpn\Tunnels\$VPNName"

try {
    $FortiClientPath = "C:\Program Files\Fortinet\FortiClient\FortiClient.exe"
    if (-not (Test-Path $FortiClientPath)) {
        Write-Error "FortiClient not found"
        exit 1
    }

    if (-not (Test-Path $RegPath)) {
        New-Item -Path $RegPath -Force | Out-Null
    }

    Set-ItemProperty -Path $RegPath -Name "server" -Value $VPNServer
    Set-ItemProperty -Path $RegPath -Name "port" -Value $VPNPort
    Set-ItemProperty -Path $RegPath -Name "description" -Value $Description
    Set-ItemProperty -Path $RegPath -Name "auth_method" -Value "sslvpn"

    Write-Output "VPN configuration applied successfully"
    exit 0
}
catch {
    Write-Error $_.Exception.Message
    exit 1
}

Customize the variables at the top for your environment. Test the script locally before uploading to Intune. PowerShell scripting skills transfer across many Intune tasks. Our guide on changing SharePoint domains with PowerShell covers similar registry and configuration automation techniques.

How Do You Deploy the Configuration Script via Intune?

Upload and assign the PowerShell script to run on target devices after FortiClient installs. Intune processes app installations before scripts in most scenarios.

In the Intune admin center, go to Devices > Scripts > Add > Windows 10 and later. Upload Configure-FortiVPN.ps1 and configure these execution settings:

Setting

Value

Reason

Run using logged-on credentials

No

Requires SYSTEM context for HKLM writes

Enforce script signature check

No

Unless you sign scripts internally

Run in 64-bit PowerShell host

Yes

Matches x64 FortiClient installation

Assign the script to the same device groups receiving the FortiClient application. The detection check in the script confirms FortiClient exists before writing registry values, handling any timing variations.

How Do You Verify the Deployment Worked?

On a target device, confirm FortiClient appears in the Start menu and the configured VPN connection displays in the client interface. This validates both the app and script deployed successfully.

Open Registry Editor and verify entries exist under:

reg
HKLM\SOFTWARE\Fortinet\FortiClient\Sslvpn\Tunnels\CompanyVPN

Attempt a VPN connection to validate authentication and network access. In the Intune admin center, check Devices > Monitor > Device install status for the FortiClient app. Review script execution results under Devices > Scripts.

When we tested this deployment across 50 devices, script failures typically indicated timing issues where the script ran before app installation completed. Adding a retry loop or increasing the FortiClient detection timeout resolves most cases.

Troubleshooting Common Deployment Issues

Most problems fall into a few categories. This matrix helps diagnose failures quickly.

Symptom

Likely Cause

Resolution

MSI not in cache folder

Installer completed or was closed

Restart extraction, do not click Install

App shows "Failed" in Intune

MSI corruption or size mismatch

Re-extract MSI, verify file size

Script exits with code 1

FortiClient not detected

Check app assignment, verify installation

VPN connection missing

Script failed or wrong registry path

Review Intune script logs, test manually

Authentication errors

Wrong server or port values

Verify captured registry values

For broader Intune troubleshooting, authentication loops in other Microsoft products often share root causes. The guide on fixing Outlook password prompts with Exchange Server covers credential and certificate issues that sometimes affect Intune-managed devices.

Frequently asked questions

Why can't I download the FortiClient MSI directly from Fortinet?+

Fortinet uses an online installer that downloads the MSI to a temporary cache folder. You must capture this file during installation before clicking Install or canceling the wizard.

Do I need Fortinet EMS Premium for this deployment method?+

No. This method uses native Intune LOB app deployment and PowerShell registry scripts, bypassing the need for Fortinet EMS Premium licensing entirely.

Can I configure different VPN settings for different departments?+

Yes. Create separate PowerShell scripts with unique server addresses and connection names, then assign each script to the appropriate Azure AD group in Intune.

What happens if FortiClient installs but the configuration script fails?+

Users see FortiClient without pre-configured VPN connections. Check Intune script logs and verify the registry path. The script exits with code 1 if FortiClient is not detected.

How do I keep FortiClient updated after initial deployment?+

Create a new LOB app with the updated MSI and configure supersedence rules. Intune detects older versions through the MSI product code and upgrades automatically.

#intune#forticlient#vpn-deployment#PowerShell#windows-admin

Related topics