

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à.

# Tutorial: Invio di un messaggio a una coda Amazon SQS da Amazon Virtual Private Cloud
<a name="sqs-sending-messages-from-vpc"></a>

Questo tutorial mostra come inviare messaggi a una coda Amazon SQS su una rete privata sicura. La rete include:
+ Un VPC contenente un'istanza Amazon EC2.
+ Un endpoint VPC di interfaccia, che consente all'istanza Amazon EC2 di connettersi ad Amazon SQS senza utilizzare la rete Internet pubblica.

Anche in una rete completamente privata, puoi connetterti all'istanza Amazon EC2 e inviare messaggi alla coda Amazon SQS. Per ulteriori informazioni, consulta [Endpoint di Amazon Virtual Private Cloud per Amazon SQS](sqs-internetwork-traffic-privacy.md#sqs-vpc-endpoints).

**Importante**  
Puoi utilizzare Amazon Virtual Private Cloud solo con endpoint Amazon SQS HTTPS.
Quando configuri Amazon SQS per inviare messaggi da Amazon VPC, devi abilitare il DNS privato e specificare gli endpoint nel formato `sqs.us-east-2.amazonaws.com` o per l'endpoint dual-stack. `sqs.us-east-2.api.aws`
Amazon SQS supporta anche gli endpoint FIPS tramite l' PrivateLink utilizzo del servizio endpoint. `com.amazonaws.region.sqs-fips` Puoi connetterti agli endpoint FIPS nel formato. `sqs-fips.region.amazonaws.com`
Quando si utilizza l'endpoint dual-stack in Amazon Virtual Private Cloud, le richieste verranno inviate utilizzando e. IPv4 IPv6
Il DNS privato non supporta endpoint precedenti come `queue.amazonaws.com` o `us-east-2.queue.amazonaws.com`.

## Fase 1: Creazione di una coppia di chiavi di Amazon EC2
<a name="create-ec2-key-pair"></a>

Una *coppia di chiavi* consente di effettuare la connessione a un'istanza Amazon EC2. È costituita da una chiave pubblica per la crittografia delle informazioni di accesso e una chiave privata per decrittografare tali informazioni.

1. Accedi alla [console Amazon EC2](https://console.aws.amazon.com/ec2/).

1. Nel menu di navigazione, in **Network & Security (Rete e sicurezza)**, scegliere **Key Pairs (Coppie di chiavi)**.

1. Scegli **Crea coppia di chiavi**.

1. Nella finestra di dialogo **Create Key Pair (Crea coppia di chiavi)**, per **Key pair name (Nome coppia di chiavi)**, immettere `SQS-VPCE-Tutorial-Key-Pair`, quindi scegliere **Create (Crea)**.

1. Il browser scarica automaticamente il file della chiave privata `SQS-VPCE-Tutorial-Key-Pair.pem`. 
**Importante**  
Salvare il file in un percorso sicuro. EC2 non genera un secondo file `.pem` per la stessa coppia di chiavi.

1. Per consentire a un client SSH di connettersi all'istanza EC2, impostare le autorizzazioni per il file della chiave privata in modo che solo l'utente specificato abbia le relative autorizzazioni in lettura. Ad esempio:

   ```
   chmod 400 SQS-VPCE-Tutorial-Key-Pair.pem
   ```

## Fase 2: Creare risorse AWS
<a name="create-aws-resources"></a>

Per configurare l'infrastruttura necessaria, è necessario utilizzare un CloudFormation *modello*, che è un modello per la creazione di uno *stack* composto da AWS risorse, come istanze Amazon EC2 e code Amazon SQS.

Lo stack per questo tutorial include le risorse seguenti:
+ Un VPC e le risorse di rete associate, tra cui una sottorete, un gruppo di sicurezza, un gateway Internet e una tabella di routing
+ Un'istanza Amazon EC2 avviata nella sottorete VPC
+ Una coda Amazon SQS

 

1. Scarica il CloudFormation modello denominato [https://github.com/aws-samples/amazon-sqs-samples/blob/master/templates/SQS-VPCE-Tutorial-CloudFormation.yaml](https://github.com/aws-samples/amazon-sqs-samples/blob/master/templates/SQS-VPCE-Tutorial-CloudFormation.yaml)da. GitHub

1. Accedere alla [console CloudFormation](https://console.aws.amazon.com/cloudformation/).

1. Scegli **Create Stack** (Crea stack).

1. Nella pagina **Select Template (Seleziona modello)**, scegliere **Upload a template to Amazon S3 (Carica un modello in Amazon S3)**, selezionare il file `SQS-VPCE-SQS-Tutorial-CloudFormation.yaml`, quindi scegliere **Next (Successivo)**.

1. Nella pagina **Specify Details** (Specifica dettagli), procedi come segue:

   1. In **Nome stack**, immetti `SQS-VPCE-Tutorial-Stack`.

   1. Per **KeyName**, scegliete **SQS-VPCE-Tutorial-Key-Pair**.

   1. Scegli **Next (Successivo)**.

1. Nella pagina **Opzioni**, scegli **Avanti**.

1. **Nella pagina **Revisione**, nella sezione **Funzionalità**, scegli Riconosco che potrebbe creare risorse IAM con nomi personalizzati. AWS CloudFormation ** , quindi scegli **Crea**.

CloudFormation inizia a creare lo stack e visualizza lo stato **CREATE\$1IN\$1PROGRESS**. Al termine del processo, CloudFormation mostra lo stato **CREATE\$1COMPLETE**.

## Fase 3: Verifica del fatto che l'istanza EC2 non è accessibile pubblicamente
<a name="confirm-ec2-instance-is-not-publicly-accessible"></a>

Il CloudFormation modello avvia un'istanza EC2 denominata `SQS-VPCE-Tutorial-EC2-Instance` nel tuo VPC. Tale istanza EC2 non consente il traffico in uscita e non è in grado di inviare messaggi a Amazon SQS. Per verificare ciò, devi connetterti all'istanza, provare a effettuare una connessione a un endpoint pubblico e tentare di inviare un messaggio a Amazon SQS.

1. Accedi alla [console Amazon EC2](https://console.aws.amazon.com/ec2/).

1. Nel menu di navigazione, in **Istanze**, scegli **Istanze**.

1. **Seleziona SQS-VPCE-. Tutorial-EC2Instance**

1. **Copia il nome host in **Public DNS**, ad esempio ec2-203-0-113-0.us-west-2.compute.amazonaws.com.**

1. Dalla directory contenente [la coppia di chiavi creata in precedenza](#create-ec2-key-pair), effettuare la connessione all'istanza con il seguente comando. Ad esempio:

   ```
   ssh -i SQS-VPCE-Tutorial-Key-Pair.pem ec2-user@ec2-203-0-113-0.us-east-2.compute.amazonaws.com
   ```

1. Provare a effettuare la connessione a un qualsiasi endpoint pubblico. Ad esempio:

   ```
   ping amazon.com
   ```

   Il tentativo di connessione avrà esito negativo, come previsto.

1. Accedere alla [console Amazon SQS](https://console.aws.amazon.com/sqs/).

1. **Dall'elenco delle code, seleziona la coda creata dal tuo modello, ad esempio VPCE-sqs-tutorial-stack- -1 IJK. CloudFormation CFQueue ABCDEFGH2**

1. **Nella tabella Dettagli, copia l'URL, ad esempio. **https://sqs.us-east-2.amazonaws.com/123456789012/****

1. Dall'istanza EC2, provare a pubblicare un messaggio nella coda utilizzando il seguente comando. Ad esempio:

   ```
   aws sqs send-message --region us-east-2 --endpoint-url https://sqs.us-east-2.amazonaws.com/ --queue-url https://sqs.us-east-2.amazonaws.com/123456789012/ --message-body "Hello from Amazon SQS."
   ```

   Il tentativo di invio avrà esito negativo, come previsto.
**Importante**  
Successivamente, una volta creato un endpoint VPC per Aamzon SQS, il tentativo di invio andrà a buon fine.

## Fase 4: Creazione di un endpoint Amazon VPC per Amazon SQS
<a name="create-vpc-endpoint-for-sqs"></a>

Per collegare il tuo VPC a Amazon SQS, definisci un endpoint VPC dell'interfaccia. Dopo avere aggiunto l'endpoint, sarà possibile utilizzare l'API Amazon SQS dall'istanza EC2 nel VPC. Ciò consente di inviare messaggi a una coda all'interno della AWS rete senza attraversare la rete Internet pubblica.

**Nota**  
L'istanza EC2 non ha ancora accesso ad altri AWS servizi ed endpoint su Internet.

1. Accedere alla [console Amazon VPC](https://console.aws.amazon.com/vpc/).

1. Nel menu di navigazione, scegliere **Endpoints (Endpoint)**.

1. Scegliere **Create Endpoint** (Crea endpoint).

1. Nella pagina **Crea endpoint**, per **Nome servizio**, scegliere il nome del servizio per Amazon SQS.
**Nota**  
I nomi dei servizi variano in base alla regione corrente AWS . Ad esempio, se ti trovi negli Stati Uniti orientali (Ohio), il nome del servizio è **com.amazonaws. *us-east-2*.sqs.**

1. Per **VPC**, scegliere **SQS-VPCE-Tutorial-VPC**.

1. Per **Subnets (Sottoreti)**, scegliere la sottorete il cui **Subnet ID (ID sottorete)** include **SQS-VPCE-Tutorial-Subnet**.

1. Per **Security group (Gruppo di sicurezza)**, scegliere **Select security groups (Seleziona gruppi di sicurezza)**, quindi scegliere il gruppo di sicurezza il cui **Group Name (Nome gruppo)** include **SQS VPCE Tutorial Security Group (Gruppo di sicurezza tutorial SQS VPCE)**.

1. Seleziona **Crea endpoint**.

   Viene creato l'endpoint VPC e ne viene visualizzato il relativo ID. Ad esempio, **vpce-0ab1cdef2ghi3j456k**.

1. Scegli **Chiudi**. 

   La console Amazon VPC apre la pagina **Endpoints**.

Amazon VPC inizia a creare l'endpoint e visualizza lo stato **in attesa**. Al termine del processo, Amazon VPC visualizza lo stato **disponibile**.

## Fase 5: Invio di un messaggio alla coda Amazon SQS
<a name="sqs-vpc-tutorial-publish"></a>

Il VPC include un endpoint per Amazon SQS. Puoi connetterti all'istanza EC2 e inviare messaggi alla coda.

1. Effettuare nuovamente la connessione all'istanza EC2. Ad esempio:

   ```
   ssh -i SQS-VPCE-Tutorial-Key-Pair.pem ec2-user@ec2-203-0-113-0.us-east-2.compute.amazonaws.com
   ```

1. Provare a pubblicare nuovamente un messaggio nella coda utilizzando il seguente comando. Ad esempio:

   ```
   aws sqs send-message --region us-east-2 --endpoint-url https://sqs.us-east-2.amazonaws.com/ --queue-url https://sqs.us-east-2.amazonaws.com/123456789012/ --message-body "Hello from Amazon SQS."
   ```

   Il tentativo di invio ha esito positivo e vengono visualizzati il MD5 riepilogo del corpo del messaggio e dell'ID del messaggio, ad esempio:

   ```
   {
   	"MD5OfMessageBody": "a1bcd2ef3g45hi678j90klmn12p34qr5",
   	"MessageId": "12345a67-8901-2345-bc67-d890123e45fg"
   }
   ```

Per informazioni sulla ricezione e l'eliminazione del messaggio dalla coda creata dal CloudFormation modello (ad esempio, **VPCE-sqs-Tutorial-Stack** - -1 IJK), vedere. CFQueue ABCDEFGH2 [Ricezione ed eliminazione di un messaggio in Amazon SQS](step-receive-delete-message.md)

Per informazioni sull'eliminazione delle risorse, consulta quanto segue:
+ [Eliminazione di un endpoint VPC](https://docs.aws.amazon.com/vpc/latest/userguide/delete-vpc-endpoint.html) nella *Guida per l'utente di Amazon VPC*
+ [Eliminazione di una coda Amazon SQS](step-delete-queue.md)
+ [Termina l'istanza nella Guida](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html) per l'utente di *Amazon EC2*
+ [Eliminazione di un VPC](https://docs.aws.amazon.com/vpc/latest/userguide/delete-vpc.html) nella *Guida per l'utente di Amazon VPC*
+ [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-delete-stack.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-delete-stack.html)
+ [Eliminazione della coppia di chiavi nella Guida](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html#delete-key-pair) per l'utente di *Amazon EC2*