Quando metti OpenClaw in produzione, la sicurezza del traffico in uscita (egress) dai server MCP è fondamentale. Ho passato l'ultima settimana a blindare i miei agenti e configurare un proxy egress Envoy con una allowlist rigorosa è il modo migliore per prevenire chiamate non autorizzate.
Cos'è l'Envoy Egress Proxy in OpenClaw MCP?
Il proxy egress Envoy è un livello di sicurezza che intercetta tutto il traffico in uscita da un server Model Context Protocol (MCP) di OpenClaw. Invece di permettere all'agente di connettersi liberamente a qualsiasi endpoint su internet, Envoy funge da guardiano.
Di default, una configurazione aperta espone la tua infrastruttura a esfiltrazione di dati o costi imprevisti sulle API. L'allowlist assicura che l'agente comunichi solo con gli endpoint esplicitamente approvati.
Vuoi automatizzare il tuo business con l'AI?
Aiuto piccole e medie imprese italiane a integrare agenti AI nei processi quotidiani. Parliamone.
Perché ti serve un'allowlist per MCP
Eseguire agenti AI, specialmente in cloud, introduce un nuovo vettore di attacco: l'agente stesso. Se un agente viene compromesso da un prompt malevolo, potrebbe tentare di inviare contesti sensibili a un server di terze parti. Una allowlist Envoy blocca questo rischio a livello di rete.
Questo approccio garantisce una solida architettura zero-trust, assicurando che i tuoi agenti comunichino solo con destinazioni note, come la tua istanza locale di Ollama o la knowledge base aziendale.
Configurazione di Envoy passo per passo
Step 1: Definire il cluster Envoy
Per prima cosa, devi dichiarare i cluster consentiti nel tuo file di configurazione (envoy.yaml).
clusters:
- name: allowed_api_cluster
connect_timeout: 5s
type: STRICT_DNS
lb_policy: ROUND_ROBIN
load_assignment:
cluster_name: allowed_api_cluster
endpoints:
- lb_endpoints:
- endpoint:
address:
socket_address:
address: api.your-approved-service.com
port_value: 443Step 2: Configurare la route allowlist
Successivamente, mappa i listener per far passare solo domini specifici. Qualsiasi richiesta che non corrisponde a queste regole riceverà un errore HTTP 403 Forbidden.
listeners:
- name: egress_listener
address:
socket_address:
address: 0.0.0.0
port_value: 10000
filter_chains:
- filters:
- name: envoy.filters.network.http_connection_manager
typed_config:
"@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
stat_prefix: egress_http
route_config:
name: local_route
virtual_hosts:
- name: backend
domains: ["*"]
routes:
- match:
prefix: "/"
headers:
- name: ":authority"
exact_match: "api.your-approved-service.com"
route:
cluster: allowed_api_clusterTest e validazione dell'allowlist
Dopo aver applicato la configurazione, il test è molto semplice. Avvia il proxy e usa curl per verificare che le restrizioni siano attive.
Una richiesta valida verso un dominio consentito:
curl -v -x http://localhost:10000 https://api.your-approved-service.com/status
# Risultato atteso: HTTP 200 OKUna richiesta bloccata verso un dominio non autorizzato:
curl -v -x http://localhost:10000 https://example.com
# Risultato atteso: HTTP 403 ForbiddenControllando i log del server OpenClaw, vedrai le richieste bloccate segnalate chiaramente da Envoy, confermando che il tuo server MCP è al sicuro.
Domande frequenti
Envoy aggiunge latenza alle richieste OpenClaw MCP?
Envoy è estremamente ottimizzato e in genere aggiunge meno di un millisecondo di latenza. I vantaggi in termini di sicurezza superano di gran lunga questo impatto trascurabile.
Posso usare indirizzi IP dinamici nell'allowlist?
Sì, Envoy supporta STRICT_DNS e LOGICAL_DNS, che risolvono e aggiornano automaticamente gli IP per i domini in allowlist senza dover riavviare il proxy.
Funziona anche con istanze Ollama locali?
Certamente. Puoi ruotare il traffico verso localhost:11434 o il gateway della tua rete Docker per assicurarti che OpenClaw comunichi esclusivamente con i tuoi modelli locali.
Conclusione
Configurare un proxy egress Envoy è un passaggio obbligatorio per un deployment OpenClaw in produzione. Garantisce che i tuoi agenti AI rimangano confinati all'interno del perimetro di rete che hai definito.
Scritto da Matteo Giardino, CTO e founder. Costruisco agenti AI per piccole e medie imprese in Italia. I miei progetti.
