Casi d'uso di API Gateway - Amazon Virtual Private Cloud

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Casi d'uso di API Gateway

Di seguito sono riportati casi di utilizzo di esempio per gateway NAT pubblici e privati.

Accesso a Internet da una sottorete privata

È possibile utilizzare un gateway NAT pubblico per consentire alle istanze in una sottorete privata di inviare il traffico in uscita a Internet, e, allo stesso tempo, impedire a Internet di stabilire connessioni alle istanze.

Panoramica

Il diagramma seguente illustra questo caso d'uso. Ci sono due zone di disponibilità, con due sottoreti in ciascuna di esse. La tabella di instradamento per ogni sottorete determina il modo in cui viene instradato il traffico. Nella zona di disponibilità A, le istanze nella sottorete pubblica possono connettersi a Internet attraverso un routing al gateway Internet, mentre le istanze nella sottorete privata non possiedono alcun routing verso Internet. Nella zona di disponibilità B, la sottorete pubblica contiene un gateway NAT. Le istanze nella sottorete privata possono raggiungere Internet attraverso un routing che le conduce al gateway NAT nella sottorete pubblica. I gateway NAT sia privati sia pubblici associano l'indirizzo IPv4 privato di origine delle istanze all'indirizzo IPv4 privato del gateway NAT privato, tuttavia nel caso di un gateway NAT pubblico, il gateway Internet associa l'indirizzo IPv4 privato del gateway NAT pubblico all'indirizzo IP elastico associato al gateway NAT. Quando invia traffico di risposta alle istanze, il gateway NAT converte l'indirizzo nell'indirizzo IP iniziale dell'origine, a prescindere dal fatto che il gateway NAT sia pubblico o privato.


            Un VPC con sottoreti pubbliche e private, un gateway NAT e un gateway Internet.

Tieni presente che se le istanze nella sottorete privata nella zona di disponibilità A devono raggiungere anche Internet, puoi creare un percorso da questa sottorete al gateway NAT nella zona di disponibilità B. In alternativa, puoi migliorare la resilienza creando un gateway NAT in ogni zona di disponibilità contenente le risorse che richiedono l'accesso a Internet. Per un diagramma di esempio, consulta la pagina Esempio: VPC con server in sottoreti private e NAT.

Routing

Di seguito è riportata la tabella di instradamento associata alla sottorete pubblica nella zona di disponibilità A. La prima voce si riferisce al routing locale, che consente alle istanze nella sottorete di comunicare con altre istanze nel VPC utilizzando indirizzi IP privati. La seconda voce invia tutto il traffico rimanente della sottorete al gateway Internet. In questo modo le istanze della sottorete possono accedere a Internet.

Destinazione Target
CIDR VPC locale
0.0.0.0/0 internet-gateway-id

Di seguito è riportata la tabella di instradamento associata alla sottorete privata nella zona di disponibilità A. La voce è la route locale, che consente alle istanze nella sottorete di comunicare con altre istanze nel VPC utilizzando gli indirizzi IP privati. Le istanze in questa sottorete non hanno accesso a Internet.

Destinazione Target
CIDR VPC local

Di seguito è riportata la tabella di instradamento associata alla sottorete pubblica nella zona di disponibilità B. La prima voce si riferisce alla route locale, che consente alle istanze nella sottorete di comunicare tra loro nel VPC utilizzando indirizzi IP privati. La seconda voce invia tutto il traffico rimanente della sottorete al gateway Internet. In questo modo il gateway NAT può accedere a Internet.

Destinazione Target
CIDR VPC locale
0.0.0.0/0 internet-gateway-id

Di seguito è riportata la tabella di instradamento associata alla sottorete privata nella zona di disponibilità B. La prima voce è quella predefinita per il routing locale, che consente alle istanze nella sottorete di comunicare tra loro nel VPC utilizzando indirizzi IP privati. La seconda voce invia tutto il traffico rimanente della sottorete al gateway NAT.

Destinazione Target
CIDR VPC locale
0.0.0.0/0 nat-gateway-id

Per ulteriori informazioni, consulta Utilizzo delle tabelle di routing.

Test del gateway NAT pubblico

Dopo aver creato il gateway NAT e aggiornato le tabelle di routing, puoi eseguire il ping di alcuni indirizzi remoti su Internet da un'istanza nella sottorete privata per verificare se può connettersi a Internet. Per un esempio su come Eseguire questa operazione, consulta Test della connessione Internet.

Se è disponibile una connessione a Internet, puoi anche verificare se il traffico Internet viene instradato attraverso il gateway NAT:

  • Puoi monitorare il routing del traffico da un'istanza nella sottorete privata. A questo scopo, esegui il comando traceroute da un'istanza Linux nella sottorete privata. Nell'output, l'indirizzo IP privato del gateway NAT dovrebbe essere visibile in uno degli hop (di solito il primo).

  • Quando esegui la connessione da un'istanza nella sottorete privata, utilizza un sito Web o uno strumento di terze parti che visualizza l'indirizzo IP di origine. L'indirizzo IP di origine deve essere l'indirizzo IP elastico del gateway NAT.

Se questi test non vanno a buon fine, consulta Risoluzione dei problemi relativi ai gateway NAT.

Test della connessione Internet

Nell'esempio seguente viene illustrato come eseguire il test se un'istanza in una sottorete privata può connettersi a Internet.

  1. Avvia un'istanza nella sottorete pubblica (utilizzala come un host bastione). Nella procedura guidata di avvio, assicurati di selezionare un'AMI Amazon Linux e assegna un indirizzo IP pubblico all'istanza. Verifica che le regole del gruppo di sicurezza consentano il traffico SSH in entrata da un intervallo di indirizzi IP per la rete locale SSH in uscita all'intervallo di indirizzi IP della sottorete privata (puoi anche utilizzare 0.0.0.0/0 per il traffico SSH in entrata e in uscita di questo test)..

  2. Avvia un'istanza nella sottorete privata. Nella procedura guidata di avvio, assicurati di selezionare un'AMI Amazon Linux. Non assegnare un indirizzo IP pubblico all'istanza. Verifica che le regole del gruppo di sicurezza consentano il traffico SSH in entrata dall'indirizzo IP privato all'istanza avviata nella sottorete pubblica e tutto il traffico ICMP in uscita. Devi scegliere la coppia di chiavi utilizzata per avviare l'istanza nella sottorete pubblica.

  3. Configura l'inoltro agente SSH sul computer locale ed esegui la connessione all'host bastione nella sottorete pubblica. Per ulteriori informazioni, consulta Per configurare l'inoltro agente SSH per Linux o macOS o Per configurare l'inoltro agente SSH per Windows.

  4. Dall'host bastione, esegui la connessione all'istanza nella sottorete privata, quindi esegui il test della connessione Internet dall'istanza nella sottorete privata. Per ulteriori informazioni, consulta Per eseguire il test della connessione Internet.

Per configurare l'inoltro agente SSH per Linux o macOS
  1. Dal computer locale, aggiungere la chiave privata all'agente di autenticazione.

    Per Linux, utilizzare il comando seguente:

    ssh-add -c mykeypair.pem

    Per macOS, utilizzare il comando seguente:

    ssh-add -K mykeypair.pem
  2. Eseguire la connessione all'istanza nella sottorete pubblica utilizzando l'opzione -A per abilitare l'inoltro agente SSH e utilizzare l'indirizzo pubblico dell'istanza, come indicato nell'esempio seguente.

    ssh -A ec2-user@54.0.0.123
Per configurare l'inoltro agente SSH per Windows

È possibile utilizzare il client OpenSSH, disponibile in Windows, o installare il client SSH preferito (ad esempio PuTTY).

OpenSSH

Installa OpenSSH per Windows come descritto in questo articolo: Guida introduttiva a OpenSSH per Windows. Quindi aggiungi la tua chiave all'agente di autenticazione. Per ulteriori informazioni, consulta Autenticazione basata su chiavi in OpenSSH per Windows.

PuTTY
  1. Scaricare e installare Pageant dalla pagina di download PuTTY, se non è già installato.

  2. Convertire la chiave privata in formato .ppk. Per maggiori informazioni, consulta Conversione della chiave privata utilizzando PuTTYgen nella Guida dell'utente di Amazon EC2 per le istanze Linux.

  3. Avviare Pageant, fare clic con il tasto destro del mouse del mouse sull'icona Pageant nella barra delle applicazioni (potrebbe Essere nascosta), quindi selezionare Add Key (Aggiungi chiave). Selezionare il file .ppk creato, digitare la passphrase se necessario e scegliere Open (Apri).

  4. Avviare una sessione PuTTY e connettersi all'istanza nella sottorete pubblica utilizzando il suo indirizzo IP pubblico. Per ulteriori informazioni, consulta Connessione all'istanza Linux. Nella categoria Auth, accertarsi di selezionare l'opzione Allow agent forwarding (Consenti inoltro agente) e lasciare vuota la casella Private key file for authentication (File chiave privata per autenticazione).

Per eseguire il test della connessione Internet
  1. Dall'istanza nella sottorete pubblica, connettersi all'istanza nella sottorete privata utilizzando il relativo indirizzo IP privato, come indicato nell'esempio seguente.

    ssh ec2-user@10.0.1.123
  2. Dall'istanza privata, verificare che sia possibile connettersi a Internet eseguendo il comando ping per un sito Web con ICMP abilitato.

    ping ietf.org
    PING ietf.org (4.31.198.44) 56(84) bytes of data. 64 bytes from mail.ietf.org (4.31.198.44): icmp_seq=1 ttl=47 time=86.0 ms 64 bytes from mail.ietf.org (4.31.198.44): icmp_seq=2 ttl=47 time=75.6 ms ...

    Premere Ctrl+C sulla tastiera per annullare il comando ping. Se il comando ping non riesce, consulta Le istanze non possono accedere a Internet.

  3. (Facoltativo) Se le istanze non sono più richieste, terminarle. Per ulteriori informazioni, consulta Termina l'istanza nella Guida per l'utente di Amazon EC2 per le istanze Linux.

Accedere alla rete utilizzando gli indirizzi IP consentiti riportati

È possibile utilizzare un gateway NAT privato per abilitare la comunicazione dai VPC alla rete locale utilizzando un pool di indirizzi consentiti. Anziché assegnare a ciascuna istanza un indirizzo IP indipendente dall'intervallo di indirizzi IP consentito, è possibile instradare il traffico dalla sottorete destinata alla rete locale attraverso un gateway NAT privato con un indirizzo IP dall'intervallo di indirizzi IP consentito.

Panoramica

Il diagramma seguente mostra in che modo le istanze possono accedere alle risorse locali tramite. AWS VPN Il traffico proveniente dalle istanze viene instradato verso un gateway virtuale privato, tramite la connessione VPN, al gateway del cliente e quindi alla destinazione nella rete locale. Tuttavia, supponiamo che la destinazione consenta il traffico solo da un intervallo di indirizzi IP specifico, ad esempio 100.64.1.0/28. Ciò impedirebbe al traffico proveniente da queste istanze di raggiungere la rete locale.


            Accesso a una rete locale tramite una connessione. AWS VPN

Il seguente diagramma illustra i componenti principali della configurazione di questo scenario. Il VPC ha il proprio intervallo di indirizzi IP originale e l'intervallo di indirizzi IP consentito. Il VPC ha una sottorete dall'intervallo di indirizzi IP consentito con un gateway NAT privato. Il traffico proveniente dalle istanze destinate alla rete locale viene inviato al gateway NAT prima di essere instradato alla connessione VPN. La rete in locale riceve il traffico dalle istanze con l'indirizzo IP di origine del gateway NAT, che proviene dall'intervallo di indirizzi IP consentito.


            Il traffico proveniente dalla sottorete VPC viene instradato attraverso un gateway NAT privato utilizzando l'indirizzo IP del gateway NAT come indirizzo di origine.

Risorse

Creare o aggiornare le risorse come di seguito:

  • Associare l'intervallo di indirizzi IP consentito al VPC.

  • Creare una sottorete nel VPC dall'intervallo di indirizzi IP consentito.

  • Creare un gateway NAT privato nella nuova sottorete.

  • Aggiornare la tabella di instradamento per la sottorete con le istanze per inviare il traffico destinato alla rete locale al gateway NAT. Aggiungere una route alla tabella di instradamento per la sottorete con il gateway NAT privato che invia il traffico destinato alla rete locale al gateway virtuale privato.

Routing

Di seguito è riportata la tabella di instradamento associata alla prima sottorete. Esiste un routing locale per ciascun CIDR VPC. Le route locali consentono alle risorse nella sottorete di comunicare con altre risorse nel VPC tramite gli indirizzi IP privati. La terza voce invia il traffico destinato alla rete locale al gateway NAT privato.

Destinazione Target
10.0.0.0/16 locale
100,64,1,0/24 local
192.168.0.0/16 nat-gateway-id

Di seguito è riportata la tabella di instradamento associata alla seconda sottorete. Esiste un routing locale per ciascun CIDR VPC. Le route locali consentono alle risorse nella sottorete di comunicare con altre risorse nel VPC tramite gli indirizzi IP privati. La terza voce invia il traffico destinato alla rete locale al gateway virtuale privato.

Destinazione Target
10,0,0/16 locale
100,64,1,0/24 local
192.168.0.0/16 vgw-id

Abilitare la comunicazione tra reti sovrapposte

È possibile utilizzare un gateway NAT privato per abilitare la comunicazione tra le reti anche se hanno intervalli CIDR sovrapposti. Ad esempio, supponiamo che le istanze in VPC A debbano accedere ai servizi forniti dalle istanze in VPC B.


          Due VPC con gamme CIDR sovrapposte.

Panoramica

Il seguente diagramma illustra i componenti principali della configurazione di questo scenario. Innanzitutto, il team di gestione IP determina quali intervalli di indirizzi possono sovrapporsi (intervalli di indirizzi non instradabili) e quali no (intervalli di indirizzi instradabili). Il team di gestione IP assegna intervalli di indirizzi dal pool di intervalli di indirizzi instradabili ai progetti su richiesta.

Ogni VPC ha il suo intervallo di indirizzi IP originale, che non è instradabile, oltre all'intervallo di indirizzi IP instradabili assegnato dal team di gestione IP. VPC A ha una sottorete dal suo intervallo instradabile con un gateway NAT privato. Il gateway NAT privato ottiene il suo indirizzo IP dalla sottorete. VPC B ha una sottorete dal suo intervallo instradabile tramite Application Load Balancer. Application Load Balancer ottiene gli indirizzi IP dalle sottoreti.

Il traffico proveniente da un'istanza nella sottorete non instradabile del VPC A destinata alle istanze nella sottorete non instradabile di VPC B viene inviato attraverso il gateway NAT privato e quindi instradato al gateway di transito. Il gateway di transito invia il traffico all'Application Load Balancer, che instrada il traffico verso una delle istanze di destinazione nella sottorete non instradabile di VPC B. Il traffico dal gateway di transito al sistema di bilanciamento del carico dell'applicazione ha l'indirizzo IP di origine del gateway NAT privato. Pertanto, il traffico di risposta proveniente dal load balancer utilizza l'indirizzo del gateway NAT privato come destinazione. Il traffico di risposta viene inviato al gateway di transito e quindi instradato al gateway NAT privato, che converte la destinazione nell'istanza nella sottorete non instradabile di VPC A.


            Un VPC con gateway NAT privato e gateway di transito per consentire la comunicazione tra i VPC con un CIDR sovrapposto.

Risorse

Creare o aggiornare risorse nel modo seguente:

  • Associare gli intervalli di indirizzi IP instradabili assegnati ai rispettivi VPC.

  • Creare una sottorete in VPC A dal suo intervallo di indirizzi IP instradabili e creare un gateway NAT privato in questa nuova sottorete.

  • Creare una sottorete in VPC B dall'intervallo di indirizzi IP instradabili e creare un Application Load Balancer in questa nuova sottorete. Registrare le istanze nella sottorete non instradabile con il gruppo di destinazione per il load balancer.

  • Creare un gateway di transito per connettere i VPC. Accertarsi di disabilitare la propagazione di route. Quando si connette ciascun VPC al gateway di transito, utilizzare l'intervallo di indirizzi instradabili del VPC.

  • Aggiornare la tabella di instradamento della sottorete non instradabile in VPC A per inviare tutto il traffico destinato all'intervallo di indirizzi instradabili di VPC B al gateway NAT privato. Aggiornare la tabella di instradamento della sottorete instradabile in VPC A per inviare tutto il traffico destinato all'intervallo di indirizzi instradabili del VPC B al gateway di transito.

  • Aggiornare la tabella di instradamento della sottorete instradabile in VPC B per inviare tutto il traffico destinato all'intervallo di indirizzi instradabili del VPC A al gateway di transito.

Routing

La seguente è la tabella di instradamento per la sottorete non instradabile nel VPC A.

Destinazione Target
10,0,0/16 locale
100,64,1,0/24 local
100,64,2,0/24 nat-gateway-id

La seguente è la tabella di instradamento per la sottorete instradabile nel VPC A.

Destinazione Target
10,0,0/16 locale
100,64,1,0/24 local
100,64,2,0/24 transit-gateway-id

La seguente è la tabella di instradamento per la sottorete non instradabile nel VPC B.

Destinazione Target
10,0,0/16 locale
100,64,2,0/24 local

La seguente è la tabella di instradamento per la sottorete instradabile nel VPC B.

Destinazione Target
10,0,0/16 locale
100,64,2,0/24 local
100,64,1,0/24 transit-gateway-id

Di seguito è riportata la tabella di instradamento del gateway di transito.

CIDR Collegamento Tipo di routing
100,64,1,0/24 Collegamento per VPC A Statico
100,64,2,0/24 Collegamento per VPC B Statico