A lightweight, multi-platform CrowdStrike Falcon sensor installer written in Golang
API clients are granted one or more API scopes. Scopes allow access to specific CrowdStrike APIs and describe the actions that an API client can perform.
Ensure the following API scopes are enabled:
Important
- Sensor Download [read]
- (optional) Installation Tokens [read]
This scope allows the installer to retrieve a provisioning token from the API, but only if installation tokens are required in your environment.
- (optional) Sensor update policies [read]
Use this scope when using the
--sensor-update-policyflag or configuring theFALCON_SENSOR_UPDATE_POLICYenvironment variable. - (Optional) Sensor update policies [write]
Required if you want to automatically retrieve a maintenance token from the API. Not needed when using the
--maintenance-tokenflag or configuring theFALCON_MAINTENANCE_TOKENenvironment variable. Maintenance tokens are required to uninstall sensors that have uninstall protection enabled.
Usage:
falcon-installer [flags]
Flags:
--config string A falcon-installer configuration file
--enable-file-logging Output logs to file
-h, --help Print usage information
--quiet Suppress all log output
--tmpdir string Temporary directory for downloading files (default "/tmp/falcon")
--verbose Enable verbose output
-v, --version Print version information
Falcon API Flags:
--access-token string Access token for accessing CrowdStrike Falcon Platform
--client-id string Client ID for accessing CrowdStrike Falcon Platform
--client-secret string Client Secret for accessing CrowdStrike Falcon Platform
--cloud string Falcon cloud abbreviation (e.g. us-1, us-2, eu-1, us-gov-1) (default "autodiscover")
--member-cid string Member CID for MSSP (for cases when OAuth2 authenticates multiple CIDs)
--sensor-update-policy string The sensor update policy name to use for sensor installation (default "platform_default")
--sensor-version string The sensor version to update or install (overrides sensor-update-policy)
--user-agent string User agent string to append to use for API requests
Falcon Sensor Flags:
--cid string Falcon Customer ID. Optional when OAuth2 credentials are provided
--disable-proxy Disable the sensor proxy settings
--maintenance-token string Maintenance token for uninstalling the sensor or configuring sensor settings
--provisioning-token string The provisioning token to use for installing the sensor. If not provided, the API will attempt to retrieve a token
--proxy-host string The proxy host for the sensor to use when communicating with CrowdStrike
--proxy-port string The proxy port for the sensor to use when communicating with CrowdStrike
--tags string A comma separated list of tags for sensor grouping
Falcon Uninstall Flags:
--uninstall Uninstall the Falcon sensor
Falcon Update Flags:
--update Update the Falcon sensor for when sensor update policies are not in use
Vault Flags:
--aws-secret-name string AWS Secrets Manager Secret Name
--aws-secret-region string AWS Secrets Manager Region
--azure-vault-name string Azure Key Vault Name
--gcp-project-id string GCP Project ID for Secret Manager
--oci-compartment-id string OCI Compartment ID
--oci-vault-name string OCI Vault NameLinux Installation Flags:
--configure-image Use when installing the sensor in an image
--gpg-key string Falcon GPG key to importMacOS Installation Flags:
--configure-image Use when installing the sensor in an imageWindows Installation Flags:
--disable-provisioning-wait Disabling allows the Windows installer more provisioning time
--disable-start Prevent the sensor from starting after installation until a reboot occurs
--pac-url string Configure a proxy connection using the URL of a PAC file when communicating with CrowdStrike
--provisioning-wait-time uint The number of milliseconds to wait for the sensor to provision (default 1200000)
--restart Allow the system to restart after sensor installation if necessary
--vdi Enable virtual desktop infrastructure mode- Download a binary release for your targeted operating system of the Falcon Installer from the official releases page.
- Extract the archive
tar -xvzf <linux-archive>.tar.gzfor Linux andtar -xf <windows-archive>.zipfor Windows. - Run the installer setting the CLI flags or environment variables as necessary.
You can build the binary for either Linux or Windows operating systems from source from within the root of the project directory.
go build -o falcon-installer cmd/main.gogo build -o falcon-installer.exe cmd/main.goOnce the binary has been built, you can then manually copy to a location in the local $PATH if desired.
The Falcon Installer provides several command-line options to customize the installation process. Below are some common usage examples:
falcon-installer --client-id YOUR_CLIENT_ID --client-secret YOUR_CLIENT_SECRETfalcon-installer --client-id YOUR_CLIENT_ID --client-secret YOUR_CLIENT_SECRET --cloud us-1 --sensor-update-policy enterprise --tags "tag1,tag2,tag3"falcon-installer --client-id PARENT_CLIENT_ID --client-secret PARENT_CLIENT_SECRET --member-cid MEMBER_CIDfalcon-installer --client-id YOUR_CLIENT_ID --client-secret YOUR_CLIENT_SECRET --uninstallfalcon-installer --client-id YOUR_CLIENT_ID --client-secret YOUR_CLIENT_SECRET --update --sensor-version 1.42.1234You can also use a configuration file to specify installation options. The installer supports YAML, JSON, INI, TOML, and HCL formats. See the examples directory for sample configuration files.
falcon-installer --config-file /path/to/config/fileThe Falcon Installer supports retrieving credentials and configuration from cloud vaults, eliminating the need to store sensitive API credentials in configuration files or environment variables.
AWS Secrets Manager integration uses the AWS SDK's default credential chain, which supports multiple authentication methods including IAM roles, environment variables, and AWS CLI credentials.
Prerequisites:
- AWS Secrets Manager secret containing key-value pairs
- Authentication configured (IAM role, environment variables, or AWS CLI)
- Secret contains Falcon configuration as JSON (e.g.
{"FALCON_CLIENT_ID": "...", "falcon-client-secret": "..."})
Usage:
# Using AWS Secrets Manager
falcon-installer --aws-secret-name "falcon-credentials" --aws-secret-region "us-east-1"Azure Key Vault integration uses Azure's DefaultAzureCredential authentication, which supports multiple authentication methods including managed identity, Azure CLI, and service principal authentication.
Prerequisites:
- Azure Key Vault with appropriate access permissions
- Authentication configured (managed identity, Azure CLI, or service principal)
- Secrets stored with the
falcon-orFALCON-prefix (e.g.FALCON-CLIENT-ID,falcon-client-secret, etc.)
Usage:
# Using Azure Key Vault
falcon-installer --azure-vault-name "my-keyvault"GCP Secret Manager integration uses Google's Application Default Credentials (ADC), which supports multiple authentication methods including service accounts, workload identity, and gcloud CLI credentials.
Prerequisites:
- GCP project with Secret Manager API enabled
- Authentication configured (service account, workload identity, or gcloud CLI)
- Secrets stored with the
falcon_orFALCON_prefix (e.g.falcon_client_id,FALCON_CLIENT_SECRET, etc.)
Usage:
# Using GCP Secret Manager
falcon-installer --gcp-project-id "my-project-id"OCI Vault integration uses Instance Principal authentication, designed for use within OCI compute instances.
Prerequisites:
- OCI Vault in a specified compartment
- Instance Principal authentication configured
- Compute instance with appropriate IAM policies
- Secrets stored with the
falcon_orFALCON_prefix (e.g.FALCON_CLIENT_ID,falcon_client_secret, etc.)
Usage:
# Using OCI Vault
falcon-installer --oci-vault-name "my-vault" --oci-compartment-id "ocid1.compartment.oc1..example"We welcome contributions that improve the installation and distribution processes of the Falcon Sensor. Please ensure that your contributions align with our coding standards and pass all CI/CD checks.
Falcon Installer is a community-driven, open source project designed to streamline the deployment and use of the CrowdStrike Falcon sensor. While not a formal CrowdStrike product, Falcon Installer is maintained by CrowdStrike and supported in partnership with the open source developer community.
For additional support, please see the SUPPORT.md file.
See LICENSE