Tutorial: Create OpenVPN Connect Bundled Client Installers Using the Web API
Overview
This tutorial shows how to create OpenVPN Connect bundled installers using the Access Server Web API.
A bundled installer combines the OpenVPN Connect application with a preconfigured connection profile, allowing users to install the client and import the profile in a single step.
You can generate bundled installers for:
Windows (
.msi)macOS (
.dmg)
Prerequisites
Access Server 3.1.0 or newer.
Root privileges on your Access Server's console.
(Optional) A remote machine for running API calls.
Step 1: Generate a bundled installer
Connect to the console and get root privileges.
Run one of the following commands, depending on the installer and profile types you want to generate.
User-locked profile
Windows installer (.msi)
sacli --method POST --auth_token_user="<USER_NAME>" --url 'api/installer-url' --value '{"installer_type": "win_v3", "profile_type": "userlogin", "tls_crypt_v2": true}' apicallmacOS installer (.dmg)
sacli --method POST --auth_token_user="<USER_NAME>" --url 'api/installer-url' --value '{"installer_type": "mac_v3", "profile_type": "userlogin", "tls_crypt_v2": true}' apicall
Auto-login profile
Windows installer (.msi)
sacli --method POST --auth_token_user="<USER_NAME>" --url 'api/installer-url' --value '{"installer_type": "win_v3", "profile_type": "autologin", "tls_crypt_v2": true}' apicallmacOS installer (.dmg)
sacli --method POST --auth_token_user="<USER_NAME>" --url 'api/installer-url' --value '{"installer_type": "mac_v3", "profile_type": "autologin", "tls_crypt_v2": true}' apicall
Server-locked profile
Windows installer (.msi)
sacli --method POST --auth_token_user="<USER_NAME>" --url 'api/installer-url' --value '{"installer_type": "win_v3", "profile_type": "generic", "tls_crypt_v2": true}' apicallmacOS installer (.dmg)
sacli --method POST --auth_token_user="<USER_NAME>" --url 'api/installer-url' --value '{"installer_type": "mac_v3", "profile_type": "generic", "tls_crypt_v2": true}' apicall
Generic ePKI profile
Windows installer (.msi)
sacli --method POST --auth_token_user="<USER_NAME>" --url 'api/installer-url' --value '{"installer_type": "win_v3", "profile_type": "epki-generic", "tls_crypt_v2": true}' apicallmacOS installer (.dmg)
sacli --method POST --auth_token_user="<USER_NAME>" --url 'api/installer-url' --value '{"installer_type": "mac_v3", "profile_type": "epki-generic", "tls_crypt_v2": true}' apicall
Auto-login ePKI profile
Windows installer (.msi)
sacli --method POST --auth_token_user="<USER_NAME>" --url 'api/installer-url' --value '{"installer_type": "win_v3", "profile_type": "epki-autologin", "tls_crypt_v2": true}' apicallmacOS installer (.dmg)
sacli --method POST --auth_token_user="<USER_NAME>" --url 'api/installer-url' --value '{"installer_type": "mac_v3", "profile_type": "epki-autologin", "tls_crypt_v2": true}' apicall
Result
The API returns a temporary download URL for the bundled installer.
Example output:
"https://192.0.2.2/rest/GetInstallerViaToken?installer_type=win_v3&token=kF2FULkaNrMCJxQRdbzLGOjemMQZhSRq&tls-cryptv2=True"Open the generated URL in a web browser, or use a download tool such as curl or wget to retrieve the installer.