> For the complete documentation index, see [llms.txt](https://documentation.2pintsoftware.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.2pintsoftware.com/stifler/setup/installation.md).

# Installation

This section provides a step-by-step process to install each component of the StifleR platform. Whether you're evaluating via Proof of Concept or implementing a full production deployment, this is the correct order of installation to get a clean and functional environment.

{% hint style="success" %}
We recommend when deploying 2Pint software in your environment, to initially validate against your UAT or QA environment before rolling out in production.
{% endhint %}

[Testing and validation](/stifler/setup/testing-and-validation.md) are used to confirm that StifleR operates correctly and meets expectations in your environment. A Proof of Concept can be used to verify behavior, performance, and visibility before expanding usage, and the same testing scenarios can also be applied in production environments in a controlled manner.

Before proceeding to installation, ensure that:

* [Required firewall ports are opened](/stifler/setup/prerequisites/firewall-ports-old.md)
* [Antivirus exclusions are applied](/stifler/setup/prerequisites.md#antivirus-exclusions)
* [Necessary permissions are granted](/stifler/setup/prerequisites.md#permissions)

## Order of installation

For a standard StifleR implementation, the recommended order for deploying and configuring each component is as follows:

1. [Install StifleR Server](/stifler/setup/installation/stifler-server-installation.md) – Core engine managing all operations.
2. [Install StifleR Dashboard](/stifler/setup/installation/stifler-dashboard-installation.md) – Web UI for monitoring and configuration.

   <div data-gb-custom-block data-tag="hint" data-style="danger" class="hint hint-danger"><p>If you are installing StifleR for DeployR management only you don't need to install or configure the rest of StifleR components. StifleR client is optional in boot media for monitoring purposes.</p></div>
3. [Install Action HUB](/stifler/setup/installation/stifler-actionhub-installation.md) – Dynamic, real-time actions across the StifleR ecosystem.
4. [Install Beacon](/stifler/setup/installation/stifler-beacon-installation.md) – Gathers telemetry and identifies active subnets.
5. [Install StifleR Client](/stifler/setup/installation/stifler-client-installation.md) – Client that monitors network activity, reports and enforces policies.
6. [Install WMI Agent](/stifler/setup/installation/stifler-wmi-agent-installation.md) (optional) – Agent that replaces traditional WMI.
7. [Install CacheR](/stifler/setup/installation/cacher-installation.md) (optional) – content tracking and pre-caching.

## Prerequisites for Configuration Manager

If Configuration Manager is being used as part of the PoC, the following additional setup is required. Detailed configuration steps can be found on the linked documentation pages.

{% tabs fullWidth="false" %}
{% tab title="Enabling BranchCache" %}
BranchCache is the key Microsoft peer-to-peer technology which StifleR optimizes. It is important to enable BranchCache on all relevant systems.

* If using Configuration Manager, enable BranchCache on all Servers / CM distribution points
* If you have a simple lab environment, you should perform this step (if required) on all your distribution points
* If you are planning on testing in a production environment, make sure that you perform this step ONLY on the relevant distribution point your test clients will obtain their deployment content from.

See: [Configuring BranchCache on Windows Server](/stifler/configuration/windows-server-branchcache-configuration.md)
{% endtab %}

{% tab title="Enabling DO" %}
As well as BranchCache, StifleR can utilize download jobs which use Microsoft's Delivery Optimization (DO) peering technology.

See: [Configuring Delivery Optimization](/stifler/configuration/delivery-optimization-configuration.md)
{% endtab %}

{% tab title="BITS Policy " %}
Check for and remove any BITS policy that has been set within Configuration Manager and/or Active Directory. Such settings can interfere with the efficient operation of the automated Bandwidth mechanisms in StifleR.&#x20;

In the Configuration Manager console, BITS settings can be configured in "Client Settings":

<figure><img src="https://content.gitbook.com/content/1rrK0lTrlpunspNbITJB/blobs/00EQmem7cTbfg5WagvNh/StifleR-2.10-DisableBITSinCM.png" alt=""><figcaption><p>Make sure that this is set to No (default setting), as this configures a local BITS policy on the clients which we do not want.</p></figcaption></figure>

**Remove any BITS AD Group Policy (if configured)**\
Within the Active Directory Group Policy Editor, go to:\
Computer Configuration -> Policies -> Administrative templates -> Network -> Background Intelligent Transfer Service (BITS)

Ensure that there are no BITS policies configured. If present, remove them to avoid affecting any test clients.
{% endtab %}
{% endtabs %}

### [**Configure the network topology**](/stifler/configuration/stifler-network-locations.md)

* Configure target bandwidth
* Configure subnet description
* Configure Delivery Optimization


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://documentation.2pintsoftware.com/stifler/setup/installation.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
