From 59482c8626dd31cf981ceb60c99f8983eba26f7e Mon Sep 17 00:00:00 2001
From: Ram Kishor <100423546+Starepinjore@users.noreply.github.com>
Date: Fri, 29 Aug 2025 11:54:27 -0400
Subject: [PATCH 1/5] Deploy CrowdStrike Windows Sensor
Custom Fields:
- DeployCrowdStrikeWindowsSensor
- ExcludeCrowdStrikeInstallDevice
- ExcludeCrowdStrikeInstallSite
- CrowdStrikeCustomerId
- CrordStrikeDownloadUrl
Device Group:
- CrowdStrike Windows Sensor Deployment
Task:
- Install CrowdStrike Windows Sensor
Monitor:
- CrowdStrike Windows Sensor Deployment
Solution:
- Deploy CrowdStrike Windows Sensor
---
.../custom-fields/crowdstrike-customerid.md | 35 +++
.../custom-fields/crowdstrike-download-url.md | 35 +++
.../deploy-crowdstrike-windows-sensor.md | 33 ++
.../exclude-crowdstrike-install-device.md | 34 +++
.../exclude-crowdstrike-install-site.md | 34 +++
.../crowdstrike-windows-sensor-deployment.md | 67 ++++
.../crowdstrike-windows-sensor-deployment.md | 72 +++++
.../install-crowdstrike-windows-sensor.md | 285 ++++++++++++++++++
.../deploy-crowdstrike-windows-sensor.md | 93 ++++++
.../image1.webp | Bin 0 -> 7876 bytes
.../image1.webp | Bin 0 -> 14604 bytes
.../image2.webp | Bin 0 -> 44400 bytes
.../image3.webp | Bin 0 -> 41468 bytes
.../image1.webp | Bin 0 -> 24030 bytes
.../image2.webp | Bin 0 -> 15716 bytes
.../image3.webp | Bin 0 -> 11382 bytes
.../image4.webp | Bin 0 -> 4172 bytes
.../image5.webp | Bin 0 -> 7152 bytes
.../image6.webp | Bin 0 -> 7080 bytes
.../image7.webp | Bin 0 -> 23054 bytes
.../image8.webp | Bin 0 -> 2820 bytes
.../image9.webp | Bin 0 -> 55972 bytes
.../image1.webp | Bin 0 -> 8886 bytes
.../image1.webp | Bin 0 -> 9168 bytes
.../image1.webp | Bin 0 -> 9480 bytes
.../image1.webp | Bin 0 -> 10836 bytes
.../image2.webp | Bin 0 -> 12086 bytes
.../image3.webp | Bin 0 -> 6104 bytes
.../image4.webp | Bin 0 -> 2766 bytes
.../image5.webp | Bin 0 -> 2788 bytes
.../image6.webp | Bin 0 -> 28236 bytes
.../image1.webp | Bin 0 -> 17716 bytes
32 files changed, 688 insertions(+)
create mode 100644 docs/cwrmm/custom-fields/crowdstrike-customerid.md
create mode 100644 docs/cwrmm/custom-fields/crowdstrike-download-url.md
create mode 100644 docs/cwrmm/custom-fields/deploy-crowdstrike-windows-sensor.md
create mode 100644 docs/cwrmm/custom-fields/exclude-crowdstrike-install-device.md
create mode 100644 docs/cwrmm/custom-fields/exclude-crowdstrike-install-site.md
create mode 100644 docs/cwrmm/groups/crowdstrike-windows-sensor-deployment.md
create mode 100644 docs/cwrmm/monitors/crowdstrike-windows-sensor-deployment.md
create mode 100644 docs/cwrmm/tasks/install-crowdstrike-windows-sensor.md
create mode 100644 docs/solutions/deploy-crowdstrike-windows-sensor.md
create mode 100644 static/img/docs/28f5fdfd-c11e-4643-ae07-62d6f7007805/image1.webp
create mode 100644 static/img/docs/406c6d18-a948-45f6-897b-b1d0174e21de/image1.webp
create mode 100644 static/img/docs/406c6d18-a948-45f6-897b-b1d0174e21de/image2.webp
create mode 100644 static/img/docs/406c6d18-a948-45f6-897b-b1d0174e21de/image3.webp
create mode 100644 static/img/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae/image1.webp
create mode 100644 static/img/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae/image2.webp
create mode 100644 static/img/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae/image3.webp
create mode 100644 static/img/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae/image4.webp
create mode 100644 static/img/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae/image5.webp
create mode 100644 static/img/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae/image6.webp
create mode 100644 static/img/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae/image7.webp
create mode 100644 static/img/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae/image8.webp
create mode 100644 static/img/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae/image9.webp
create mode 100644 static/img/docs/8d9498e0-4392-471e-93da-b546e0934b89/image1.webp
create mode 100644 static/img/docs/ae84e56d-df98-42da-b293-7412c01d7db7/image1.webp
create mode 100644 static/img/docs/cde64225-1c67-4483-9c39-580b315dd30a/image1.webp
create mode 100644 static/img/docs/ce1b87d4-a1d4-4f37-a03d-3b08c4565086/image1.webp
create mode 100644 static/img/docs/ce1b87d4-a1d4-4f37-a03d-3b08c4565086/image2.webp
create mode 100644 static/img/docs/ce1b87d4-a1d4-4f37-a03d-3b08c4565086/image3.webp
create mode 100644 static/img/docs/ce1b87d4-a1d4-4f37-a03d-3b08c4565086/image4.webp
create mode 100644 static/img/docs/ce1b87d4-a1d4-4f37-a03d-3b08c4565086/image5.webp
create mode 100644 static/img/docs/ce1b87d4-a1d4-4f37-a03d-3b08c4565086/image6.webp
create mode 100644 static/img/docs/ffe13fcc-700f-41ea-9fdf-20ea4d253326/image1.webp
diff --git a/docs/cwrmm/custom-fields/crowdstrike-customerid.md b/docs/cwrmm/custom-fields/crowdstrike-customerid.md
new file mode 100644
index 000000000..5b8531ebc
--- /dev/null
+++ b/docs/cwrmm/custom-fields/crowdstrike-customerid.md
@@ -0,0 +1,35 @@
+---
+id: '28f5fdfd-c11e-4643-ae07-62d6f7007805'
+slug: /28f5fdfd-c11e-4643-ae07-62d6f7007805
+title: 'CrowdStrikeCustomerId'
+title_meta: 'CrowdStrikeCustomerId'
+keywords: ['crowdstrike', 'crowdstrike-windows-sensor', 'deploy-crowdstrike', 'windows-sensor', 'exclusion']
+description: 'Set CrowdStrike Customer ID for the company.'
+tags: ['application', 'installation', 'security', 'antivirus']
+draft: false
+unlisted: false
+---
+
+## Summary
+
+Set CrowdStrike Customer ID for the company.
+
+## Dependencies
+
+- [DeployCrowdStrikeWindowsSensor](/docs/ffe13fcc-700f-41ea-9fdf-20ea4d253326)
+- [CrordStrikeDownloadUrl](/docs/ae84e56d-df98-42da-b293-7412c01d7db7)
+- [Solution: Deploy CrowdStrike Windows Sensor](/docs/dec6391a-c159-4b45-8c3a-9df4d88dd1c5)
+
+## Custom Field Setup Location
+
+**Custom Fields Path:** `SETTINGS` ➞ `Custom Fields`
+
+## Details
+
+| Name | Level | Type | Default Value | Editable | Description |
+| ---- | ----- | ---- | ------------- | -------- | ----------- |
+| CrowdStrikeCustomerId | COMPANY | Text Box | NA | Yes | Set CrowdStrike Customer ID for the company. |
+
+## Completed Custom Field
+
+
diff --git a/docs/cwrmm/custom-fields/crowdstrike-download-url.md b/docs/cwrmm/custom-fields/crowdstrike-download-url.md
new file mode 100644
index 000000000..97bd5d0c5
--- /dev/null
+++ b/docs/cwrmm/custom-fields/crowdstrike-download-url.md
@@ -0,0 +1,35 @@
+---
+id: 'ae84e56d-df98-42da-b293-7412c01d7db7'
+slug: /ae84e56d-df98-42da-b293-7412c01d7db7
+title: 'CrordStrikeDownloadUrl'
+title_meta: 'CrordStrikeDownloadUrl'
+keywords: ['crowdstrike', 'crowdstrike-windows-sensor', 'deploy-crowdstrike', 'windows-sensor', 'exclusion']
+description: 'Set download Url for downloading the installer for CrowdStrike Windows Sensor.'
+tags: ['application', 'installation', 'security', 'antivirus']
+draft: false
+unlisted: false
+---
+
+## Summary
+
+Set download Url for downloading the installer for CrowdStrike Windows Sensor.
+
+## Dependencies
+
+- [DeployCrowdStrikeWindowsSensor](/docs/ffe13fcc-700f-41ea-9fdf-20ea4d253326)
+- [CrowdStrikeCustomerId](/docs/28f5fdfd-c11e-4643-ae07-62d6f7007805)
+- [Solution: Deploy CrowdStrike Windows Sensor](/docs/dec6391a-c159-4b45-8c3a-9df4d88dd1c5)
+
+## Custom Field Setup Location
+
+**Custom Fields Path:** `SETTINGS` ➞ `Custom Fields`
+
+## Details
+
+| Name | Level | Type | Default Value | Editable | Description |
+| ---- | ----- | ---- | ------------- | -------- | ----------- |
+| CrowdStrikeCustomerId | COMPANY | Text Box | NA | Yes | Set download Url for downloading the installer for CrowdStrike Windows Sensor. |
+
+## Completed Custom Field
+
+
diff --git a/docs/cwrmm/custom-fields/deploy-crowdstrike-windows-sensor.md b/docs/cwrmm/custom-fields/deploy-crowdstrike-windows-sensor.md
new file mode 100644
index 000000000..3ec483a74
--- /dev/null
+++ b/docs/cwrmm/custom-fields/deploy-crowdstrike-windows-sensor.md
@@ -0,0 +1,33 @@
+---
+id: 'ffe13fcc-700f-41ea-9fdf-20ea4d253326'
+slug: /ffe13fcc-700f-41ea-9fdf-20ea4d253326
+title: 'DeployCrowdStrikeWindowsSensor'
+title_meta: 'DeployCrowdStrikeWindowsSensor'
+keywords: ['crowdstrike', 'crowdstrike-windows-sensor', 'deploy-crowdstrike', 'windows-sensor']
+description: 'Select OS to enable auto-deployment of CrowdStrike Windows Sensor.'
+tags: ['application', 'installation', 'security', 'antivirus']
+draft: false
+unlisted: false
+---
+
+## Summary
+
+Select OS to enable auto-deployment of CrowdStrike Windows Sensor. However, the [Install CrowdStrike Windows Sensor](/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae) task can still be run manually, independent of this field.
+
+## Dependencies
+
+- [Solution: Deploy CrowdStrike Windows Sensor](/docs/dec6391a-c159-4b45-8c3a-9df4d88dd1c5)
+
+## Custom Field Setup Location
+
+**Custom Fields Path:** `SETTINGS` ➞ `Custom Fields`
+
+## Details
+
+| Name | Level | Type | Options | Default Value | Editable | Description |
+| ---- | ----- | ---- | ------- | ------------- | -------- | ----------- |
+| DeployCrowdStrikeWindowsSensor | COMPANY | Dropdown |
- Disabled
- Windows Workstation
- Windows Server
- Windows Workstation and Windows Server
| | Yes | Select OS to enable auto-deployment of CrowdStrike Windows Sensor. |
+
+## Completed Custom Field
+
+
diff --git a/docs/cwrmm/custom-fields/exclude-crowdstrike-install-device.md b/docs/cwrmm/custom-fields/exclude-crowdstrike-install-device.md
new file mode 100644
index 000000000..ba832af24
--- /dev/null
+++ b/docs/cwrmm/custom-fields/exclude-crowdstrike-install-device.md
@@ -0,0 +1,34 @@
+---
+id: 'cde64225-1c67-4483-9c39-580b315dd30a'
+slug: /cde64225-1c67-4483-9c39-580b315dd30a
+title: 'ExcludeCrowdStrikeInstallDevice'
+title_meta: 'ExcludeCrowdStrikeInstallDevice'
+keywords: ['crowdstrike', 'crowdstrike-windows-sensor', 'deploy-crowdstrike', 'windows-sensor', 'exclusion']
+description: 'Flag this custom field to exclude the device from CrowdStrike auto installation.'
+tags: ['application', 'installation', 'security', 'antivirus']
+draft: false
+unlisted: false
+---
+
+## Summary
+
+Flag this custom field to exclude the device from CrowdStrike auto installation. However, the [Install CrowdStrike Windows Sensor](/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae) task can still be run manually, independent of this field.
+
+## Dependencies
+
+- [DeployCrowdStrikeWindowsSensor](/docs/ffe13fcc-700f-41ea-9fdf-20ea4d253326)
+- [Solution: Deploy CrowdStrike Windows Sensor](/docs/dec6391a-c159-4b45-8c3a-9df4d88dd1c5)
+
+## Custom Field Setup Location
+
+**Custom Fields Path:** `SETTINGS` ➞ `Custom Fields`
+
+## Details
+
+| Name | Level | Type | Default Value | Editable | Description |
+| ---- | ----- | ---- | ------------- | -------- | ----------- |
+| ExcludeCrowdStrikeInstallDevice | ENDPOINT | Flag | | Yes | Flag this custom field to exclude the device from CrowdStrike auto installation |
+
+## Completed Custom Field
+
+
diff --git a/docs/cwrmm/custom-fields/exclude-crowdstrike-install-site.md b/docs/cwrmm/custom-fields/exclude-crowdstrike-install-site.md
new file mode 100644
index 000000000..a0d348b4d
--- /dev/null
+++ b/docs/cwrmm/custom-fields/exclude-crowdstrike-install-site.md
@@ -0,0 +1,34 @@
+---
+id: '8d9498e0-4392-471e-93da-b546e0934b89'
+slug: /8d9498e0-4392-471e-93da-b546e0934b89
+title: 'ExcludeCrowdStrikeInstallSite'
+title_meta: 'ExcludeCrowdStrikeInstallSite'
+keywords: ['crowdstrike', 'crowdstrike-windows-sensor', 'deploy-crowdstrike', 'windows-sensor', 'exclusion']
+description: 'Flag this custom field to exclude the site from CrowdStrike auto installation.'
+tags: ['application', 'installation', 'security', 'antivirus']
+draft: false
+unlisted: false
+---
+
+## Summary
+
+Flag this custom field to exclude the site from CrowdStrike auto installation. However, the [Install CrowdStrike Windows Sensor](/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae) task can still be run manually, independent of this field.
+
+## Dependencies
+
+- [DeployCrowdStrikeWindowsSensor](/docs/ffe13fcc-700f-41ea-9fdf-20ea4d253326)
+- [Solution: Deploy CrowdStrike Windows Sensor](/docs/dec6391a-c159-4b45-8c3a-9df4d88dd1c5)
+
+## Custom Field Setup Location
+
+**Custom Fields Path:** `SETTINGS` ➞ `Custom Fields`
+
+## Details
+
+| Name | Level | Type | Default Value | Editable | Description |
+| ---- | ----- | ---- | ------------- | -------- | ----------- |
+| ExcludeCrowdStrikeInstallSite | SITE | Flag | | Yes | Flag this custom field to exclude the site from CrowdStrike auto installation |
+
+## Completed Custom Field
+
+
diff --git a/docs/cwrmm/groups/crowdstrike-windows-sensor-deployment.md b/docs/cwrmm/groups/crowdstrike-windows-sensor-deployment.md
new file mode 100644
index 000000000..2f43fe939
--- /dev/null
+++ b/docs/cwrmm/groups/crowdstrike-windows-sensor-deployment.md
@@ -0,0 +1,67 @@
+---
+id: '406c6d18-a948-45f6-897b-b1d0174e21de'
+slug: /406c6d18-a948-45f6-897b-b1d0174e21de
+title: 'CrowdStrike Windows Sensor Deployment'
+title_meta: 'CrowdStrike Windows Sensor Deployment'
+keywords: ['crowdstrike', 'crowdstrike-windows-sensor', 'deploy-crowdstrike', 'windows-sensor', 'exclusion']
+description: 'Group of Windows machines where CrowdStrike Windows Sensor deployment is enabled, but the application is not installed.'
+tags: ['application', 'installation', 'security', 'antivirus']
+draft: false
+unlisted: false
+---
+
+## Summary
+
+Group of Windows machines where CrowdStrike Windows Sensor deployment is enabled, but the application is not installed.
+
+## Dependencies
+
+- [DeployCrowdStrikeWindowsSensor](/docs/ffe13fcc-700f-41ea-9fdf-20ea4d253326)
+- [ExcludeCrowdStrikeInstallDevice](/docs/cde64225-1c67-4483-9c39-580b315dd30a)
+- [ExcludeCrowdStrikeInstallSite](/docs/8d9498e0-4392-471e-93da-b546e0934b89)
+- [CrordStrikeDownloadUrl](/docs/406c6d18-a948-45f6-897b-b1d0174e21de)
+- [CrowdStrikeCustomerId](/docs/28f5fdfd-c11e-4643-ae07-62d6f7007805)
+- [Solution: Deploy CrowdStrike Windows Sensor](/docs/dec6391a-c159-4b45-8c3a-9df4d88dd1c5)
+
+## Group Setup Location
+
+- **Group Path:** `ENDPOINTS` ➞ `Groups`
+- **Group Type:** `Dynamic Group`
+
+## Group Summary
+
+- **Group Name:** `CrowdStrike Windows Sensor Deployment`
+- **Description:** `Group of Windows machines where CrowdStrike Windows Sensor deployment is enabled, but the application is not installed.`
+
+
+
+## Group Criteria
+
+The group is defined by the following **criteria blocks**, joined by an **OR**. Each block uses **AND** logic between its conditions.
+
+| Block | Criteria Name | Operator | Value(s) |
+|-------|-----------------------|-----------------|-------------------------------------------|
+| 1 | DeployCrowdStrikeWindowsSensor | Contains any of | `Windows Workstation`, `Windows Workstation and Server` |
+| 1 | ExcludeCrowdStrikeInstallSite | Equal | `False` |
+| 1 | ExcludeCrowdStrikeInstallDevice | Equal | `False` |
+| 1 | Installed Software Name | Does Not Contain any of | `CrowdStrike Windows Sensor` |
+| 1 | OS Type | Equal | `Windows` |
+| 1 | Endpoint Type | Not Equal | `Server` |
+| 2 | DeployCrowdStrikeWindowsSensor | Contains any of | `Windows Server`, `Windows Workstation and Server` |
+| 2 | ExcludeCrowdStrikeInstallSite | Equal | `False` |
+| 2 | ExcludeCrowdStrikeInstallDevice | Equal | `False` |
+| 2 | Installed Software Name | Does Not Contain any of | `CrowdStrike Windows Sensor` |
+| 2 | OS Type | Equal | `Windows` |
+| 2 | Endpoint Type | Equal | `Server` |
+
+- **Block 1:** Targets Windows Workstations (not servers)
+- **Block 2:** Targets Windows Servers
+
+**Logic:**
+A machine matches the group if it meets ALL criteria in Block 1 OR ALL criteria in Block 2.
+
+
+
+## Completed Group
+
+
diff --git a/docs/cwrmm/monitors/crowdstrike-windows-sensor-deployment.md b/docs/cwrmm/monitors/crowdstrike-windows-sensor-deployment.md
new file mode 100644
index 000000000..e7108347c
--- /dev/null
+++ b/docs/cwrmm/monitors/crowdstrike-windows-sensor-deployment.md
@@ -0,0 +1,72 @@
+---
+id: 'ce1b87d4-a1d4-4f37-a03d-3b08c4565086'
+slug: /ce1b87d4-a1d4-4f37-a03d-3b08c4565086
+title: 'CrowdStrike Windows Sensor Deployment'
+title_meta: 'CrowdStrike Windows Sensor Deployment'
+keywords: ['crowdstrike', 'crowdstrike-windows-sensor', 'deploy-crowdstrike', 'windows-sensor', 'exclusion']
+description: 'Executes task to install CrowdStrike Windows Sensor on machines where deployment is enabled, but the application is not installed.'
+tags: ['application', 'installation', 'security', 'antivirus']
+draft: false
+unlisted: false
+---
+
+## Summary
+
+Executes [task](/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae) to install CrowdStrike Windows Sensor on machines where deployment is enabled, but the application is not installed.'
+
+## Dependencies
+
+- [DeployCrowdStrikeWindowsSensor](/docs/ffe13fcc-700f-41ea-9fdf-20ea4d253326)
+- [ExcludeCrowdStrikeInstallDevice](/docs/cde64225-1c67-4483-9c39-580b315dd30a)
+- [ExcludeCrowdStrikeInstallSite](/docs/8d9498e0-4392-471e-93da-b546e0934b89)
+- [CrordStrikeDownloadUrl](/docs/ae84e56d-df98-42da-b293-7412c01d7db7)
+- [CrowdStrikeCustomerId](/docs/28f5fdfd-c11e-4643-ae07-62d6f7007805)
+- [CrowdStrike Windows Sensor Deployment](/docs/406c6d18-a948-45f6-897b-b1d0174e21de)
+- [Install CrowdStrike Windows Sensor](/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae)
+- [Solution: Deploy CrowdStrike Windows Sensor](/docs/dec6391a-c159-4b45-8c3a-9df4d88dd1c5)
+
+## Monitor Setup Location
+
+**Monitors Path:** `ENDPOINTS` ➞ `Alerts` ➞ `Monitors`
+
+## Monitor Summary
+
+- **Name:** `CrowdStrike Windows Sensor Deployment`
+- **Description:** `Executes task to install CrowdStrike Windows Sensor on machines where deployment is enabled, but the application is not installed.`
+- **Type:** `Application`
+- **Severity:** `Others`
+- **Family:** `Antivirus`
+
+
+
+## Targeted Resources
+
+- **Target Type:** `Device Groups`
+- **Group Name:** `CrowdStrike Windows Sensor Deployment`
+
+
+
+## Conditions
+
+- **Application Status:** `Not Installed`
+- **Application Name:** `Contains`
+- **Enter Value:** `CrowdStrike Windows Sensor`
+- **Add Automation:** `Install CrowdStrike Windows Sensor`
+
+
+
+## Ticket Resolution
+
+**Automatically Resolve:** `Disabled`
+
+
+
+## Monitor Output
+
+**Output:** `Do not Generate Ticket`
+
+
+
+## Completed Monitor
+
+
\ No newline at end of file
diff --git a/docs/cwrmm/tasks/install-crowdstrike-windows-sensor.md b/docs/cwrmm/tasks/install-crowdstrike-windows-sensor.md
new file mode 100644
index 000000000..d0b90f398
--- /dev/null
+++ b/docs/cwrmm/tasks/install-crowdstrike-windows-sensor.md
@@ -0,0 +1,285 @@
+---
+id: '7eb5860d-08e2-41cb-b22b-48505618f1ae'
+slug: /7eb5860d-08e2-41cb-b22b-48505618f1ae
+title: 'Install CrowdStrike Windows Sensor'
+title_meta: 'Install CrowdStrike Windows Sensor'
+keywords: ['crowdstrike', 'crowdstrike-windows-sensor', 'deploy-crowdstrike', 'windows-sensor', 'exclusion']
+description: 'This script automates the deployment of the CrowdStrike Windows Sensor (Falcon Agent) on Windows endpoints. It is designed for use with ConnectWise RMM (CW RMM) or similar remote management platforms. The script fetches required deployment parameters from company-level custom fields in CW RMM, verifies installation status, supports forced reinstallation, and performs cleanup after installation.'
+tags: ['application', 'installation', 'security', 'antivirus']
+draft: false
+unlisted: false
+---
+
+## Summary
+
+This script automates the deployment of the CrowdStrike Windows Sensor (Falcon Agent) on Windows endpoints. It is designed for use with ConnectWise RMM (CW RMM) or similar remote management platforms. The script fetches required deployment parameters from company-level custom fields in CW RMM, verifies installation status, supports forced reinstallation, and performs cleanup after installation.
+
+## Dependencies
+
+- [CrordStrikeDownloadUrl](/docs/ae84e56d-df98-42da-b293-7412c01d7db7)
+- [CrowdStrikeCustomerId](/docs/28f5fdfd-c11e-4643-ae07-62d6f7007805)
+- [Solution: Deploy CrowdStrike Windows Sensor](/docs/dec6391a-c159-4b45-8c3a-9df4d88dd1c5)
+
+## Sample Run
+
+
+
+## User Parameters
+
+| Name | Example | Accepted Values | Required | Default | Type | Description |
+|------------------|-----------|---------------------|----------|---------|------------|-----------------------------------------------------------------------------|
+| Force | `Yes` | `Yes`, `No` | `No` | `No` | `Flag` | If enabled, the script will reinstall the sensor even if it is already present. If not enabled, the script will skip installation if the sensor is detected. |
+
+## Custom Fields
+
+| Name | Level | Type | Required | Description |
+|---------------------|---------|------|----------|------------------------------------------------|
+| CwordStrikeCustomerId | Company | Text | Yes | Set download Url for downloading the installer for CrowdStrike Windows Sensor. |
+| CrordStrikeDownloadUrl | Company | Text | Yes | Set CrowdStrike Customer ID for the company. |
+
+## Task Setup Path
+
+- **Tasks Path:** `AUTOMATION` ➞ `Tasks`
+- **Task Type:** `Script Editor`
+
+## Task Creation
+
+### Description
+
+- **Name:** `Install CrowdStrike Windows Sensor`
+- **Description:** `This script automates the deployment of the CrowdStrike Windows Sensor (Falcon Agent) on Windows endpoints. It is designed for use with ConnectWise RMM (CW RMM) or similar remote management platforms. The script fetches required deployment parameters from company-level custom fields in CW RMM, verifies installation status, supports forced reinstallation, and performs cleanup after installation.`
+- **Category:** `Application`
+
+
+
+### Parameters
+
+| Parameter Name | Required Field | Parameter Type | Default Value |
+| -------------- | -------------- | -------------- | ------------- |
+| Force | Disabled | Flag | Disabled |
+
+**Force:**
+ 
+
+
+
+### Script Editor
+
+#### Row 1: Set Pre-defined Variable ( @downloadUrl@ = CrowdStrikeDownloadUrl )
+
+- **Variable Name:** `downloadUrl`
+- **Type:** `Custom Field`
+- **Custom Field:** `CrowdStrikeDownloadUrl`
+- **Continue on Failure:** `False`
+- **Operating System:** `Windows`
+
+
+
+#### Row 2: Set Pre-defined Variable ( @customerId@ = CrowdStrikeCustomerId )
+
+- **Variable Name:** `customerId`
+- **Type:** `Custom Field`
+- **Custom Field:** `CrowdStrikeCustomerId`
+- **Continue on Failure:** `False`
+- **Operating System:** `Windows`
+
+
+
+#### Row 4: PowerShell script
+
+- **Use Generative AI Assist for script creation:** `False`
+- **Expected time of script execution in seconds:** `600`
+- **Continue on Failure:** `False`
+- **Run As:** `System`
+- **Operating System:** `Windows`
+- **PowerShell Script Editor:**
+
+```PowerShell
+<#
+.SYNOPSIS
+ Installs the CrowdStrike Windows Sensor on Windows devices using company-level deployment parameters from CW RMM.
+
+.DESCRIPTION
+ This script automates the deployment of the CrowdStrike Windows Sensor (Falcon Agent) on Windows endpoints. It is designed for use with ConnectWise RMM (CW RMM) or similar remote management platforms. The script fetches required deployment parameters from company-level custom fields in CW RMM, verifies installation status, supports forced reinstallation, and performs cleanup after installation.
+
+ The script performs the following steps:
+ - Validates and retrieves the download URL and customer ID from company-level custom fields.
+ - Checks if the CrowdStrike Windows Sensor is already installed.
+ - Supports forced installation via a runtime variable.
+ - Downloads the installer to a secure working directory.
+ - Executes the installer silently with the provided customer ID.
+ - Verifies successful installation by checking both the uninstall registry and the confirmation directory.
+ - Cleans up temporary installer files.
+
+.PARAMETER downloadUrl
+ The URL to download the CrowdStrike Windows Sensor installer.
+ This value is fetched from the CW RMM company-level custom field named "CrowdStrikeDownloadUrl".
+ Must be a valid, absolute URI pointing to the installer executable.
+
+.PARAMETER customerId
+ The CrowdStrike Customer ID (CID) used for agent registration.
+ This value is fetched from the CW RMM company-level custom field named "CrowdStrikeCustomerId".
+ Must be a valid CrowdStrike CID assigned to your organization.
+
+.PARAMETER Force
+ A runtime variable in the CW RMM task that controls forced installation.
+ If enabled, the script will reinstall the sensor even if it is already present.
+ If not enabled, the script will skip installation if the sensor is detected.
+
+.NOTES
+ - Requires administrative privileges.
+ - Designed for use with CW RMM or similar remote management platforms.
+ - All deployment parameters must be provided via company-level custom fields in CW RMM.
+ - The script checks both the uninstall registry and the confirmation directory to verify installation.
+
+.EXAMPLE
+ .\Install-CrowdStrikeWindowsSensor.ps1
+ Installs the CrowdStrike Windows Sensor using the download URL and customer ID from company-level custom fields.
+
+.EXAMPLE
+ .\Install-CrowdStrikeWindowsSensor.ps1 -Force 'Yes'
+ Forces reinstallation of the CrowdStrike Windows Sensor, even if it is already installed.
+
+#>
+
+#region Globals
+$ErrorActionPreference = 'Stop'
+$ProgressPreference = 'SilentlyContinue'
+[Net.ServicePointManager]::SecurityProtocol = [Enum]::ToObject([Net.SecurityProtocolType], 3072)
+#endRegion
+
+#region Variables
+$softwareName = 'CrowdStrike Windows Sensor'
+$appName = 'WindowsSensor'
+$workingDirectory = '{0}\_Automation\Script\{1}' -f $env:ProgramData, $appName
+$appPath = '{0}\{1}.exe' -f $workingDirectory, $appName
+$confirmationDirectory = 'C:\Windows\System32\drivers\CrowdStrike'
+#endRegion
+
+#region Function
+function Test-CrowdStrikeInstall {
+ [CmdletBinding()]
+ [OutputType([bool])]
+ param (
+ [Parameter(Mandatory = $true)]
+ [String]$SoftwareName,
+ [Parameter(Mandatory = $true)]
+ [Uri]$confirmationDirectory
+ )
+
+ $uninstallPaths = @(
+ 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall',
+ 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall'
+ )
+ $uninstallInfo = Get-ChildItem $uninstallPaths -ErrorAction SilentlyContinue |
+ Get-ItemProperty |
+ Where-Object {
+ $_.DisplayName -match [Regex]::Escape($SoftwareName)
+ }
+ if ($uninstallInfo) {
+ if (Test-Path -Path $confirmationDirectory) {
+ return $true
+ } else {
+ return $false
+ }
+ } else {
+ return $false
+ }
+}
+#endRegion
+
+#region CW RMM Variables
+$downloadUrl = '@downloadUrl@'
+$customerId = '@customerId@'
+$force = '@Force@'
+#endRegion
+
+#region Set Script Variables
+if ([String]::IsNullOrEmpty($downloadUrl) -or $downloadUrl -match 'downloadUrl@$' -or $downloadUrl -eq 'NA') {
+ throw 'Invalid download Url. Set an appropriate download url in company-level custom field ''CrowdStrike Download URL'''
+} elseif (![System.Uri]$downloadUrl.IsAbsoluteUri) {
+ throw 'Invalid download Url. Set an appropriate download url in company-level custom field ''CrowdStrike Download URL'''
+}
+
+if ([String]::IsNullOrEmpty($customerId) -or $customerId -match 'customerId@$' -or $customerId -eq 'NA') {
+ throw 'Invalid customer Id. Set an appropriate customer id in company-level custom field ''CrowdStrike Customer ID'''
+}
+
+if ($force -match '1|Yes|True') {
+ $force = $true
+} else {
+ $force = $false
+}
+#endRegion
+
+#region Install Check
+if (-not (Test-CrowdStrikeInstall -SoftwareName $softwareName -confirmationDirectory $confirmationDirectory)) {
+ Write-Information ('{0} is not installed. Proceeding with installation.' -f $softwareName) -InformationAction Continue
+} elseif ($force) {
+ Write-Information ('{0} is already installed and force parameter is enabled. Proceeding with installation.' -f $softwareName) -InformationAction Continue
+} else {
+ return ('{0} is already installed and force parameter is not enabled. Skipping installation.' -f $softwareName)
+}
+#endregion
+
+#region Working Directory
+if ( !(Test-Path -Path $workingDirectory) ) {
+ try {
+ New-Item -Path $workingDirectory -ItemType Directory -Force -ErrorAction Stop | Out-Null
+ } catch {
+ throw ('Failed to Create {0}. Reason: {1}' -f $workingDirectory, $($Error[0].Exception.Message))
+ }
+}
+#endRegion
+
+#region Download
+try {
+ Invoke-WebRequest -Uri $downloadURL -OutFile $appPath -UseBasicParsing -ErrorAction Stop
+} catch {
+ throw ('Failed to download {0}. Reason: {1}' -f $softwareName, $($Error[0].Exception.Message))
+}
+#endRegion
+
+#region Install CrowdStrike Windows Sensor
+$arguments = @(
+ '/install',
+ '/quiet',
+ ('CID={0}' -f $customerId),
+ 'ProvNoWait=1'
+)
+try {
+ $procInfo = Start-Process -FilePath $appPath -ArgumentList $arguments -Wait -PassThru
+} catch {
+ throw ('Failed to install {0}. Reason: {1}' -f $softwareName, $($Error[0].Exception.Message))
+}
+#endRegion
+
+#region Install Verification
+if (Test-CrowdStrikeInstall -SoftwareName $softwareName -confirmationDirectory $confirmationDirectory) {
+ return ('{0} installation completed successfully.' -f $softwareName)
+} else {
+ throw ('{0} installation failed with exit code {1}.' -f $softwareName, $procInfo.ExitCode)
+}
+#endregion
+
+#region Cleanup
+Remove-Item -Path $appPath -Force -ErrorAction SilentlyContinue
+#endregion
+```
+
+
+
+#### Row 5: Script Log
+
+- **Script Log Message:** `%Output%`
+- **Operating System:** `Windows`
+
+
+
+## Completed Script
+
+
+
+## Output
+
+- Script Log
diff --git a/docs/solutions/deploy-crowdstrike-windows-sensor.md b/docs/solutions/deploy-crowdstrike-windows-sensor.md
new file mode 100644
index 000000000..977014b28
--- /dev/null
+++ b/docs/solutions/deploy-crowdstrike-windows-sensor.md
@@ -0,0 +1,93 @@
+---
+id: 'dec6391a-c159-4b45-8c3a-9df4d88dd1c5'
+slug: /dec6391a-c159-4b45-8c3a-9df4d88dd1c5
+title: 'Deploy CrowdStrike Windows Sensor'
+title_meta: 'Deploy CrowdStrike Windows Sensor'
+keywords: ['crowdstrike', 'crowdstrike-windows-sensor', 'deploy-crowdstrike', 'windows-sensor', 'exclusion']
+description: 'The solution outlines the process of auto deploying CrowdStrike Windows Sensor from CW RMM.'
+tags: ['application', 'installation', 'security', 'antivirus']
+draft: false
+unlisted: false
+---
+
+## Purpose
+
+This solution outlines the full process for automatically deploying the CrowdStrike Windows Sensor using ConnectWise RMM, utilizing custom fields, a dynamic device group, a scheduled monitor, and an automated installation script.
+
+## Associated Content
+
+### Custom Fields
+
+| Name | Example | Type | Level | Required | Purpose |
+|------|---------|------|-------|----------|---------|
+| [CrowdStrikeCustomerId](/docs/28f5fdfd-c11e-4643-ae07-62d6f7007805) | xyz | Text Box | COMPANY | Yes | Set CrowdStrike Customer ID for the company. |
+| [CrordStrikeDownloadUrl](/docs/ae84e56d-df98-42da-b293-7412c01d7db7) | https://download.url | Text Box | COMPANY | Yes | Set download URL for downloading the installer for CrowdStrike Windows Sensor. |
+| [DeployCrowdStrikeWindowsSensor](/docs/ffe13fcc-700f-41ea-9fdf-20ea4d253326) | Windows Workstation and Server | Dropdown | COMPANY | Yes | Select OS to enable auto-deployment of CrowdStrike Windows Sensor. |
+| [ExcludeCrowdStrikeInstallSite](/docs/8d9498e0-4392-471e-93da-b546e0934b89) | | Flag | SITE | No | Prevents sensor deployment at specific sites. |
+| [ExcludeCrowdStrikeInstallDevice](/docs/cde64225-1c67-4483-9c39-580b315dd30a) | | Flag | ENDPOINT | No | Prevents sensor deployment to specific endpoints or devices. |
+
+### Group
+
+| Name | Purpose |
+|------|---------|
+| [CrowdStrike Windows Sensor Deployment](/docs/406c6d18-a948-45f6-897b-b1d0174e21de) | Dynamic group targeting Windows devices that are eligible for auto deployment (based on OS selection and not excluded). |
+
+### Monitor
+
+| Name | Type | Schedule | Purpose |
+|------|------|----------|---------|
+| [CrowdStrike Windows Sensor Deployment](/docs/ce1b87d4-a1d4-4f37-a03d-3b08c4565086) | Application | Continuous | Monitors and runs the sensor installation script on devices missing the CrowdStrike Windows Sensor. |
+
+### Task
+
+| Name | Purpose |
+|------|---------|
+| [Install CrowdStrike Windows Sensor](/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae) | PowerShell script that installs or reinstalls the CrowdStrike Windows Sensor on targeted devices. |
+
+## Implementation
+
+### Step 1: Create the Required Custom Fields
+
+Create all the custom fields listed above under `SETTINGS → Custom Fields` in CW RMM. See individual documentation pages for configuration details.
+
+- [CrowdStrikeCustomerId](/docs/28f5fdfd-c11e-4643-ae07-62d6f7007805)
+- [CrordStrikeDownloadUrl](/docs/ae84e56d-df98-42da-b293-7412c01d7db7)
+- [DeployCrowdStrikeWindowsSensor](/docs/ffe13fcc-700f-41ea-9fdf-20ea4d253326)
+- [ExcludeCrowdStrikeInstallSite](/docs/8d9498e0-4392-471e-93da-b546e0934b89)
+- [ExcludeCrowdStrikeInstallDevice](/docs/cde64225-1c67-4483-9c39-580b315dd30a)
+
+### Step 2: Create the Dynamic Group
+
+Create the group [CrowdStrike Windows Sensor Deployment](/docs/406c6d18-a948-45f6-897b-b1d0174e21de) under `ENDPOINTS → Groups` as a dynamic group. This group targets Windows workstations or servers with deployment enabled and not excluded.
+
+### Step 3: Create the Installation Task
+
+Create the install script task [Install CrowdStrike Windows Sensor](/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae) under `AUTOMATION → Tasks`. Set up all required variables and use the detailed script from the referenced documentation.
+
+### Step 4: Set up the Deployment Monitor
+
+Configure the monitor [CrowdStrike Windows Sensor Deployment](/docs/ce1b87d4-a1d4-4f37-a03d-3b08c4565086) under `ENDPOINTS → Alerts → Monitors` to target the deployment enabled group, running continuously and triggering the installation task on devices missing the CrowdStrike sensor.
+
+### Step 5: Configure Deployment Parameters
+
+Obtain the CrowdStrike Customer ID and Download URL from your CrowdStrike portal and set these values in the appropriate company-level custom fields for each client.
+
+## FAQ
+
+**Q: What happens if a device is excluded at the site or device level?**
+A: Devices or sites flagged for exclusion will not receive the sensor through automatic deployment. However, the [Install CrowdStrike Windows Sensor](/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae) task can be executed manually.
+
+**Q: How does the solution check devices for sensor installation?**
+A: The monitor runs continuously and checks for devices in the target group that don't have the CrowdStrike Windows Sensor installed.
+
+**Q: Can I trigger the sensor install manually?**
+A: Yes, the [Install CrowdStrike Windows Sensor](/docs/7eb5860d-08e2-41cb-b22b-48505618f1ae) task can be run on demand independent of monitor or group status.
+
+**Q: Where do I find the Customer ID and Download URL for CrowdStrike?**
+A: These values are available in your CrowdStrike Falcon portal under the sensor deployment section.
+
+**Q: What OSes are supported for automated deployment?**
+A: Supported OS selection is controlled by the `DeployCrowdStrikeWindowsSensor` custom field (Windows Workstation, Windows Server, Both, or Disabled).
+
+**Q: Does the installer support forced reinstallation?**
+A: Yes, enable the "Force" runtime parameter when running the install task/script to force a reinstall even if the sensor is present.
diff --git a/static/img/docs/28f5fdfd-c11e-4643-ae07-62d6f7007805/image1.webp b/static/img/docs/28f5fdfd-c11e-4643-ae07-62d6f7007805/image1.webp
new file mode 100644
index 0000000000000000000000000000000000000000..bbf5d1d29c33dfa23603d5b010b6e026280cd196
GIT binary patch
literal 7876
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
CUuppW
literal 0
HcmV?d00001
diff --git a/static/img/docs/406c6d18-a948-45f6-897b-b1d0174e21de/image1.webp b/static/img/docs/406c6d18-a948-45f6-897b-b1d0174e21de/image1.webp
new file mode 100644
index 0000000000000000000000000000000000000000..5edd3cb51d1b1f9ac590ed9f04ab60682cbc4871
GIT binary patch
literal 14604
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
D6o^hD
literal 0
HcmV?d00001
diff --git a/static/img/docs/406c6d18-a948-45f6-897b-b1d0174e21de/image2.webp b/static/img/docs/406c6d18-a948-45f6-897b-b1d0174e21de/image2.webp
new file mode 100644
index 0000000000000000000000000000000000000000..66a47d50f77dfe58cd01f6efc63f51bb4ff9c193
GIT binary patch
literal 44400
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