> 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/3.1/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/3.1/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/3.1/setup/prerequisites/firewall-ports.md)
* [Antivirus exclusions are applied](/stifler/3.1/setup/prerequisites.md#antivirus-exclusions)
* [Necessary permissions are granted](/stifler/3.1/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/3.1/setup/installation/stifler-server-installation.md) – Core engine managing all operations.
2. [Install StifleR Dashboard](/stifler/3.1/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/3.1/setup/installation/stifler-actionhub-installation.md) – Dynamic, real-time actions across the StifleR ecosystem.
4. [Install Beacon](/stifler/3.1/setup/installation/stifler-beacon-installation.md) – Gathers telemetry and identifies active subnets.
5. [Install StifleR Client](/stifler/3.1/setup/installation/stifler-client-installation.md) – Client that monitors network activity, reports and enforces policies.
6. [Install WMI Agent](/stifler/3.1/setup/installation/stifler-wmi-agent-installation.md) (optional) – Agent that replaces traditional WMI.
7. [Install CacheR](/stifler/3.1/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/3.1/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/3.1/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="/files/TG102fkr9JGw6YOvGpJL" 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/3.1/configuration/stifler-network-locations.md)

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

## Upgrading from StifleR 3.0 to 3.1

The upgrade from 3.0 to 3.1 is in-place. Install the new server over the existing installation and restart the service.

### After upgrading

#### Set up RBAC roles

RBAC is new in 3.1. No roles exist after upgrade — you need to create them if you want to use fine-grained access control.

Your existing Global Admin and Global Read configuration (set via the Config Editor `AdministratorGroup` and `ReadGroup` settings) carries over automatically. Users in those groups will continue to have full or read-only access as before.

If you do not set up any roles, users who are not Global Admin or Global Read will be blocked at login. Create at least one role with appropriate permissions for your users before rolling out to production.

See [Roles and Permissions](https://2ps.visualstudio.com/StifleR/_wiki/wikis/StifleR.wiki?wikiVersion=GBwikiMaster\&pagePath=/StifleR%203.1/Documentation%20\(drafts\)/roles%20and%20permissions) for how to create roles and assign claim rules.

#### Remote Tools permissions are not migrated

In 3.0, Remote Tools had its own access control configuration. That configuration is **not carried over** to 3.1.

### Rolling out 3.1 clients

You do not need to upgrade all clients at the same time as the server.

| Scenario                | Behaviour                                                                                                                                   |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| 3.0 client → 3.1 server | Works normally. 3.0 clients are unaware of the new capability endpoint and ignore it.                                                       |
| 3.1 client → 3.0 server | Client defaults to standard mode. The 3.0 server does not support the licensing endpoint, so the client assumes no restriction is intended. |

You can upgrade the server first and roll out 3.1 clients at your own pace. 3.1 clients still pointing at a 3.0 server will run in full mode — no disruption during the transition.


---

# 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 dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

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

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
