Live Demo: 100% Patching Coverage in Just 5 Minutes

This Wednesday | 9AM PDT /11 AM EDT | 11 AM CEST / 10 AM BST

Getting Started

Endpoints

Patch Management

Vulnerability Management

Software Deployment & IT Assets

Automation & Remote Desktop

Real-Time Reports & Alerts

Account Access & Management

SSO Authentication

Security Concerns

Need Help?

Action1 5 Documentation 5 Working via Proxy

Working via Proxy

NOTE: Configuration described in this section applies to forward proxy server only (that is, a proxy operating as an intermediary between a client and internet servers on the client’s behalf). Action1 agent does not work with other proxy types.

Step 1: Configure registry settings on the endpoint

For Action1 to operate correctly via a proxy server, you need to configure proxy settings on the Action1 agent side using the registry.

On the managed endpoints, configure the registry settings for [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Action1] as shown in the table below.

IMPORTANT! These settings are mandatory. Their values are case-sensitive and cannot be empty.

Name

agent.use.proxy
agent.proxy.hostname
agent.proxy.port
agent.proxy.username
agent.proxy.password

Value

yes
ip_address
dword:port
%user%
%password%

Description

Requires a string value.
IP address of the proxy server.
Requires a string value.
Port set in your proxy configuration for incoming connections, for example, dword:00000c38
Requires a DWORD value.
Username configured in your proxy for authentication.
Password configured in your proxy for authentication.

Registry (.REG) file example

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Action1]
      agent.use.proxy=yes
      agent.proxy.hostname=192.168.X.X
      agent.proxy.port=dword:00000c38
      agent.proxy.username=korben
      agent.proxy.password=dallas

When operating, the agent will read these proxy settings from the registry.

Step 2: Prepare for app deployment and patching

To install and update 3rd party apps with Action1 agent, ensure that each managed endpoint can successfully resolve the domain names of the Action1 Content Delivery Network (CDN) servers, which include the following hosts:

  1. us-cdn.action1.com
  2. eu-cdn.action1.com
  3. au-cdn.action1.com
  4. us-cdn-action1-com.b-cdn.net
  5. eu-cdn-action1-com.b-cdn.net
  6. au-cdn-action1-com.b-cdn.net

TIP: You can, for example, run nslookup queries on the endpoints.

Step 3: Prepare for Windows Updates installation

NOTE: If your Windows Update agent does not use a proxy server, no additional configuration is required.

If your Windows Update agent operates via proxy, you should prepare the endpoints for Windows Updates installation:

  1. Configure the registry settings as explained in Step 1 above.
  2. Propagate them to the system-level proxy. For that, run a script on your managed endpoints using Action1 automation, as described in this section. The script is provided below; it should be run once.

PowerShell script to use in the Run Script wizard

When configuring the automation, go through the Run Script wizard and enter the following PowerShell script:

 

function Get-RegistryValue {
    param (
        [Parameter(Mandatory)]
        [string]$RegistryPath,
        [Parameter(Mandatory)]
        [string]$RegistryValue
    )
    try {
        if (Test-Path -Path $RegistryPath -PathType Container) {
            $key = Get-Item -Path $RegistryPath -ErrorAction Stop
            $value = $key.GetValue($RegistryValue, $null)
            return $value
        }
    }
    catch {}
}

 

try { $arch = ((Get-CimInstance -ClassName Win32_OperatingSystem).OSArchitecture).substring(0, 2) }
catch { switch ([System.Environment]::Is64BitOperatingSystem) { $true { $arch = '64' } $false { $arch = '32' } } }
switch ($arch) {
    '32' { $registryPath = 'HKLM:\SOFTWARE\Action1' }
    '64' { $registryPath = 'HKLM:\SOFTWARE\WOW6432Node\Action1' }
}
$proxy = Get-RegistryValue -RegistryPath $registryPath -RegistryValue "agent.use.proxy"
$hostname = Get-RegistryValue -RegistryPath $registryPath -RegistryValue "agent.proxy.hostname"
$port = Get-RegistryValue -RegistryPath $registryPath -RegistryValue "agent.proxy.port"
$username = Get-RegistryValue -RegistryPath $registryPath -RegistryValue "agent.proxy.username"
$password = Get-RegistryValue -RegistryPath $registryPath -RegistryValue "agent.proxy.password"
if ($null -eq $proxy -or $proxy.ToLower() -ne 'yes') {
    $Host.UI.WriteLine("The proxy is not configured.")
    return
}
New-ItemProperty -Path $registryPath -Name 'agent.use.proxy' -Value 'yes' -PropertyType String -Force
if (($null -eq $port) -or ([string]::IsNullOrEmpty($hostname) -or $port -eq 0)) {
    $Host.UI.WriteLine("The proxy host name or port is not specified.")
    return
}
$argument = "winhttp set proxy $hostname" + ":" + [string]$port
Start-Process -FilePath netsh -ArgumentList $argument -NoNewWindow -Wait

 

 

NOTE: Make sure the Action1 agent is connected to Action1 Cloud, that is, the corresponding managed endpoint is shown with Connected status in the Endpoints view.

The script will do the following:

  • Check the system architecture (32-bit vs 64-bit).
  • Read specific proxy configuration values from the registry.
  • Configure the system proxy using netsh if proxy settings are enabled.
  • Save proxy authentication information using cmdkey.