---
title: Sicurezza dei tunnel MCP
url: https://platform.claude.com/docs/it/agents-and-tools/mcp-tunnels/security
description: Linee guida per l'hardening, rotazione delle credenziali, risposta alle violazioni e dismissione per le distribuzioni di tunnel MCP.
---

<Note>
  I "MCP tunnels" (tunnel MCP) sono in "research preview" (anteprima di ricerca). [Richiedi l'accesso](https://claude.com/form/mcp-tunnels) per provarli.
</Note>

L'architettura del tunnel fornisce impostazioni predefinite robuste (connettività solo in uscita, crittografia end-to-end e validazione degli IP), ma la sicurezza complessiva del tuo [tunnel stack](https://platform.claude.com/docs/it/agents-and-tools/mcp-tunnels/concepts#components) (stack del tunnel) dipende anche da come lo configuri e lo gestisci. Questa pagina tratta l'hardening consigliato, la risposta alle violazioni e come dismettere un tunnel.

## Best practice

* **Richiedi OAuth su ogni server MCP.** Configura ogni [server MCP upstream](https://platform.claude.com/docs/it/agents-and-tools/mcp-tunnels/concepts#components) in modo che richieda OAuth come descritto nella [specifica di autorizzazione MCP](https://modelcontextprotocol.io/specification/2025-11-25/basic/authorization). OAuth fornisce una difesa in profondità in aggiunta all'autenticazione di trasporto del tunnel e abilita l'autorizzazione a livello di utente nel livello dati.
* **Abilita SSO per la tua organizzazione.** Tunnel, regole di federazione e account di servizio sono gestiti nella Claude Console. SSO applica i controlli di sessione del tuo identity provider agli amministratori che possono modificarli.
* **Limita `upstream.allowed_ips`.** Usa gli intervalli CIDR più piccoli che coprono i tuoi server MCP. Questa è la principale difesa contro SSRF del [proxy](https://platform.claude.com/docs/it/agents-and-tools/mcp-tunnels/concepts#components).
* **Monitora i log.** Imposta avvisi su warning, errori e pattern di traffico insoliti provenienti dallo stack del tunnel.
* **Ruota le credenziali.** Ruota il certificato del server e il token del tunnel a intervalli regolari, e immediatamente se sospetti una compromissione.
* **Mantieni aggiornate le immagini.** Tieni traccia delle nuove release del proxy e fissa le immagini tramite digest SHA-256.
* **Limita la raggiungibilità di rete.** Il proxy e [cloudflared](https://platform.claude.com/docs/it/agents-and-tools/mcp-tunnels/concepts#components) dovrebbero poter raggiungere solo le destinazioni elencate nei [requisiti di rete](https://platform.claude.com/docs/it/agents-and-tools/mcp-tunnels/overview#network-requirements). Usa NetworkPolicy (Kubernetes) o regole firewall dell'host (Compose).
* **Limita l'ambito dei server MCP.** Ogni server dovrebbe esporre solo gli strumenti e i dati necessari per il suo scopo.
* **Proteggi le credenziali a riposo.** Applica le pratiche di gestione dei segreti della tua organizzazione alle chiavi private e ai token del tunnel.

## Rispondere a una sospetta violazione

Se ritieni che il token del tunnel, le chiavi TLS o l'host del proxy siano stati compromessi:

<Steps>
  <Step title="Arresta lo stack del tunnel">
    <Tabs>
      <Tab title="Helm">
        ```bash
        helm uninstall mcp-tunnel -n mcp-tunnel
        ```
      </Tab>

      <Tab title="Docker Compose">
        ```bash
        docker compose down --timeout 0
        ```
      </Tab>
    </Tabs>
  </Step>

  <Step title="Scollega i server MCP upstream">
    Rimuovi i server MCP upstream da tutte le sessioni Managed Agent che li utilizzano e smetti di passare i loro URL nel blocco `mcp_servers` delle richieste alla Messages API.
  </Step>

  <Step title="Archivia il tunnel">
    L'archiviazione invalida il token del tunnel e scollega il dominio. Nella Console, [archivia il tunnel](https://platform.claude.com/docs/it/agents-and-tools/mcp-tunnels/console#archive-a-tunnel) dall'elenco **MCP tunnels**. Per archiviare tramite l'API, consulta invece [Archiviare un tunnel](https://platform.claude.com/docs/it/api/beta/tunnels/archive).
  </Step>

  <Step title="Contatta Anthropic">
    Segnala la sospetta compromissione al supporto Anthropic.
  </Step>

  <Step title="Ruota le credenziali downstream">
    Esegui nuovamente il provisioning di un nuovo tunnel e ruota tutti i token OAuth emessi dai server MCP interessati.
  </Step>

  <Step title="Esamina i log prima di ripristinare il servizio">
    Ispeziona i log del proxy, di cloudflared e dei server MCP relativi alla finestra temporale della sospetta compromissione prima di mettere online il nuovo tunnel.
  </Step>
</Steps>

## Dismettere un tunnel

Segui questi passaggi per dismettere un tunnel e rimuovere tutte le credenziali memorizzate.

<Steps>
  <Step title="Arresta lo stack del tunnel">
    <Tabs>
      <Tab title="Helm">
        ```bash
        helm uninstall mcp-tunnel -n mcp-tunnel
        ```
      </Tab>

      <Tab title="Docker Compose">
        ```bash
        docker compose down
        ```
      </Tab>
    </Tabs>
  </Step>

  <Step title="Archivia il tunnel">
    Nella Console, [archivia il tunnel](https://platform.claude.com/docs/it/agents-and-tools/mcp-tunnels/console#archive-a-tunnel) dall'elenco **MCP tunnels**.
  </Step>

  <Step title="Rimuovi le credenziali memorizzate">
    <Tabs>
      <Tab title="Helm">
        Con l'accesso programmatico, il componente di setup ha creato un singolo Secret con il nome della release. Senza accesso programmatico, hai creato tu stesso `mcp-tunnel-token` e `mcp-tunnel-cert`. Elimina quelli applicabili:

        ```bash
        kubectl -n mcp-tunnel delete secret \
          mcp-tunnel mcp-tunnel-token mcp-tunnel-cert \
          --ignore-not-found
        ```
      </Tab>

      <Tab title="Docker Compose">
        Le chiavi private e i certificati si trovano in `data/`. Il token del tunnel si trova in `data/tunnel-token` (flusso programmatico) o nell'ambiente della tua shell (flusso manuale). La directory `config/` e `docker-compose.yaml` non contengono segreti; conservali se prevedi di eseguire nuovamente il provisioning, oppure rimuovili anch'essi.

        ```bash
        sudo rm -rf data
        ```
      </Tab>
    </Tabs>
  </Step>
</Steps>
