Skip to content
Holistra

Documentation

On-premises installation

What a dedicated, single-tenant instance needs from your environment and what your administrator manages.

What a dedicated instance is

A dedicated instance is a single-tenant Holistra that runs on servers you control, in your data centre or your own cloud account. It has the same dashboard, agents and API as the cloud service, but serves only your organisation. Scan results, assets, findings and reports are stored on your infrastructure.

It is activated with a licence key that we issue for your instance. Without a valid licence, new scans can't be started; viewing data, agents and remediation keep working.

Installation is done together with our team

We agree the scope, sizing and network layout with you, then install and activate the instance alongside your administrators. To start, request a demo or email [email protected].

Before installation

Server

A single server (physical or virtual) runs the whole platform. Web scanning is the most demanding part, so size for the number of targets you plan to scan at once. As a starting point:

MinimumRecommended
CPU2 cores4 or more cores
Memory4 GB8 GB or more
Disk10 GB free20 GB or more, on storage that is backed up

We confirm the sizing for your environment during scoping.

A hostname and certificate

Choose the hostname users and agents will use, for example holistra.corp.example, and a TLS certificate for it. A certificate from your internal CA or a self-signed one works: agent installers save the server's certificate when they run, so agents keep verifying TLS.

Pick the hostname before rolling out agents

Each agent keeps calling the address it was installed with, so changing the hostname later means re-running the installer on every endpoint. The same applies if you replace a self-signed certificate.

Network access

Inbound to the server

FromPortWhy
Users’ browsersTCP 443 (HTTPS)The dashboard and API
Endpoints with the agentTCP 443 (HTTPS)Agent check-ins. Agents only connect outwards; nothing connects to them
OptionalTCP 80Redirect to HTTPS

Outbound from the server

ToNeeded forRequired?
HolistraLicence validation, and downloading signed threat-intelligence and agent-release updatesYes
Your scan targetsNetwork, web, host and CIS scansFor scanning
Your code repositories and cloud accountsSCA, SAST and cloud-configuration scansIf you use those scan types
OSV (api.osv.dev) or your own mirrorMatching agents’ installed packages against known vulnerabilitiesOptional; can be turned off
Microsoft Security Update Guide (api.msrc.microsoft.com)Checking Windows hosts for missing security updatesOptional; can be turned off
Your identity providerSingle sign-on and SCIMIf you use SSO

What leaves your network

  • Licence check: your licence key, sent in a request header, on a regular schedule.
  • Updates: downloads only. Threat-intelligence feeds and agent releases are signed, and your instance refuses anything that isn't.
  • Vulnerability matching (optional): package names, versions and the OS distribution sent to OSV. No hostnames, IP addresses or other data about your organisation.
  • Windows update data (optional): public Microsoft documents are downloaded; nothing about your devices is sent.

Scan results, findings, assets, agent reports, users and the audit log stay on your server.

After installation

Your first Administrator signs in, then follows Getting started. On a dedicated instance, your Admins also control updates:

WhatWhereHow
Threat intelligence (CISA KEV and EPSS)Settings → SystemNew signed feeds are staged; an Admin reviews and installs them. Older feeds can’t replace a newer one.
Agent releasesSettings → Agent updates → ReleasesCheck now fetches signed releases; an Admin installs one. Agents then update on Update now or by your automatic policy.
Agent update policySettings → Agent updatesManual or automatic, maintenance window, canary agents first.

Jira two-way sync is available on dedicated instances; we set it up with you. Everything else, including agents, SSO and the API, works as described in the rest of this documentation.

Something missing or unclear? Email [email protected].