Connessione alla tua istanza Linux tramite EC2 Instance Connect - Amazon Elastic Compute 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à.

Connessione alla tua istanza Linux tramite EC2 Instance Connect

Le seguenti istruzioni spiegano come connettersi alla propria istanza Linux utilizzando EC2 Instance Connect tramite la console Amazon EC2, AWS CLI il o un client SSH.

Quando ti connetti a un'istanza utilizzando EC2 Instance Connect tramite la console oppure AWS CLI, l'API EC2 Instance Connect invia automaticamente una chiave pubblica SSH ai metadati dell'istanza dove rimane per 60 secondi. Una policy IAM collegata al tuo utente autorizza questa operazione. Se preferisci utilizzare la tua chiave SSH, puoi utilizzare un client SSH e inviare esplicitamente la tua chiave SSH all’istanza utilizzando EC2 Instance Connect.

Considerazioni

Dopo la connessione a un’istanza tramite EC2 Instance Connect, la connessione persiste fino al termine della sessione SSH. La durata di una connessione RDP non è determinata dalla durata delle credenziali IAM. Se le credenziali IAM scadono, la connessione continua a persistere. Quando utilizzi l’esperienza della console di EC2 Instance Connect, se le credenziali IAM scadono, termina la connessione chiudendo la pagina del browser. Quando utilizzi il tuo client SSH ed EC2 Instance Connect per inviare la tua chiave, puoi impostare un valore di timeout SSH per terminare automaticamente la sessione SSH.

Requisiti

Prima di iniziare, assicurati di verificare i prerequisiti.

Connessione tramite la console Amazon EC2

Puoi connetterti a un’istanza usando EC2 Instance Connect attraverso la console Amazon EC2.

Requisiti

Per connettersi utilizzando la console Amazon EC2, l'istanza deve avere un indirizzo pubblico IPv4 o IPv6 un indirizzo. Se l'istanza ha solo un IPv4 indirizzo privato, puoi usare AWS CLI ec2-instance-connect per connetterti.

Per connettersi a un’istanza Linux tramite la console Amazon EC2
  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, scegliere Instances (Istanze).

  3. Selezionare l’istanza, quindi scegliere Collegarsi.

  4. Scegli la scheda EC2 Instance Connect.

  5. Scegli Connettiti usando un IP pubblico.

  6. Se c’è una scelta, seleziona l’indirizzo IP a cui connetterti. In caso contrario, l’indirizzo IP viene selezionato automaticamente.

  7. Per Nome utente, verifica il nome utente.

  8. Scegli Connetti per stabilire una connessione. Verrà aperta una finestra del terminale nel browser.

Connect utilizzando AWS CLI

Puoi usare ec2-instance-connect AWS CLI per connetterti alla tua istanza con un client SSH. EC2 Instance Connect tenta di stabilire una connessione utilizzando un indirizzo IP disponibile in un ordine predefinito, in base al tipo di connessione specificato. Se un indirizzo IP non è disponibile, prova automaticamente il successivo nell’ordine.

Tipi di connessione
auto (predefinito)

EC2 Instance Connect tenta di connettersi utilizzando gli indirizzi IP dell’istanza nel seguente ordine e con il tipo di connessione corrispondente:

  1. Pubblico: IPv4 direct

  2. Privato IPv4: eice

  3. IPv6: direct

direct

EC2 Instance Connect tenta di connettersi utilizzando gli indirizzi IP dell’istanza nel seguente ordine:

  1. Pubblico IPv4

  2. IPv6

  3. IPv4 privato (non si connette tramite un endpoint EC2 Instance Connect)

eice

EC2 Instance Connect tenta di connettersi utilizzando l' IPv4 indirizzo privato dell'istanza e un endpoint EC2 Instance Connect.

Nota

In futuro, potremmo modificare il comportamento del tipo di connessione auto. Per assicurarti che venga utilizzato il tipo di connessione desiderato, consigliamo di impostare esplicitamente il --connection-type su direct o eice.

Requisiti

È necessario utilizzare AWS CLI la versione 2. Per ulteriori informazioni, consulta Installazione o aggiornamento della versione più recente della AWS CLI.

Per la connessione un’istanza tramite l’ID istanza

Se conosci solo l’ID istanza e desideri che EC2 Instance Connect determini il tipo di connessione da utilizzare per connetterti all’istanza, utilizza il comando della CLI ec2-instance-connect ssh e con l’ID dell’istanza.

aws ec2-instance-connect ssh --instance-id i-1234567890example
Per la connessione all’istanza tramite l’ID istanza e un endpoint EC2 Instance Connect

Se desideri connetterti all’istanza tramite un endpoint EC2 Instance Connect, utilizza il comando precedente e specifica anche il parametro --connection-type con il valore eice.

aws ec2-instance-connect ssh --instance-id i-1234567890example --connection-type eice
Per la connessione a un’istanza utilizzando l’ID istanza e il proprio file di chiave privata

Se desideri connetterti alla tua istanza tramite un endpoint EC2 Instance Connect utilizzando la tua chiave privata, specifica l’ID istanza e il percorso del file della chiave privata. Non includerlo file:// nel percorso; il seguente esempio fallirà:file:///path/to/key.

aws ec2-instance-connect ssh --instance-id i-1234567890example --private-key-file /path/to/key.pem
Suggerimento

Se ricevi un errore durante l'utilizzo di questi comandi, assicurati di utilizzare la AWS CLI versione 2, perché il ssh comando è disponibile solo in questa versione principale. Ti consigliamo inoltre di eseguire regolarmente l’aggiornamento all’ultima versione secondaria della versione 2 della AWS CLI per accedere alle funzionalità più recenti. Per ulteriori informazioni, consulta Informazioni sulla versione 2 della AWS CLI nella Guida per l’utente di AWS Command Line Interface .

Connessione tramite la propria chiave e un client SSH

È possibile utilizzare la propria chiave SSH e connettersi all’istanza dal client SSH preferito durante l’utilizzo dell’API EC2 Instance Connect. In questo modo è possibile sfruttare la capacità di EC2 Instance Connect di inviare una chiave pubblica all’istanza. Questo metodo di connessione funziona per istanze con indirizzi IP pubblici e privati.

Requisiti
  • Requisiti delle coppie di chiavi

  • Quando ci si connette a un’istanza che dispone solo di indirizzi IP privati, il computer locale da cui si avvia la sessione SSH deve disporre di connettività all’endpoint del servizio EC2 Instance Connect (per inviare la chiave pubblica SSH nell’istanza) nonché della connettività di rete all’indirizzo IP privato dell’istanza per stabilire la sessione SSH. L'endpoint del servizio EC2 Instance Connect è raggiungibile via Internet o tramite un'interfaccia virtuale Direct Connect pubblica. Per connettersi all’indirizzo IP privato dell’istanza, è possibile utilizzare servizi come Direct Connect, AWS Site-to-Site VPN o il peering VPC.

Per connettersi all’istanza tramite la propria chiave e un client SSH
  1. (Opzionale) Generazione di nuove chiavi SSH private e pubbliche

    È possibile generare nuove chiavi SSH private e pubbliche, my_key e my_key.pub, utilizzando il comando seguente:

    ssh-keygen -t rsa -f my_key
  2. Invio della chiave pubblica SSH all’istanza

    Utilizza il comando send-ssh-public-key per inviare la chiave pubblica SSH all’istanza. Se hai avviato l'istanza utilizzando AL2023 o Amazon Linux 2, il nome utente predefinito per l'AMI èec2-user. Se l’istanza è stata avviata tramite Ubuntu, il nome utente predefinito dell’AMI è ubuntu.

    L’esempio seguente invia la chiave pubblica all’istanza specificata nella zona di disponibilità specificata, per autenticare ec2-user.

    aws ec2-instance-connect send-ssh-public-key \ --region us-west-2 \ --availability-zone us-west-2b \ --instance-id i-001234a4bf70dec41EXAMPLE \ --instance-os-user ec2-user \ --ssh-public-key file://my_key.pub
  3. Connessione all’istanza tramite la chiave privata

    Utilizzare il comando ssh per connettersi all’istanza tramite la chiave privata prima che la chiave pubblica venga rimossa dai metadati dell’istanza (si dispone di un intervallo di tempo di 60 secondi). Specificare la chiave privata che corrisponde alla chiave pubblica, il nome utente predefinito per l’AMI utilizzato per avviare l’istanza e il nome DNS pubblico dell’istanza (se la connessione avviene su una rete privata, specificare il nome DNS privato o l’indirizzo IP). Aggiungi l’opzione IdentitiesOnly=yes per garantire che solo i file nella configurazione ssh e la chiave specificata vengano utilizzati per la connessione.

    ssh -o "IdentitiesOnly=yes" -i my_key ec2-user@ec2-198-51-100-1.compute-1.amazonaws.com

    L’esempio seguente utilizza timeout 3600 per impostare la sessione SSH in modo che termini dopo 1 ora. I processi avviati durante la sessione possono continuare a essere eseguiti sull’istanza dopo la terminazione della sessione.

    timeout 3600 ssh -o “IdentitiesOnly=yes” -i my_key ec2-user@ec2-198-51-100-1.compute-1.amazonaws.com

Risoluzione dei problemi

Se ricevi un errore mentre tenti di connetterti all’istanza, consulta l’argomento seguente: