Self-Hosted Installation
This guide walks you through deploying the NetRecon platform on your own server using Docker Compose.
Prerequisites
- A Linux server (Ubuntu 22.04+ recommended) or Windows Server with Docker
- Docker v24.0+ and Docker Compose v2.20+
- A domain name pointed to your server (e.g.,
netrecon.yourcompany.com) - TLS certificate for your domain (or use Let's Encrypt)
- At least 4 GB RAM and 40 GB disk space
Linux VPS Installation
Step 1: Install Docker
# Update system
sudo apt update && sudo apt upgrade -y
# Install Docker
curl -fsSL https://get.docker.com | sudo sh
# Add your user to the docker group
sudo usermod -aG docker $USER
# Install Docker Compose plugin
sudo apt install docker-compose-plugin -y
# Verify installation
docker --version
docker compose version
Step 2: Create the Project Directory
sudo mkdir -p /opt/netrecon
cd /opt/netrecon
Step 3: Create the Environment File
sudo tee /opt/netrecon/.env << 'EOF'
# NetRecon Self-Hosted Configuration
NETRECON_DOMAIN=netrecon.yourcompany.com
NETRECON_EMAIL=admin@yourcompany.com
# PostgreSQL
POSTGRES_USER=netrecon
POSTGRES_PASSWORD=CHANGE_ME_TO_A_STRONG_PASSWORD
POSTGRES_DB=netrecon
# Redis
REDIS_PASSWORD=CHANGE_ME_TO_A_STRONG_PASSWORD
# JWT Secret (generate with: openssl rand -hex 32)
JWT_SECRET=CHANGE_ME_TO_A_RANDOM_HEX_STRING
# Agent Registry
AGENT_REGISTRY_SECRET=CHANGE_ME_TO_A_RANDOM_HEX_STRING
AGENT_JWT_SECRET=CHANGE_ME_TO_A_RANDOM_HEX_STRING
# Email (SMTP)
SMTP_HOST=smtp.yourcompany.com
SMTP_PORT=587
SMTP_USER=noreply@yourcompany.com
SMTP_PASSWORD=CHANGE_ME
SMTP_FROM=NetRecon <noreply@yourcompany.com>
# License
LICENSE_KEY=your-license-key
EOF
warning
Change all placeholder passwords and secrets before deploying. Use openssl rand -hex 32 to generate secure random values.