Lithnet Access Manager
PricingRequest a trial or quoteDownloads
v3.0
v3.0
  • Home
  • How does Lithnet Access Manager help prevent lateral movement?
  • Access Manager Editions
  • Licensing
  • What's new in Access Manager v3
  • Change log
  • Installation
    • Getting started
    • System Requirements
    • Downloads
    • Upgrading from Access Manager v1
    • Upgrading from Access Manager v2
      • Considerations for migrating from Access Manager v2
    • Installing the Access Manager Server
      • Creating a service account for the Access Manager Service
      • SQL installation options
      • Installing the Access Manager Service
      • High availability options
        • Load balancing Access Manager
    • Installing the Access Manager Agent
      • Enabling agent support on the AMS server
      • Installing the Access Manager Agent on Windows
      • Installing the Access Manager Agent on Linux
      • Installing the Access Manager Agent on macOS
  • Configuration
    • Setting up Authentication
      • Setting up authentication with ADFS
      • Setting up authentication with Microsoft Entra ID
      • Setting up authentication with Okta
      • Setting up smart card authentication
      • Setting up integrated windows authentication
    • Deploying Features
      • Setting up RapidLAPS
      • LAPS
        • Setting up Microsoft LAPS for Active Directory
        • Setting up Microsoft LAPS for Entra
        • Setting up Lithnet LAPS
      • Just-in-time Authentication (JIT)
        • Setting up JIT for computers
        • Setting up JIT for roles
      • Setting up BitLocker access
        • Setting up access to BitLocker keys stored in Active Directory
        • Setting up BitLocker recovery key backup and access using the Access Manager Agent
    • Importing authorization rules
      • Import Microsoft LAPS permissions from Active Directory
      • Importing BitLocker permissions from Active Directory
      • Importing local administrator group membership from domain-joined Windows devices
      • Import mappings from a CSV file
      • Performing an offline discovery of local admins
  • Help and support
    • Frequently asked Questions
    • Troubleshooting
    • Quick start guides
      • Getting started with Windows LAPS and Lithnet Access Manager
      • Getting started with Windows LAPS for Active Directory
      • Getting started with Windows LAPS for Microsoft Entra
      • Getting started with RapidLAPS
    • Product lifecycle
    • Choosing between the Lithnet and Microsoft agent for LAPS
    • Support Articles
      • KB000001: The Access Manager Agent cannot connect and logs a token-validation-failed error
      • KB000002: Users retain their admin rights after their JIT period expires
      • KB000003: Configuring the Access Manager Agent to manage an account other than 'root' on Linux
      • KB000004: Creating a log file to troubleshoot installation issues with the Access Manager Service
      • KB000005: Access Manager stops working after applying the November 2022 Windows update
      • KB000006: Migrating the Access Manager Database
      • KB000007: Adding JIT groups via Group Policy doesn't work with NTLM Disabled
      • KB000008: AMS is unable to JIT into privileged groups such as Domain Admins
      • KB000009: Access Manager may return an out-of-date LAPS password, or no password at all
      • KB000010: The Access Manager agents fail to register on macOS 15 (Sequoia)
      • KB000011: Users report delays in obtaining just-in-time access via AD
      • KB000012: Troubleshooting Windows authentication in the Access Manager Web App
      • KB000013: Access Manager cannot be installed on Windows Server 2016 with TLS 1.0 disabled
    • Advanced help topics
      • Creating an Entra app registration or Access Manager
      • Setting up agent policies
      • Managing word lists
      • Password history retention
      • Ports and traffic flows
      • Internet access requirements
      • Access evaluation in Access Manager Service (AMS)
      • Recovering from a lost encryption certificate
      • Script-based authorization
      • Customized auditing with PowerShell notification channels
      • Variables available in audit notification channels
      • Setting up audit templates
      • Backup and Restore
      • Event ID reference
      • Group policy configuration
    • PowerShell reference
      • Add-AmsDeviceRegistrationKeyGroup
      • Add-AmsGroupMember
      • Add-AmsIdpClaimMapping
      • Clear-AmsIdpClaimMapping
      • Export-AmsServerDiagnostics
      • Get-AmsActiveDirectoryJitOptions
      • Get-AmsActiveDirectoryJitGroupCreationRule
      • Get-AmsComputerAuthorizationRule
      • Get-AmsDevice
      • Get-AmsDeviceRegistrationKey
      • Get-AmsFveRecoveryKey
      • Get-AmsGroup
      • Get-AmsGroupMembers
      • Get-AmsHostConfig
      • Get-AmsIdpClaimMapping
      • Get-AmsJitSchedulerJob
      • Get-AmsLocalAdminPassword
      • Get-AmsLocalAdminPasswordHistory
      • Get-AmsRoleAuthorizationRule
      • Get-AmsServiceConfig
      • New-AmsActiveDirectoryJitGroupCreationRule
      • New-AmsComputerAuthorizationRule
      • New-AmsDeviceRegistrationKey
      • New-AmsGroup
      • New-AmsRoleAuthorizationRule
      • Remove-AmsActiveDirectoryJitGroupCreationRule
      • Remove-AmsComputerAuthorizationRule
      • Remove-AmsDevice
      • Remove-AmsDeviceRegistrationKey
      • Remove-AmsDeviceRegistrationKeyGroup
      • Remove-AmsGroup
      • Remove-AmsGroupMember
      • Remove-AmsJitSchedulerJob
      • Remove-AmsRoleAuthorizationRule
      • Set-AmsActiveDirectoryJitGroupCreationRule
      • Set-AmsActiveDirectoryJitOptions
      • Set-AmsComputerAuthorizationRule
      • Set-AmsDevice
      • Set-AmsDeviceRegistrationKey
      • Set-AmsGroup
      • Set-AmsHostConfig
      • Set-AmsRoleAuthorizationRule
      • Set-AmsServiceConfig
    • Application help pages
      • Host configuration page
      • App Configuration
        • AMS License configuration page
        • Authentication configuration page
        • Email configuration page
        • Rate limit configuration page
        • IP Address detection configuration page
        • User interface configuration page
        • Auditing page
        • Security page
        • Database configuration page
      • Access Manager Agent
        • Access Manager Agent - Agent registration page
        • Agent Policies
          • Access Manager Agent - Windows polices page
          • Access Manager Agent - macOS polices page
          • Access Manager Agent - Linux polices page
          • Access Manager Agent - Legacy AMSv2 policies page
        • Access Manager Agent - Password settings page
        • Access Manager Agent - Devices page
        • Access Manager Agent - Groups page
      • Directory Configuration
        • Active Directory configuration page
          • Microsoft LAPS configuration page
          • Lithnet LAPS configuration page (Active Directory)
          • Just-in-time access configuration page
          • BitLocker configuration page
        • Microsoft Entra configuration page
      • Authorization Rules
        • Computer authorization rules page
        • Role authorization rules page
      • Effective access page
    • Getting Support
Powered by GitBook
On this page
  • Requirements
  • Installation procedure
  • 1. Prepare the SQL database
  • 2. Install Access Manager Service on the first node
  • 3. Install Access Manager Service on the remaining nodes
  • 4. Configure the IP address detection settings
  • 5. Configure the load balancer
  • 6. Configure the external host name
  • Load balancer probes/Health checks
  • Web app
  • API

Was this helpful?

  1. Installation
  2. Installing the Access Manager Server
  3. High availability options

Load balancing Access Manager

PreviousHigh availability optionsNextInstalling the Access Manager Agent

Last updated 7 months ago

Was this helpful?

High availability is an

Access Manager is fully supported in load-balanced environments. You can have a load-balanced web app farm, and a separate agent API farm, or a single farm for both.

Requirements

  • If the load balancer 'hides' the real client IP address (e.g. a 'application/layer 7' load balancer), it must support supplying the client IP address in the X-Forwarded-For header

  • The load balancer must support load balancing both HTTP and HTTPS. 'SSL offloading' is not supported.

  • The load balancer must be configured to use sticky sessions/session persistence

  • A Lithnet Access Manager enterprise edition license

  • At least one Windows Server 2012 R2 domain controller in the domain where AMS will be installed

  • The in the domain must be enabled

  • The same account must be used on all hosts in the farm. A group-managed service account is strongly recommended

  • Each host must be running the same version of the Access Manager Service at all times

  • An external SQL server, Azure SQL, or Amazon RDS SQL server. Using SQL express is not supported in a high availability scenario

Installation procedure

1. Prepare the SQL database

  • You cannot use the built-in SQL express database instance when installing AMS for high availability, so you'll need to create your database in advance. This can be on a SQL standard or enterprise edition standalone host, or cluster, or you can deploy the database in an Azure SQL or Amazon RDS instance. See the for more information.

2. Install Access Manager Service on the first node

  • Make sure you provide your Enterprise edition license key, save your configuration, and restart the service before moving onto install subsequent nodes

3. Install Access Manager Service on the remaining nodes

  • Repeat the installation process for the next node. Make sure to use the same service account, connection string, and TLS certificate on each server.

Settings on the Host configuration page will need to be configured per-node. All other settings are stored centrally in the database. Therefore, you will not need to provide the license key after installing it on the first node.

If you want to separate web access from agent API access, you can create multiple individual load balanced farms with different nodes in each. Select the appropriate services on the Host configuration page for the role that the specific node will play. You'll need to configure the farm host names for the API and web app as shown in step 6.

Otherwise, if the farm will service both API and web app users, then ensure that the External host name field matches the name of the load balanced endpoint that both the agents and web app users will connect to.

4. Configure the IP address detection settings

  • If the load balancer 'hides' the real client IP address (e.g. a 'application/layer 7' load balancer), you must configure the IP address detection settings in the app. If you are using a 'transport layer' load balancer, such as Microsoft NLB, you can skip this step.

  • From the App configuration/IP detection page, select the option to Resolve client IP address from X-Forwarded-For headers.

  • If you have multiple load balancers, web application firewalls, or reverse proxies in front of the application, adjust the Maximum allowed entries in header to reflect the number of trusted devices that will be contributing to the X-Forwarded-For header value. For example, if your AMS server sits behind a load balancer farm, which sits behind a WAF farm, then enter 2 for this value.

  • Provide the IP address, or IP network range that the load balancer appliance (and other WAFs or proxies) sits in. This allows AMS to accurately detect which IP address belongs to the client.

  • Test that the configuration is working correctly, by making an access request via the web app. In audit entry that appears in the event log, you should see the correct client IP address, and not the IP address of the load balancer.

5. Configure the load balancer

  • Configure the load balancer to point to the nodes of the farm.

  • If your load balancer provides customizable probes or health checks, see the 'Load balancer probes/Heath check` section below.

  • Configure session persistence to ensure client communications don't flip between server nodes

6. Configure the external host name

If you are deploying separate farms for the web app and API, you'll need to configure farm-wide external host names for each instance.

Using PowerShell, configure the host names that agents and users will be using for the API and web app respectively

Set-AmsServiceConfig -FarmApiHostName "api.mycompany.com" -FarmWebAppHostName "app.mycompany.com"

This only needs to be configured on one node, but all nodes need to be restarted after this setting change.

Load balancer probes/Health checks

Web app

If you are load balancing the web app, the load balancer can be configured to make a HTTP GET call to the /health-check endpoint to determine host availability. A HTTP 200 OK response indicates the service is healthy. Any other response should be treated as a failure. Health check requests must be performed over HTTPS.

API

If you are load balancing the agent API, you can make a HTTP GET call to the api/v3.0/health-check endpoint to determine host availability. A HTTP 200 OK response indicates the service is healthy. Any other response should be treated as a failure. Health check requests must be performed over HTTPS.

On the first node, follow the steps in the for configuring AMS features as appropriate for your environment.

installation guide
Enterprise edition feature
KDS root key
SQL installation guide