Test indipendenti Aggiornato aprile 2026 387 guide di self-hosting 5 provider VPS testati

guide

Come fare self-hosting di Beszel su un VPS (Guida completa)

Guida passo dopo passo per il self-hosting di Beszel su un VPS. Installazione Docker, configurazione degli agenti multi-server e primo accesso.

Come fare self-hosting di Beszel su un VPS (Guida completa)

Beszel è un pannello di monitoraggio self-hosted che ti fornisce visibilità in tempo reale su CPU, RAM, disco e metriche di rete su più server. È estremamente leggero (funziona con 512 MB di RAM), usa SQLite per l’archiviazione e può essere distribuito in pochi minuti tramite Docker. Questa guida copre tutto, dalla scelta del VPS al monitoraggio del primo server remoto.

Prerequisiti

Prima di iniziare, hai bisogno di:

Passo 1: Connettersi al VPS

ssh root@ip-del-tuo-vps

Aggiornare i pacchetti:

apt update && apt upgrade -y

Passo 2: Installare Docker

curl -fsSL https://get.docker.com | sh
systemctl enable --now docker

Verificare l’installazione:

docker --version

Passo 3: Aprire la porta 8090 nel firewall

Con UFW su Ubuntu:

ufw allow 8090/tcp
ufw reload

Passo 4: Distribuire l’hub Beszel

Opzione A: Docker Run (avvio rapido)

docker run -d \
  --name beszel \
  --restart unless-stopped \
  -p 8090:8090 \
  -v beszel_data:/beszel_data \
  henrygd/beszel

Opzione B: Docker Compose (consigliato)

Creare una directory di progetto:

mkdir -p /opt/beszel && cd /opt/beszel

Creare docker-compose.yml:

services:
  beszel:
    image: henrygd/beszel:latest
    container_name: beszel
    restart: unless-stopped
    ports:
      - "8090:8090"
    volumes:
      - beszel_data:/beszel_data

volumes:
  beszel_data:

Avviare il servizio:

docker compose up -d

Verificare lo stato:

docker compose ps
docker compose logs -f

Opzione C: Installazione binaria (senza Docker)

Scaricare l’ultima versione per la propria architettura:

curl -sL https://api.github.com/repos/henrygd/beszel/releases/latest \
  | grep "browser_download_url.*linux_amd64" \
  | cut -d '"' -f 4 \
  | xargs curl -Lo /usr/local/bin/beszel

chmod +x /usr/local/bin/beszel

Creare un servizio systemd in /etc/systemd/system/beszel.service:

[Unit]
Description=Beszel monitoring hub
After=network.target

[Service]
ExecStart=/usr/local/bin/beszel serve
WorkingDirectory=/var/lib/beszel
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

Abilitare e avviare:

mkdir -p /var/lib/beszel
systemctl daemon-reload
systemctl enable --now beszel

Passo 5: Primo accesso

Apri il browser e naviga su:

http://ip-del-tuo-vps:8090

Al primo avvio ti verrà chiesto di creare un account amministratore. Usa una password sicura.

Passo 6: Aggiungere server da monitorare

Beszel usa un agente leggero installato su ogni server da monitorare.

6.1 Generare una chiave agente

Nel pannello Beszel:

  1. Fare clic su Aggiungi server.
  2. Inserire un nome e l’hostname o l’IP del server.
  3. Copiare la Chiave agente generata — sarà necessaria sul server monitorato.

6.2 Installare l’agente sul server di destinazione

Connettersi via SSH al server da monitorare, poi eseguire:

Docker:

docker run -d \
  --name beszel-agent \
  --restart unless-stopped \
  --network host \
  -e KEY="<incolla-la-tua-chiave-agente-qui>" \
  henrygd/beszel-agent

Binario:

curl -sL https://api.github.com/repos/henrygd/beszel/releases/latest \
  | grep "browser_download_url.*beszel-agent.*linux_amd64" \
  | cut -d '"' -f 4 \
  | xargs curl -Lo /usr/local/bin/beszel-agent

chmod +x /usr/local/bin/beszel-agent

Creare /etc/systemd/system/beszel-agent.service:

[Unit]
Description=Beszel monitoring agent
After=network.target

[Service]
ExecStart=/usr/local/bin/beszel-agent
Environment=KEY=<la-tua-chiave-agente>
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

Abilitare e avviare:

systemctl daemon-reload
systemctl enable --now beszel-agent

In pochi secondi il server dovrebbe apparire come Connesso nel pannello Beszel.

Passo 7: (Opzionale) Mettere Beszel dietro un reverse proxy

Per accesso HTTPS, configurare Caddy o Nginx davanti a Beszel.

Esempio Caddy (/etc/caddy/Caddyfile):

monitor.tuodominio.it {
    reverse_proxy localhost:8090
}

Esempio Nginx:

server {
    listen 443 ssl;
    server_name monitor.tuodominio.it;
    ssl_certificate /etc/letsencrypt/live/monitor.tuodominio.it/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/monitor.tuodominio.it/privkey.pem;

    location / {
        proxy_pass http://localhost:8090;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

Risoluzione dei problemi

ProblemaSoluzione
Pannello non raggiungibileVerificare il firewall (ufw status), confermare che il container sia attivo (docker ps)
L’agente non si connetteVerificare la variabile d’ambiente KEY, controllare i log dell’agente (docker logs beszel-agent)
Alto utilizzo discoRidurre l’intervallo di retention nelle impostazioni Beszel
Il container non si avviaControllare i log: docker compose logs beszel

Domande frequenti

Come faccio il backup dei dati Beszel?

L’intero stato di Beszel si trova nel volume Docker beszel_data. Creare un backup del database:

docker exec beszel sqlite3 /beszel_data/beszel.db ".backup /beszel_data/beszel.db.bak"

Poi copiare il file di backup fuori dal server con rsync o scp.

Posso monitorare server Windows con Beszel?

L’agente Beszel supporta Linux, macOS e Windows. Installa il binario Windows e registralo come servizio Windows.

Beszel richiede una connessione internet?

No. Beszel è completamente autonomo. Hub e agenti comunicano solo tra loro, senza chiamate esterne. Funziona perfettamente su una rete privata o VPN.