Prerequisites
- Docker and Docker Compose installed on the hub server — see Install Docker
- A domain or subdomain pointed to the hub server (e.g.,
monitor.example.com) - Ports 80 and 443 are open in your firewall
Step 1: Deploy the Beszel Hub
Create a directory and Docker Compose file:127.0.0.1:8090.
Step 2: Install Nginx
- Debian / Ubuntu
- RHEL / AlmaLinux / Rocky
Step 3: Configure Nginx Reverse Proxy
Replacemonitor.example.com with your actual domain:
Step 4: Install SSL with Certbot
- Debian / Ubuntu
- RHEL / AlmaLinux / Rocky
Step 5: Access the Hub
Openhttps://monitor.example.com in your browser. On first visit, create your admin account at the /_/ admin path.
Installing the Agent
The Beszel agent runs on each server you want to monitor and reports back to the hub. It does not require Docker.Add a System in the Hub
- Log in to the Beszel hub
- Click Add System
- Enter a name and the server’s IP/hostname
- The hub will generate a public key — copy it
Install the Agent
On the server you want to monitor, run:- Linux (any distro)
- Docker
- The hub’s public key (paste the key from Step 1)
- The port for the agent to listen on (default:
45876)
Open the Agent Port
On the monitored server, allow the agent port in the firewall:- UFW
- firewalld
Updating
Hub
Agent (systemd)
Agent (Docker)
All-in-One Hub Script
Edit theDOMAIN variable before running:
install-beszel.sh