LevelBlue Agent Installation on macOS Hosts

Role Availability Read-Only Investigator Analyst Manager

To install the LevelBlue Agent on Apple macOS, you must run a script accessible from your USM Anywhere environment. When you run the installation on a macOS host system, the script downloads a .pkg file directly from USM Anywhere, and the agent automatically registers with your USM Anywhere environment. The installation process also configures a default set of paths to automatically support file integrity monitoring (FIM).

You can generate a script that is specific to a selected asset An IP-addressable host, including but not limited to network devices, virtual servers, and physical servers. in your USM Anywhere environment or generate a bulk deployment script that you can use to install the agent on multiple macOS host systems.

Note: When you first deploy LevelBlue Agents on your host systems, you should install just a few to evaluate the events collected by the agent and the impact to your data consumption.

While there is no hard limit on the number of agents you can deploy, larger numbers of agents can eventually begin to impact the performance of USM Anywhere by transmitting more data than your pipeline can accommodate, causing latency in receiving and processing information.

Similarly, if your host system is consistently busy, such as a domain controller or an active directory (AD) server, deploying an agent on it may slow down its operations.

Note: LevelBlue Agents do not currently support the use of a proxy server.


Before installing the agent on a macOS host system, ensure that these prerequisites are met:

Warning: The agent for macOS is not compatible with assets that have Apple Silicon M-Series CPUs. Rosetta needs to be installed for successful agent installation on Apple Silicon M-Series assets. This can be done by running the command softwareupdate --install-rosetta --agree-to-license.

Note: LevelBlue recommends that your host system has a minimum of 4 GB memory and 2 CPU cores.

You must configure your firewall to support ongoing event transmission to USM Anywhere.

Standard Firewall Setup

Your firewall needs to be configured to allow ongoing outbound connectivity from the host system using the HTTPS application protocol over port 443 to these USM Anywhere endpoints:

  • <AWS region>-agent-entrypoint.alienvault.cloud (for example, eu-west-1-agent-entrypoint.alienvault.cloud)

    See the LevelBlue Agent Endpoints by AWS Regions table for region-specific IP ranges.

  • agent-packageserver.alienvault.cloud
  • api.agent.alienvault.cloud

  • prod-api.agent.alienvault.cloud

  • agent-packageserver.alienvault.cloud/repo/osx/alienvault-agent-<version>.pkg

Important: The endpoints listed above are inside the range.

GovCloud Setup

LevelBlue Threat Detection and Response for Government (LevelBlue TDR for Gov) customers need to configure ongoing outbound connectivity from the host system using the HTTPS application protocol over port 443 to these USM Anywhere endpoints:

  • api.agent.gov.alienvault.us
  • prod-api.agent.gov.alienvault.us
  • agent-packageserver.gov.alienvault.us/repo/osx/alienvault-agent-<version>.pkg

  • us-gov-west-1-agent-entrypoint.gov.alienvault.us

Important: These endpoints are inside the range.

For endpoints that rely on the Amazon Web Services (AWS) region, the endpoint to use depends on the AWS region where your USM Anywhere instance is deployed. See the following table for details. If you are unsure, consult the administrator who set up your USM Anywhere or LevelBlue TDR for Gov domain.

Note: LevelBlue owns the IP ranges listed in the following table. The IP ranges route agent traffic, and connectivity can move within the ranges according to the region.

LevelBlue Agent Endpoints by AWS Regions
Region Endpoint Reserved Static IP Address Ranges
Asia Pacific (Tokyo)

Asia Pacific (Mumbai)

Asia Pacific (Sydney)

Canada (Central)

EU (Frankfurt)

EU (Ireland)

EU (London)

South America (São Paulo)

US East (N. Virginia)

US West (Oregon)

AWS GovCloud (US-West)


LevelBlue Agent Installation on a Single Host System

For a macOS host system that is already identified as an asset in your USM Anywhere environment, you can install the agent using a generated Terminal script to run on that macOS host system. You can generate this script for the specific asset from the Agents page (Data Sources > Agents) or from the Asset Details page for the asset.

Note: If the host system is not in your asset inventory through discovery by a deployed USM Anywhere Sensor, you can manually add the asset using its IP address or fully qualified domain name (FQDN). See Adding Assets for more information.

Alternatively, you can use the script for multiple assets and then use the information provided by the unassociated agent to create a new asset.

Important: Some antivirus software may block the osqueryd service and prevent it from starting. If your service is not starting because of antivirus software, you need to add the /usr/local/bin/ path to your antivirus exclusions policy.

LevelBlue Agent Installation on Multiple Host Systems

If you have multiple macOS host systems that are not currently in your USM Anywhere asset inventory or you don't want to generate a separate script for each asset, you can install the agent using a generated Terminal script on any macOS host system that meets the prerequisite requirements and supports the package type for the script. You can generate this script from the Agents page (Data Sources > Agents).

After you use the script to deploy the agent on your macOS host systems, you can view the list of unassigned agents and then associate each agent with an existing asset or add a new asset using the information provided by the agent.

To generate an agent deployment script for multiple host systems

  1. In USM Anywhere, go to Data Sources > Agents.
  2. Click macOS Deployment Script.

    Ensure that the Multiple Assets tab is selected in the dialog box.

  3. Select the Package Manager type for the macOS distribution.

  4. Click Copy to Clipboard.

    Click Copy to clipboard to copy the generated bash script

    Use a remote access client to connect and log in to the macOS host system.
  5. Open the Terminal and enter a sudo command containing the script you copied to the clipboard.

Note: If you use a multiple asset installation script to execute bulk deployment across multiple host systems, the script will not have the unique asset ID. In this case, USM Anywhere attempts to associate the LevelBlue Agent with an existing asset if there is enough information and it can make a definitive match. When a deployed agent does not have an associated asset, you must manually make this association in USM Anywhere to enable queries and log collection for the host system. See LevelBlue Agent and Asset Associations for more information.

Installation Error Resolution

If the LevelBlue Agent is installed using the single asset deployment script, its host identifier UUID and asset association is stored in the osquery.flags file in your system. Asset changes, specifically changes that result in an asset being removed and added back to USM Anywhere, can cause issues with the way the agent associates with the asset if you need to reinstall the agent for any reason.

If you encounter an error during the installation of an agent, you need to remove the osquery directory before you reinstall the agent. To do this, delete the /var/osquery folder.

Additional LevelBlue Agent Commands

The LevelBlue Agent also comes with a bash script to control other features of the agent, such as starting, stopping, restarting, updating, and uninstalling the agent. See The LevelBlue Agent Script and Agent Updates for more information on the agent command script, including the file location and a list of the commands.