Come installare Agent Zero su un VPS in sicurezza
Agent Zero esegue codice, browser e shell dalla Web UI. Scopri come installarlo su un VPS e proteggere la porta 50001, esposta per impostazione predefinita.
Cos'è Agent Zero e dove si trova il rischio
Agent Zero è un framework open source per agenti, progettato prima di tutto per Docker. Un agente principale può avviare agenti subordinati, ciascuno in un container Docker isolato. Ogni agente può eseguire codice, controllare un browser ed eseguire comandi shell. L'intero sistema si gestisce tramite un'interfaccia Web. È uno strumento potente e piacevole da usare. Funziona anche su hardware con risorse limitate, come un VPS da sei dollari. Se ti interessa la struttura multi-agente e non il framework, due sessioni di Claude Code sulla stessa macchina possono scambiarsi messaggi direttamente, con un sistema molto più semplice da eseguire e proteggere.
Il rischio è l'interfaccia Web. È il pannello di controllo di un sistema che esegue comandi e scrive file. Un'interfaccia Web esposta e priva di autenticazione offre quindi un punto d'accesso remoto proprio a quel sistema. Ecco la trappola in cui portano direttamente la maggior parte delle guide alla configurazione: la configurazione standard docker run pubblica l'interfaccia sulla porta 50001 su tutte le interfacce di rete. Su un VPS pubblico, questo significa che l'interfaccia è raggiungibile dall'intera Internet non appena il container viene avviato. Correggere questo problema è la prima operazione da eseguire, non l'ultima.
Cosa serve
Servono un VPS con Docker installato, una chiave API per un modello linguistico oppure un modello locale a cui indirizzare le richieste, e almeno un paio di gigabyte di RAM per iniziare. Agent Zero funziona ovunque sia disponibile Docker, da un VPS di piccole dimensioni fino a un server con GPU. Se Docker è una novità, la guida alle nozioni di base di Docker spiega i prerequisiti impliciti nei comandi riportati di seguito.
Installazione con Docker, associata all'interfaccia loopback
La procedura rapida documentata consiste in un singolo docker run. La modifica importante rispetto alla versione da copiare e incollare disponibile altrove riguarda l'indirizzo pubblicato. Non pubblicare il servizio su tutte le interfacce alla porta 50001. Pubblicalo sull'interfaccia loopback:
docker run -d --name agent-zero \
-p 127.0.0.1:5080:80 \
-v a0_usr:/a0/usr \
agent0ai/agent-zero-p 127.0.0.1:5080:80 associa l'interfaccia Web esclusivamente all'indirizzo loopback del server, quindi non è raggiungibile da Internet. Accedivi dal tuo computer tramite un tunnel SSH:
ssh -L 5080:127.0.0.1:5080 you@your-vpsApri quindi http://127.0.0.1:5080 localmente e configura il provider del modello nell'interfaccia. Per una configurazione permanente con più utenti, usa invece una VPN o un reverse proxy con autenticazione, ma non pubblicare mai l'interfaccia grezza su Internet. Questa pratica va applicata anche agli altri strumenti presenti sul server la cui interfaccia consente di controllare funzioni sensibili: è così che va raggiunto anche uno scanner open-kritt self-hosted, tramite un tunnel verso la relativa interfaccia anziché attraverso una porta pubblicata.
Dove si fermano le altre guide e perché non dovresti farlo
Cerca come installare Agent Zero e troverai numerose guide, comprese quelle dei provider di hosting, che ti portano a una Web UI funzionante sulla porta 50001 e si fermano lì. È esattamente il punto in cui inizia il rischio, non quello in cui finisce. Per completare la configurazione servono due interventi. Primo: mantieni privata la UI, come indicato sopra. Secondo: configura un firewall con criterio di rifiuto predefinito davanti al server, così un container configurato in modo errato o un errore futuro non potranno esporre una porta dimenticata:
sudo ufw default deny incoming
sudo ufw allow 22/tcp
sudo ufw enablePer una visione completa, consulta le nozioni di base sul firewall e considera il problema di IPv6, perché un servizio su :: è raggiungibile tramite IPv6 anche quando le regole IPv4 sembrano restrittive.
L’isolamento dei container protegge gli agenti, non il server
Il design di Agent Zero gestisce in modo efficace un tipo di isolamento: gli agenti subordinati vengono eseguiti in container separati, quindi sono isolati gli uni dagli altri. È una caratteristica utile. Tuttavia, è facile interpretarla come «l’agente è in una sandbox, quindi sono al sicuro» e fermarsi a questa conclusione. L’isolamento dei container protegge gli agenti gli uni dagli altri. Non protegge il server da Internet e non impedisce a una Web UI esposta di trasferire il controllo a un estraneo. Questi aspetti devono essere gestiti da te, sull’host. Decidi in anticipo che cosa può fare un agente mentre nessuno lo controlla, applicando lo stesso criterio usato per le modalità di autorizzazione di Claude Code, in cui un server non presidiato richiede un’impostazione più restrittiva rispetto al laptop che usi direttamente.
Secret, utenti e host
Conserva la chiave API del modello e tutte le altre credenziali nella configurazione di Agent Zero o in un file di ambiente leggibile soltanto dall'account autorizzato. Tienile fuori dalla cronologia della shell e da qualsiasi repository. Lo stesso principio vale per tutti gli altri componenti dell'host che proteggono i secret, perché un intervento di hardening su Vaultwarden riguarda soprattutto il token amministrativo e il file di backup, non la crittografia che l'applicazione gestisce già correttamente. Amministra l'host con un utente senza privilegi invece che con root, come indicato in utenti con privilegi minimi, e configura SSH per accettare soltanto l'autenticazione tramite chiave, come descritto in hardening di SSH. Poi verifica la checklist seguente per non tralasciare nulla.
Se stai confrontando gli agent, questa è la stessa postura di sicurezza adottata dalla guida all'hardening di OpenClaw e dalla guida a OpenHands: mantieni privata la superficie di controllo, esegui il servizio con un utente senza privilegi, applica il firewall per impostazione predefinita e considera l'host come un sistema che esegue codice non scritto da te. Per un confronto affiancato di tutti e cinque gli agent, consulta i migliori agent AI self-hosted nel 2026.
I concetti alla base di tutte queste soluzioni sono descritti in creare il proprio agent AI su un VPS, mentre Dify è un'altra piattaforma self-hostable che vale la pena confrontare.
FAQ
Agent Zero è sicuro da eseguire in self-hosting?
Sì, se mantieni privata la relativa Web UI e metti in sicurezza l'host. Agent Zero esegue codice, un browser e una shell, ed è controllato tramite una Web UI pubblicata per impostazione predefinita sulla porta 50001. Il rischio deriva quindi dall'interfaccia esposta, non dal framework in sé. Associa la UI all'interfaccia di loopback e raggiungila tramite SSH o una VPN, configura un firewall con criterio predefinito di diniego e avvia il servizio con un utente senza privilegi.
Agent Zero espone per impostazione predefinita una Web UI a Internet?
La configurazione standard docker run pubblica l'interfaccia sulla porta 50001 su tutte le interfacce di rete. Su un VPS pubblico, l'interfaccia è quindi raggiungibile da Internet non appena il container viene avviato. Modifica l'indirizzo pubblicato in 127.0.0.1, in modo che la UI resti in ascolto soltanto su loopback, quindi raggiungila tramite un tunnel SSH o una VPN.
Agent Zero può essere eseguito su un VPS di piccole dimensioni?
Sì. Agent Zero può essere eseguito ovunque sia disponibile Docker, incluso un VPS piccolo ed economico, anche se le attività più pesanti e i modelli locali più grandi richiedono più memoria. Se lo configuri per usare un modello self-hosted invece di un'API ospitata, dimensiona il server in base al modello, non soltanto in base ai requisiti di Agent Zero.
Qual è la differenza tra Agent Zero, OpenClaw e Hermes?
Le funzionalità si sovrappongono, ma gli obiettivi sono diversi. Agent Zero è un framework basato su Docker, incentrato su un agente principale che avvia agenti subordinati in container isolati e viene controllato tramite una Web UI. OpenClaw e Hermes sono assistenti personali che si utilizzano tramite applicazioni di chat. Il livello di sicurezza è lo stesso per tutti: mantieni privata la superficie di controllo e metti in sicurezza l'host.