Come posso risolvere i problemi che si verificano quando utilizzo EC2 Connect per connettermi a un'istanza EC2?

5 minuti di lettura
0

Desidero risolvere i problemi che si verificano quando utilizzo Amazon Elastic Compute Cloud (Amazon EC2) Instance Connect per connettermi a un'istanza EC2 Linux.

Breve descrizione

Di seguito sono riportati i motivi più comuni per cui potresti ricevere un messaggio di errore quando utilizzi EC2 Instance Connect per connetterti all’istanza:

  • EC2 Instance Connect non supporta la distribuzione del sistema operativo (OS).
  • Il pacchetto EC2 Instance Connect non è installato sull'istanza.
  • Le policy o le autorizzazioni AWS Identity and Access Management (IAM) mancano o non sono corrette.
  • I gruppi di sicurezza associati all'istanza non elencano gli indirizzi IP del servizio EC2 Instance Connect.
  • L'accesso alla rete o la relativa configurazione non sono corretti.

Per determinare la causa dell'errore di connessione, puoi utilizzare il runbook di automazione AWSSupport-TroubleshootEC2InstanceConnect di AWS Systems Manager. Per informazioni sui flussi di lavoro di automazione, consulta Flussi di lavoro di automazione del Supporto AWS (SAW) e Setting up Automation.

Puoi anche risolvere manualmente i problemi dell'istanza EC2.

Risoluzione

Prerequisito: se l’istanza non ha un indirizzo IP pubblico, devi stabilire la connettività tramite rete privata al tuo cloud privato virtuale (VPC). Per stabilire una connettività tramite rete privata al VPC, utilizza AWS Direct Connect, VPN sito-sito AWS o il peering VPC. Se l’istanza non ha un indirizzo IPv4 pubblico e il VPC non ha una configurazione di connettività tramite rete privata, utilizza l'endpoint di EC2 Instance Connect.

Nota: se hai attivato la console seriale EC2 per le istanze Linux, puoi utilizzarla per risolvere i problemi relativi ai ](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-serial-console.html)tipi di istanze basati su Nitro[. Se non riesci a raggiungere la tua istanza e non hai configurato l'accesso alla console seriale, consulta Configure access to the EC2 serial console.

Usa il runbook per risolvere i problemi dell'istanza EC2

Prima di avviare il runbook AWSSupport-TroubleshootEC2InstanceConnect, assicurati che il tuo utente o ruolo IAM disponga delle autorizzazioni necessarie. Per ulteriori informazioni, consulta la sezione Required IAM permissions di AWSSupport-TroubleshootEC2InstanceConnect.

Per eseguire il runbook, completa i passaggi seguenti:

  1. Apri la console Systems Manager.
  2. Nel pannello di navigazione scegli Risorse condivise, quindi scegli Documenti.
  3. Scegli Documenti automazione.
  4. Nel campo di ricerca inserisci AWSSupport-TroubleshootEC2InstanceConnect, quindi seleziona il documento.
  5. Scegli Esegui automazione.
  6. Immetti i valori seguenti per i parametri di input:
    Per ** InstanceID**, inserisci l'ID dell'istanza a cui non riesci a connetterti.
    (Facoltativo) Per AutomationAssumeRole, inserisci l'ARN del ruolo IAM che consente ad Automazione Systems Manager di eseguire operazioni per tuo conto. Se non specifichi un ruolo, Automazione Systems Manager userà le autorizzazioni dell'utente che esegue il runbook.
    Per Nome utente, inserisci il nome utente che usi per connetterti all'istanza. Questo parametro determina se l'accesso IAM è concesso all'utente.
    Per EC2InstanceConnectRoleOrUser, inserisci l'ARN dell'identità IAM utilizzata da EC2 Instance Connect per inviare le chiavi all'istanza.
    (Facoltativo) Per SSHPort, inserisci la porta SSH configurata sull'istanza. Il valore predefinito è 22 e il numero della porta deve essere compreso tra 1 e 65535.
    (Facoltativo) Per SourceNetworkType, inserisci il tipo di rete che usi per connetterti all'istanza.
    (Facoltativo) Per SourceIpCIDR, inserisci l'intervallo del routing interdominio senza classi (CIDR) che include l'indirizzo IP del dispositivo che usi per connetterti a EC2 Instance Connect. Se questo campo è vuoto, il runbook non sarà in grado di determinare se le regole del gruppo di sicurezza e della lista di controllo degli accessi (ACL) dell'istanza consentono il traffico SSH.
  7. Scegli Esegui.
  8. Esamina i risultati dettagliati nella sezione Output.

Risolvi manualmente i problemi dell'istanza EC2

Per risolvere i problemi di connessione all'istanza EC2, verifica le configurazioni seguenti:

Usa connessioni SSH basate su browser

Le connessioni SSH basate su browser richiedono che le regole in entrata del gruppo di sicurezza dell'istanza consentano l'accesso di EC2 Instance Connect a SSH sulla porta TCP 22.

EC2 Instance Connect utilizza intervalli di indirizzi IP specifici per le connessioni SSH basate su browser alla tua istanza. Gli intervalli di indirizzi IP AWS differiscono tra le regioni AWS. Per trovare l'intervallo di indirizzi IP AWS per EC2 Instance Connect in una regione specifica, usa i comandi che seguono.

Nota: nei comandi seguenti, sostituisci us-east-1 con la regione della tua istanza. Assicurati che l’istanza si trovi in una regione supportata da EC2 Instance Connect.

Windows

Usa Windows PowerShell per eseguire questo comando:

PS C:\> Get-AWSPublicIpAddressRange -Region us-east-1 -ServiceKey EC2_INSTANCE_CONNECT | select IpPrefix

Linux

Usa curl e jq per eseguire questo comando:

$ curl -s https://ip-ranges.amazonaws.com/ip-ranges.json | jq -r '.prefixes[] | select(.region=="us-east-1") | select(.service=="EC2_INSTANCE_CONNECT") | .ip_prefix'

Aggiorna le regole in entrata del gruppo di sicurezza per consentire l'accesso alla porta TCP 22 dall'intervallo di indirizzi IP restituito dai comandi precedenti.

Utilizza la connessione CLI di EC2 Instance Connect

Aggiorna le regole in entrata del gruppo di sicurezza per consentire l'accesso alla porta TCP 22 dal tuo indirizzo IP.

Informazioni correlate

Run an automated operation powered by Systems Manager Automation

Connect to your Linux instance using EC2 Instance Connect

Come posso connettermi alla mia istanza di Amazon EC2 se ho perso la mia coppia di chiavi SSH dopo l’avvio iniziale?

In che modo posso risolvere i problemi di connessione alla mia istanza Linux Amazon EC2 tramite SSH?