Risolvi i problemi di connessione alla tua istanza Amazon Linux EC2 - 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à.

Risolvi i problemi di connessione alla tua istanza Amazon Linux EC2

Le informazioni e gli errori comuni seguenti possono essere utili per risolvere i problemi di connessione all'istanza Linux.

Cause comuni dei problemi di connessione

Ti consigliamo di iniziare a risolvere i problemi di connessione delle istanze verificando di aver eseguito con precisione le seguenti attività.

Verifica il nome utente per l'istanza

Puoi connetterti alla tua istanza utilizzando il nome utente per il tuo account utente o il nome utente predefinito per AMI quello che hai usato per avviare l'istanza.

  • Ottenere il nome utente per il proprio account utente.

    Per ulteriori informazioni su come creare un account utente, consulta Gestisci gli utenti di sistema sulla tua istanza Amazon EC2 Linux.

  • Ottieni il nome utente predefinito per AMI quello che hai usato per avviare l'istanza.

    AMIutilizzato per avviare l'istanza Nome utente predefinito

    Amazon Linux

    ec2-user
    CentOS centos o ec2-user
    Debian admin
    Fedora fedora o ec2-user
    RHEL ec2-user o root
    SUSE ec2-user o root
    Ubuntu ubuntu
    Oracle ec2-user
    Bitnami bitnami
    Rocky Linux rocky
    Altro Verificare con il AMI provider
Verificare che le regole del gruppo di sicurezza consentano il traffico

Assicurati che il gruppo di sicurezza associato all'istanza consenta il SSH traffico in entrata dal tuo indirizzo IP. Per impostazione predefinita, il gruppo di sicurezza predefinito per il VPC non consente il SSH traffico in entrata. Il gruppo di sicurezza creato dalla procedura guidata di avvio dell'istanza abilita il SSH traffico per impostazione predefinita. Per la procedura da seguire per aggiungere una regola per il SSH traffico in entrata all'istanza Linux, consulta. Regole per la connessione alle istanze dal computer in uso Per le fasi di verifica, consulta Errore di connessione all'istanza: Connection timed out.

Verificare che l'istanza sia pronta

Dopo aver avviato un'istanza, possono essere necessari alcuni minuti prima che l'istanza sia pronta ad accettare le richieste di connessione. Controllare l'istanza per assicurarsi che sia in esecuzione e che abbia superato i controlli di stato.

  1. Apri la EC2 console Amazon all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione scegliere Instances (Istanze) e selezionare l'istanza desiderata.

  3. Verificare quanto segue:

    1. Nella colonna Instance state (Stato istanza), verificare che l'istanza sia nello stato running.

    2. Nella colonna Status check (Controllo stato), verificare che l'istanza abbia superato i due controlli di stato.

Verifica che siano soddisfatto tutti i prerequisiti per connetterti

Assicurati di disporre di tutte le informazioni di cui hai bisogno per connetterti. Per ulteriori informazioni, consulta Connect alla tua istanza Linux usando SSH.

Connect da Linux o macOS X

Se il sistema operativo del computer locale è Linux o macOS X, controlla quanto segue per conoscere i prerequisiti specifici per la connessione a un'istanza Linux:

Connessione da Windows

Se il sistema operativo del computer locale è Windows, verifica quanto segue per conoscere i prerequisiti specifici per la connessione a un'istanza Linux:

Errore di connessione all'istanza: Connection timed out

Se si tenta di connettersi all'istanza e si riceve il messaggio di errore Network error: Connection timed out o Error connecting to [instance], reason: -> Connection timed out: connect, provare a procedere come segue:

Verificare le regole del gruppo di sicurezza.

È necessaria una regola del gruppo di sicurezza che consenta il traffico in entrata dall'IPv4indirizzo pubblico del computer locale sulla porta corretta.

  1. Apri la EC2 console Amazon all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione scegliere Instances (Istanze) e selezionare l'istanza desiderata.

  3. Nella scheda Security (Sicurezza) nella parte inferiore della pagina della console, in Inbound rules (Regole in entrata) controllare l'elenco delle regole in vigore per l'istanza selezionata. Verifica che esista una regola che consenta il traffico dal tuo computer locale alla porta 22 (SSH).

    Se il gruppo di sicurezza non dispone di una regola che consente il traffico in entrata dal computer locale, aggiungi una regola al gruppo di sicurezza. Per ulteriori informazioni, consulta Regole per la connessione alle istanze dal computer in uso.

  4. Per la regola che consente il traffico in entrata, controlla il campo Source (Origine). Se il valore è un singolo indirizzo IP e se l'indirizzo IP non è statico, verrà assegnato un nuovo indirizzo IP ogni volta che si riavvia il computer. Ciò farà sì che la regola non includa il traffico di indirizzi IP del tuo computer. L'indirizzo IP potrebbe non essere statico se il computer si trova su una rete aziendale o se ci si connette tramite un provider di servizi Internet (ISP) oppure l'indirizzo IP del computer è dinamico e cambia ogni volta che si riavvia il computer. Per essere certi che la regola del gruppo di sicurezza consenta il traffico in entrata dal computer locale, anziché specificare un singolo indirizzo IP per il campo Source (Origine) specifica l'intervallo di indirizzi IP utilizzati dai computer client.

    Per ulteriori informazioni sulle regole dei gruppi di sicurezza, consulta le regole dei gruppi di sicurezza nella Amazon VPC User Guide.

Verificare la tabella di routing per la sottorete.

È necessario un percorso che invii tutto il traffico destinato all'esterno VPC al gateway Internet per ilVPC.

  1. Apri la EC2 console Amazon all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel pannello di navigazione, scegli Instances (Istanze) e seleziona l'istanza desiderata.

  3. Nella scheda Rete, prendi nota dei valori per VPCID e Subnet ID.

  4. Apri la VPC console Amazon all'indirizzo https://console.aws.amazon.com/vpc/.

  5. Nel riquadro di navigazione, scegliere Internet Gateways. Verifica che sia collegato un gateway Internet al tuoVPC. In caso contrario, scegliere Create internet gateway (Crea gateway Internet), immettere un nome per il gateway Internet e scegliere Create internet gateway (Crea gateway Internet). Quindi, per il gateway Internet che hai creato, scegli Azioni, Collega a VPC, seleziona il tuoVPC, quindi scegli Collega gateway Internet per collegarlo al tuoVPC.

  6. Nel riquadro di navigazione scegliere Subnets (Sottoreti) e selezionare la sottorete desiderata.

  7. Nella scheda Route, verifica che ci sia un percorso 0.0.0.0/0 come destinazione e il gateway Internet per il tuo VPC come destinazione. Se ti connetti all'istanza utilizzando il relativo IPv6 indirizzo, verifica che esista un percorso per tutto il IPv6 traffico (::/0) che punti al gateway Internet. In caso contrario, eseguire le seguenti operazioni:

    1. Selezionare l'ID per la tabella di routing (rtb-xxxxxxxx) per navigare alla tabella di routing.

    2. Nella scheda Routes (Route), scegliere Edit routes (Modifica route). Selezionare Add route (Aggiungi route), utilizzare 0.0.0.0/0 come destinazione e il gateway internet come target. Ad esempioIPv6, scegli Aggiungi percorso, utilizza ::/0 come destinazione e il gateway Internet come destinazione.

    3. Seleziona Salva route.

Controlla l'elenco di controllo dell'accesso alla rete (ACL) per la sottorete.

La rete ACLs deve consentire il SSH traffico in entrata dall'indirizzo IP locale sulla porta 22. Deve inoltre consentire il traffico in uscita alle porte effimere (1024-65535).

  1. Apri la VPC console Amazon all'indirizzo https://console.aws.amazon.com/vpc/.

  2. Nel pannello di navigazione, scegli Subnets (Sottoreti).

  3. Seleziona la sottorete.

  4. ACLNella scheda Rete, per le regole in entrata, verifica che le regole consentano il traffico in entrata dal computer sulla porta richiesta. Altrimenti, elimina o modifica la regola che blocca il traffico.

  5. Per Regole in uscita, verifica che le regole permettano il traffico verso computer in uso sulle porte effimere. Altrimenti, elimina o modifica la regola che blocca il traffico.

Se il computer si trova su una rete aziendale

Chiedi all'amministratore di rete se il firewall interno consente il traffico in entrata e in uscita dal tuo computer sulla porta 22.

Se sul computer è installato un firewall, verifica che consenta il traffico in entrata e in uscita dal computer sulla porta 22.

Verifica che l'istanza abbia un indirizzo pubblicoIPv4.

Se non lo ha, è possibile associare un indirizzo IP Elastic all'istanza. Per ulteriori informazioni, consulta Indirizzi IP elastici.

Controlla il CPU carico sull'istanza; il server potrebbe essere sovraccarico.

AWS fornisce automaticamente dati come i CloudWatch parametri di Amazon e lo stato dell'istanza, che puoi utilizzare per vedere il CPU carico sull'istanza e, se necessario, modificare il modo in cui vengono gestiti i carichi. Per ulteriori informazioni, consulta Monitora le tue istanze utilizzando CloudWatch.

Per connetterti alla tua istanza utilizzando un IPv6 indirizzo, controlla quanto segue:

  • La sottorete deve essere associata a una tabella di routing che contiene un percorso per il IPv6 traffico (::/0) verso un gateway Internet.

  • Le regole del gruppo di sicurezza devono consentire il traffico in entrata dal tuo IPv6 indirizzo locale sulla porta 22.

  • ACLLe regole di rete devono consentire il traffico in entrata e in uscitaIPv6.

  • Se hai avviato l'istanza da una versione precedenteAMI, potrebbe non essere configurata per DHCPv6 (IPv6gli indirizzi non vengono riconosciuti automaticamente sull'interfaccia di rete). Per ulteriori informazioni, consulta Configura IPv6 sulle tue istanze nella Amazon VPC User Guide.

  • Il tuo computer locale deve avere un IPv6 indirizzo e deve essere configurato per l'usoIPv6.

Errore: impossibile caricare la chiave... In attesa di: ANY PRIVATE KEY

Se tenti di connetterti all'istanza e ricevi il messaggio di errore, unable to load key ... Expecting: ANY PRIVATE KEY, il file in cui è archiviata la chiave privata non è configurato correttamente. Se il file della chiave privata termina con .pem, potrebbe comunque essere configurato in modo errato. Una possibile causa di una configurazione errata di un file della chiave privata è la mancanza di un certificato.

Se il file della chiave privata non è configurato correttamente, segui questi passaggi per risolvere l'errore
  1. Creazione di una nuova coppia di chiavi. Per ulteriori informazioni, consulta Crea una coppia di key pair utilizzando Amazon EC2.

    Nota

    In alternativa, è possibile creare una nuova coppia di chiavi tramite uno strumento di terze parti. Per ulteriori informazioni, consulta Crea una coppia di chiavi utilizzando uno strumento di terze parti e importa la chiave pubblica su Amazon EC2.

  2. Aggiungi la nuova coppia di chiavi all'istanza. Per ulteriori informazioni, consulta Ho perso la mia chiave privata. Come posso connettermi alla mia istanza?.

  3. Connettiti all'istanza utilizzando la nuova coppia di chiavi.

Errore: User key not recognized by server

Se lo usi SSH per connetterti alla tua istanza
  • Utilizzare ssh -vvv per recuperare le informazioni sul debug triple verbose durante la connessione:

    ssh -vvv -i path/key-pair-name.pem instance-user-name@ec2-203-0-113-25.compute-1.amazonaws.com

    Il seguente output di esempio mostra quanto visualizzato se si è tentato di connettersi all'istanza con una chiave che non è stata riconosciuta dal server:

    open/ANT/myusername/.ssh/known_hosts). debug2: bits set: 504/1024 debug1: ssh_rsa_verify: signature correct debug2: kex_derive_keys debug2: set_newkeys: mode 1 debug1: SSH2_MSG_NEWKEYS sent debug1: expecting SSH2_MSG_NEWKEYS debug2: set_newkeys: mode 0 debug1: SSH2_MSG_NEWKEYS received debug1: Roaming not allowed by server debug1: SSH2_MSG_SERVICE_REQUEST sent debug2: service_accept: ssh-userauth debug1: SSH2_MSG_SERVICE_ACCEPT received debug2: key: boguspem.pem ((nil)) debug1: Authentications that can continue: publickey debug3: start over, passed a different list publickey debug3: preferred gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive,password debug3: authmethod_lookup publickey debug3: remaining preferred: keyboard-interactive,password debug3: authmethod_is_enabled publickey debug1: Next authentication method: publickey debug1: Trying private key: boguspem.pem debug1: read PEM private key done: type RSA debug3: sign_and_send_pubkey: RSA 9c:4c:bc:0c:d0:5c:c7:92:6c:8e:9b:16:e4:43:d8:b2 debug2: we sent a publickey packet, wait for reply debug1: Authentications that can continue: publickey debug2: we did not send a packet, disable method debug1: No more authentication methods to try. Permission denied (publickey).
Se usi Pu TTY per connetterti alla tua istanza
  • Verifica che il file della tua chiave privata (.pem) sia stato convertito nel formato riconosciuto da Pu TTY (.ppk). Per ulteriori informazioni sulla conversione della chiave privata, consultare Connect alla tua istanza Linux usando Pu TTY.

    Nota

    In PuTTYgen, carica il tuo file di chiave privata e seleziona Salva chiave privata anziché Genera.

  • Verifica di connetterti con il nome utente appropriato per il tuoAMI. Inserisci il nome utente nella casella Nome host nella finestra di TTYconfigurazione Pu.

    AMIutilizzato per avviare l'istanza Nome utente predefinito

    Amazon Linux

    ec2-user
    CentOS centos o ec2-user
    Debian admin
    Fedora fedora o ec2-user
    RHEL ec2-user o root
    SUSE ec2-user o root
    Ubuntu ubuntu
    Oracle ec2-user
    Bitnami bitnami
    Rocky Linux rocky
    Altro Verificare con il AMI provider
  • Accertarsi di disporre di una regola del gruppo di sicurezza che permetta il traffico in entrata verso la porta corretta. Per ulteriori informazioni, consulta Regole per la connessione alle istanze dal computer in uso.

Errore: autorizzazione negata o connessione chiusa dalla porta 22 [istanza]

Se ti connetti alla tua istanza utilizzando SSH e ricevi uno dei seguenti erroriHost key not found in [directory],Permission denied (publickey),Authentication failed, permission denied,Connection closed by [instance] port 22, o, verifica di connetterti con il nome utente appropriato AMI e di aver specificato la chiave privata (.pem)file) appropriata per l'istanza.

I nomi utente appropriati sono i seguenti:

AMIutilizzato per avviare l'istanza Nome utente predefinito

Amazon Linux

ec2-user
CentOS centos o ec2-user
Debian admin
Fedora fedora o ec2-user
RHEL ec2-user o root
SUSE ec2-user o root
Ubuntu ubuntu
Oracle ec2-user
Bitnami bitnami
Rocky Linux rocky
Altro Verificare con il AMI provider

Ad esempio, per utilizzare un SSH client per connettersi a un'istanza Amazon Linux, usa il seguente comando:

ssh -i /path/key-pair-name.pem instance-user-name@ec2-203-0-113-25.compute-1.amazonaws.com

Controllare di utilizzare il file della chiave privata corrispondente alla coppia di chiavi selezionata all'avvio dell'istanza.

  1. Apri la EC2 console Amazon all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione, scegliere Instances (Istanze) e selezionare l'istanza desiderata.

  3. Nella scheda Details (Dettagli), in Instance details (Dettagli istanza), verificare il valore Key pair name (Nome della coppia di chiavi).

  4. Se all'avvio dell'istanza non è stata specificata una coppia di chiavi, è possibile terminare l'istanza e avviarne una nuova, accertandosi di specificare una coppia di chiavi. Se si tratta di un'istanza già utilizzata ma non si dispone più del file .pem, è possibile sostituire la coppia di chiavi con una nuova. Per ulteriori informazioni, consulta Ho perso la mia chiave privata. Come posso connettermi alla mia istanza?.

Se hai generato la tua coppia di chiavi, assicurati che il generatore di chiavi sia configurato per creare RSA chiavi. DSAle chiavi non sono accettate.

Se si riceve un errore Permission denied (publickey) e nessuna delle condizioni sopra indicate è applicabile (ad esempio, è stato possibile connettersi in precedenza), è possibile che siano state modificate le autorizzazioni della home directory. Le autorizzazioni per /home/instance-user-name/.ssh/authorized_keys devono essere limitate esclusivamente al proprietario.

Per verificare le autorizzazioni dell'istanza
  1. Arrestare l'istanza e distaccare il volume radice. Per ulteriori informazioni, consulta Arresta e avvia le EC2 istanze Amazon.

  2. Avvia un'istanza temporanea nella stessa zona di disponibilità dell'istanza corrente (usa un'istanza simile o AMI uguale a quella utilizzata per l'istanza corrente) e collega il volume root all'istanza temporanea.

  3. Connettersi all'istanza temporanea, creare un punto di montaggio e montare il volume che è stato collegato.

  4. Dall'istanza temporanea, controllare le autorizzazioni della directory /home/instance-user-name/ del volume collegato. Se necessario, adeguare le autorizzazioni nel modo seguente:

    [ec2-user ~]$ chmod 600 mount_point/home/instance-user-name/.ssh/authorized_keys
    [ec2-user ~]$ chmod 700 mount_point/home/instance-user-name/.ssh
    [ec2-user ~]$ chmod 700 mount_point/home/instance-user-name
  5. Smontare il volume, distaccarlo dall'istanza temporanea e ricollegarlo all'istanza originale. Accertarsi di specificare il nome di dispositivo corretto per il volume radice, ad esempi, /dev/xvda.

  6. Avviare l'istanza. Se l'istanza temporanea non è più necessaria, è possibile terminarla.

Errore: Unprotected Private Key File (File della chiave privata non protetto)

Il file della chiave privata deve essere protetto dalle operazioni di lettura e scrittura eseguite dagli altri utenti. Se la tua chiave privata può essere letta o scritta da chiunque tranne te, la SSH ignora e di seguito viene visualizzato il seguente messaggio di avviso.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Permissions 0777 for '.ssh/my_private_key.pem' are too open. It is required that your private key files are NOT accessible by others. This private key will be ignored. bad permissions: ignore key: .ssh/my_private_key.pem Permission denied (publickey).

Se viene visualizzato un messaggio simile quando si tenta di accedere all'istanza, esaminare la prima riga del messaggio di errore per verificare se si sta utilizzando la chiave pubblica corretta per l'istanza. L'esempio sopra utilizza la chiave privata .ssh/my_private_key.pem con le autorizzazioni di file 0777, che consentono a chiunque di leggere o scrivere in questo file. Questo livello di autorizzazione è molto insicuro e quindi SSH ignora questa chiave.

Se ti connetti da MacOS o Linux, per risolvere l’errore esegui il seguente comando, sostituendo il percorso del file con quello della chiave privata.

[ec2-user ~]$ chmod 0400 .ssh/my_private_key.pem

Se ti connetti a un'istanza Linux da Windows, esegui le seguenti operazioni sul tuo computer locale.

  1. Individuare il file .pem.

  2. Fare clic con il pulsante destro del mouse sul file .pem e selezionare Properties (Proprietà).

  3. Scegliere la scheda Sicurezza.

  4. Selezionare Advanced (Avanzate).

  5. Verificare di essere il proprietario del file. In caso contrario, cambiare il proprietario con il proprio nome utente.

  6. Selezionare Disable inheritance (Disabilita l'ereditarietà) e Remove all inherited permissions from this object (Rimuovi tutte le autorizzazioni ereditate da questo oggetto).

  7. Selezionare Add (Aggiungi), Select a principal (Seleziona un'entità principale), inserire il proprio nome utente e selezionare OK.

  8. Dalla finestra Permission Entry (Voce di autorizzazione), concedere le autorizzazioni Read (Lettura) e selezionare OK.

  9. Fai clic su Apply (Applica) per assicurarti che tutte le impostazioni vengano salvate.

  10. Selezionare OK per chiudere la finestra Advanced Security Settings (Impostazioni di sicurezza avanzate).

  11. Selezionare OK per chiudere la finestra Properties (Proprietà).

  12. Dovresti essere in grado di connetterti alla tua istanza Linux da Windows utilizzandoSSH.

Da una finestra del prompt dei comandi Windows, esegui il comando seguente:

  1. Dal prompt dei comandi, passare al percorso del file .pem.

  2. Eseguire il seguente comando per reimpostare e rimuovere le autorizzazioni esplicite:

    icacls.exe $path /reset
  3. Eseguire il seguente comando per concedere le autorizzazioni di lettura all'utente attuale:

    icacls.exe $path /GRANT:R "$($env:USERNAME):(R)"
  4. Eseguire il seguente comando per disabilitare l'ereditarietà e rimuovere le autorizzazioni ereditate.

    icacls.exe $path /inheritance:r
  5. Dovresti essere in grado di connetterti alla tua istanza Linux da Windows utilizzandoSSH.

Errore: la chiave privata deve iniziare con «----- BEGIN RSA PRIVATE KEY -----» e terminare con «----- ----- END RSA PRIVATEKEY»

Se si utilizza uno strumento di terze partissh-keygen, ad esempio per creare una coppia di RSA chiavi, viene generata la chiave privata nel formato Open SSH key. Quando ti connetti alla tua istanza, se usi la chiave privata nel SSH formato Open per decrittografare la password, riceverai l'errore. Private key must begin with "-----BEGIN RSA PRIVATE KEY-----" and end with "-----END RSA PRIVATE KEY-----"

Per risolvere l'errore, la chiave privata deve essere nel PEM formato. Utilizzate il seguente comando per creare la chiave privata nel PEM formato:

ssh-keygen -m PEM

Errore: Server refused our key o No supported authentication methods available

Se usi Pu TTY per connetterti alla tua istanza e ricevi uno dei seguenti errori, Errore: Il server ha rifiutato la nostra chiave o Errore: Nessun metodo di autenticazione supportato disponibile, verifica di connetterti con il nome utente appropriato per la tuaAMI. Digita il nome utente nel campo Nome utente nella finestra di TTYconfigurazione Pu.

I nomi utente appropriati sono i seguenti:

AMIutilizzato per avviare l'istanza Nome utente predefinito

Amazon Linux

ec2-user
CentOS centos o ec2-user
Debian admin
Fedora fedora o ec2-user
RHEL ec2-user o root
SUSE ec2-user o root
Ubuntu ubuntu
Oracle ec2-user
Bitnami bitnami
Rocky Linux rocky
Altro Verificare con il AMI provider

Devi anche verificare che:

  • Stai utilizzando l'ultima versione di PuTTY. Per ulteriori informazioni, consulta la pagina TTY web di Pu.

  • Il file della chiave privata (.pem) è stato convertito correttamente nel formato riconosciuto da Pu TTY (.ppk). Per ulteriori informazioni sulla conversione della chiave privata, consultare Connect alla tua istanza Linux usando Pu TTY.

Cannot Ping Instance (Impossibile eseguire il ping dell'istanza)

Il ping comando è un tipo di ICMP traffico: se non riesci a eseguire il ping dell'istanza, assicurati che le regole del gruppo di sicurezza in entrata consentano il ICMP traffico del Echo Request messaggio da tutte le fonti o dal computer o dall'istanza da cui stai emettendo il comando.

Se non riesci a emettere un ping comando dalla tua istanza, assicurati che le regole del gruppo di sicurezza in uscita consentano il ICMP traffico del Echo Request messaggio verso tutte le destinazioni o verso l'host a cui stai tentando di inviare il ping.

I comandi Ping possono anche essere bloccati da un firewall o timeout a causa di latenza di rete o problemi hardware. Per ulteriori informazioni sulla risoluzione dei problemi, consultare l'amministratore di rete locale o di sistema.

Errore: il server ha chiuso inaspettatamente la connessione di rete

Se ti connetti alla tua istanza con Pu TTY e ricevi l'errore «Connessione di rete chiusa inaspettatamente dal server», verifica di aver abilitato i keepalive nella pagina Connessione della configurazione Pu TTY per evitare la disconnessione. Alcuni server disconnettono i client quando non ricevono dati entro un periodo di tempo specificato. Impostare i Secondi tra i segnali keepalive a 59 secondi.

Se i problemi persistono dopo aver abilitato i keepalive, prova a disabilitare l'algoritmo di Nagle nella pagina Connessione della configurazione Pu. TTY

Errore: convalida della chiave host non riuscita per EC2 Instance Connect

Se si ruotano le chiavi host dell'istanza, le nuove chiavi host non vengono caricate automaticamente nel database delle chiavi host AWS affidabili. Ciò fa sì che la convalida della chiave host non riesca quando tenti di connetterti alla tua istanza utilizzando il client basato su browser EC2 Instance Connect e non riesci a connetterti all'istanza.

Per risolvere l'errore, devi eseguire eic_harvest_hostkeys lo script sull'istanza, che carica la nuova chiave host su EC2 Instance Connect. Lo script si trova in /opt/aws/bin/ nelle istanze Amazon Linux 2 e in /usr/share/ec2-instance-connect/ nelle istanze Ubuntu.

Amazon Linux 2
Per risolvere l'errore di convalida della chiave host non riuscita su un'istanza Amazon Linux 2
  1. Connect alla propria istanza utilizzandoSSH.

    Puoi connetterti utilizzando EC2 Instance Connect CLI o utilizzando la SSH key pair assegnata all'istanza al momento del lancio e il nome utente predefinito utilizzato per avviare l'AMIistanza. Per Amazon Linux 2, il nome utente predefinito èec2-user.

    Ad esempio, se l'istanza è stata lanciata utilizzando Amazon Linux 2, il DNS nome pubblico dell'istanza è ec2-a-b-c-d.us-west-2.compute.amazonaws.com e la coppia di chiavi èmy_ec2_private_key.pem, usa il seguente comando per SSH entrare nell'istanza:

    $ ssh -i my_ec2_private_key.pem ec2-user@ec2-a-b-c-d.us-west-2.compute.amazonaws.com

    Per ulteriori informazioni sulla connessione all'istanza, consulta Connect alla tua istanza Linux usando un SSH client.

  2. Accedere alla cartella:

    [ec2-user ~]$ cd /opt/aws/bin/
  3. Eseguire il seguente comando sull'istanza.


    [ec2-user ~]$ ./eic_harvest_hostkeys

    Si noti che una chiamata riuscita non produce alcun risultato.

    Ora puoi utilizzare il client basato su browser EC2 Instance Connect per connetterti alla tua istanza.

Ubuntu
Per risolvere l'errore di convalida della chiave host non riuscito su un'istanza Ubuntu
  1. Connect alla propria istanza utilizzandoSSH.

    Puoi connetterti utilizzando EC2 Instance Connect CLI o utilizzando la SSH key pair assegnata all'istanza al momento del lancio e il nome utente predefinito utilizzato per avviare l'AMIistanza. Per Ubuntu, il nome utente predefinito èubuntu.

    Ad esempio, se la tua istanza è stata lanciata usando Ubuntu, il DNS nome pubblico dell'istanza è ec2-a-b-c-d.us-west-2.compute.amazonaws.com e la key pair èmy_ec2_private_key.pem, usa il seguente comando per SSH entrare nella tua istanza:

    $ ssh -i my_ec2_private_key.pem ubuntu@ec2-a-b-c-d.us-west-2.compute.amazonaws.com

    Per ulteriori informazioni sulla connessione all'istanza, consulta Connect alla tua istanza Linux usando un SSH client.

  2. Accedere alla cartella:

    [ec2-user ~]$ cd /usr/share/ec2-instance-connect/
  3. Eseguire il seguente comando sull'istanza.


    [ec2-user ~]$ ./eic_harvest_hostkeys

    Si noti che una chiamata riuscita non produce alcun risultato.

    Ora puoi utilizzare il client basato su browser EC2 Instance Connect per connetterti alla tua istanza.

Impossibile connettersi all'istanza di Ubuntu utilizzando EC2 Instance Connect

Se usi EC2 Instance Connect per connetterti alla tua istanza di Ubuntu e ricevi un errore durante il tentativo di connessione, puoi usare le seguenti informazioni per provare a risolvere il problema.

Possibile causa

Il pacchetto ec2-instance-connect sull'istanza non è la versione più recente.

Soluzione

Aggiorna il pacchetto ec2-instance-connect sull'istanza alla versione più recente, come segue:

  1. Connettiti alla tua istanza utilizzando un metodo diverso da EC2 Instance Connect.

  2. Esegui il comando seguente sull'istanza per aggiornare alla versione più recente il pacchetto ec2-instance-connect.

    apt update && apt upgrade

Ho perso la mia chiave privata. Come posso connettermi alla mia istanza?

Se perdi la chiave privata per un'istanza EBS supportata, puoi riottenere l'accesso all'istanza. Arrestare l'istanza, distaccarne il volume root e collegarlo a un'altra istanza come volume dati, modificare il file authorized_keys con una nuova chiave pubblica, riportare il volume all'istanza originale e riavviare l'istanza. Per ulteriori informazioni sull'avvio, la connessione e l'arresto delle istanze, consulta Modifiche allo stato delle EC2 istanze Amazon.

Questa procedura è supportata solo per le istanze con EBS volumi root. Se il dispositivo principale è un volume dell'instance store, non è possibile utilizzare questa procedura per riconquistare l'accesso all'istanza; è necessario disporre della chiave privata per connettersi all'istanza. Per determinare il tipo di dispositivo root della tua istanza, apri la EC2 console Amazon, scegli Istanze, seleziona l'istanza, scegli la scheda Storage e nella sezione Dettagli del dispositivo root, controlla il valore del tipo di dispositivo root.

Il valore è EBS o INSTANCE-STORE.

In aggiunta ai passaggi seguenti, esistono altri modi per connettersi all'istanza Linux in caso di perdita della chiave privata. Per ulteriori informazioni, consulta Come posso connettermi alla mia EC2 istanza Amazon se ho perso la mia SSH key pair dopo il suo avvio iniziale?

Fase 1: creazione di una nuova coppia di chiavi

Crea una nuova coppia di chiavi utilizzando la EC2 console Amazon o uno strumento di terze parti. Se si vuole assegnare alla nuova coppia di chiavi lo stesso nome della chiave privata persa, bisogna prima eliminare la coppia di chiavi esistente. Per informazioni su come creare una coppia di chiavi, consulta Crea una coppia di key pair utilizzando Amazon EC2 o Crea una coppia di chiavi utilizzando uno strumento di terze parti e importa la chiave pubblica su Amazon EC2.

Fase 2: Ottenere informazioni sull'istanza originale e il relativo volume radice

Prendere nota delle seguenti informazioni perché sono necessarie per completare questa procedura.

Per ottenere informazioni sull'istanza originale
  1. Apri la EC2 console Amazon all'indirizzo https://console.aws.amazon.com/ec2/.

  2. Nel riquadro di navigazione scegliere Instances (Istanze) e selezionare l'istanza a cui ci si vuole connettere. (Ci si riferirà a questa come istanza originale).

  3. Nella scheda Dettagli, prendi nota dell'ID e AMI dell'ID dell'istanza.

  4. Nella scheda Networking (Reti), prendere nota della zona di disponibilità.

  5. Nella scheda Storage (Archiviazione), sotto Root device name (Nome dispositivo root) annotare il nome del dispositivo per il volume root (ad esempio /dev/xvda). Quindi, trova il nome di questo dispositivo in Block devices (Dispositivi a blocchi) e annota l'ID volume (ad esempio, vol-0a1234b5678c910de).

Fase 3: Arrestare l'istanza originale

Scegli Instance state (Stato istanza), Stop instance (Arresta istanza). Se questa opzione è disabilitata, l'istanza è già arrestata o il suo dispositivo root è un volume di instance store.

avvertimento

Quando interrompi un'istanza, i dati presenti sui volumi dell'instance store vengono cancellati. Per non perdere i dati dei volumi di archivio istanza, è opportuno creare una copia di backup nell'archiviazione persistente.

Fase 4: Avviare un'istanza temporanea

Per avviare un'istanza temporanea
  1. Nel riquadro di navigazione, selezionare Instances (Istanze), quindi selezionare Launch Instance (Avvia istanza).

  2. Nella sezione Name and tags (Nome e tag), per Name (Nome) inserisci Temporary.

  3. Nella sezione Immagini dell'applicazione e del sistema operativo, seleziona la stessa AMI che hai usato per avviare l'istanza originale. Se non AMI è disponibile, puoi crearne una AMI da utilizzare dall'istanza interrotta. Per ulteriori informazioni, consulta Crea un account supportato EBS da Amazon AMI.

  4. Nella sezione Instance type (Tipo di istanza), mantieni il tipo di istanza di default.

  5. Nella sezione Key pair (Coppia di chiavi), per Key pair name (Nome della coppia di chiavi) seleziona una coppia di chiavi esistente o creane una nuova.

  6. Nella sezione Network settings (Impostazioni di rete), scegli Edit (Modifica), quindi per Subnet (Sottorete) seleziona una sottorete nella stessa zona di disponibilità dell'istanza originale.

  7. Nel pannello Summary (Riepilogo), scegli Launch (Avvia).

Fase 5: scollegare il volume radice dall'istanza originale e collegarlo all'istanza temporanea

  1. Nel riquadro di navigazione, selezionare Volumes (Volumi), quindi selezionare il volume dispositivo root per l'istanza originale (l'ID del volume è stato annotato in una fase precedente). Scegli Actions (Operazioni), Detach volume (Scollega volume), quindi scegli Detach (Scollega). Attendere che lo stato del volume diventi available. (Potrebbe essere necessario scegliere l'icona Refresh (Aggiorna)).

  2. Con il volume ancora selezionato, scegli Actions (Operazioni), quindi scegli Attach volume (Collega volume). Seleziona l'ID istanza dell'istanza temporanea, prendi nota del nome del dispositivo specificato sotto Device name (Nome del dispositivo), ad esempio /dev/sdf, quindi scegli Attach volume (Collega volume).

    Nota

    Se hai avviato l'istanza originale da un'istanza Marketplace AWS AMI e il volume contiene dei Marketplace AWS codici, devi prima interrompere l'istanza temporanea prima di poter collegare il volume.

Fase 6: aggiungere la nuova chiave pubblica a authorized_keys sul volume originale montato sull'istanza temporanea

  1. Connettersi all'istanza temporanea.

  2. Dall'istanza temporanea, montare il volume collegato all'istanza in modo da poter accedere al file system. Ad esempio, se il nome del dispositivo è /dev/sdf, utilizzare i seguenti comandi per montare il volume come /mnt/tempvol.

    Nota

    Il nome del dispositivo potrebbe apparire in modo diverso nell'istanza. Ad esempio, i dispositivi montati come /dev/sdf potrebbero essere visualizzati come /dev/xvdf nell'istanza. Alcune versioni di Red Hat (o le relative varianti, come CentOS), potrebbero anche aggiungere alla lettera finale 4 caratteri, in modo che /dev/sdf diventi /dev/xvdk.

    1. Utilizzare il comando lsblk per determinare se il volume è partizionato.

      [ec2-user ~]$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 8G 0 disk └─xvda1 202:1 0 8G 0 part / xvdf 202:80 0 101G 0 disk └─xvdf1 202:81 0 101G 0 part xvdg 202:96 0 30G 0 disk

      Nell'esempio precedente, /dev/xvda e /dev/xvdf sono volumi partizionati, mentre /dev/xvdg non lo è. Se il volume è partizionato, montare la partizione (/dev/xvdf1) invece del dispositivo raw (/dev/xvdf) nelle fasi successive.

    2. Creare una directory temporanea per montare il volume.

      [ec2-user ~]$ sudo mkdir /mnt/tempvol
    3. Montare il volume (o la partizione) nel punto di montaggio temporaneo, utilizzando il nome del volume o del dispositivo identificato in precedenza. Il comando necessario dipende dal file system del sistema operativo. Nota: il nome del dispositivo potrebbe apparire in modo diverso nell'istanza. Per ulteriori informazioni, consulta la sezione note nel passaggio 6.

      • Amazon Linux, Ubuntu e Debian

        [ec2-user ~]$ sudo mount /dev/xvdf1 /mnt/tempvol
      • Amazon Linux 2, CentOS, SUSE Linux 12 e 7.x RHEL

        [ec2-user ~]$ sudo mount -o nouuid /dev/xvdf1 /mnt/tempvol
    Nota

    Se si riceve un errore che indica che il file system è corrotto, eseguire il seguente comando per utilizzare l'utilità fsck per controllare il file system e risolvere qualsiasi guasto:

    [ec2-user ~]$ sudo fsck /dev/xvdf1
  3. Dall'istanza temporanea, utilizzare il seguente comando per aggiornare authorized_keys nel volume montato con la nuova chiave pubblica da authorized_keys per l'istanza temporanea.

    Importante

    I seguenti esempi utilizzano il nome utente Amazon Linuxec2-user. Potrebbe essere necessario sostituire un nome utente diverso, ad esempio ubuntu per le istanze di Ubuntu.

    [ec2-user ~]$ cp .ssh/authorized_keys /mnt/tempvol/home/ec2-user/.ssh/authorized_keys

    Se la copia ha avuto successo, è possibile passare alla fase successiva.

    (Facoltativo) Altrimenti, se non si ha il permesso di modificare i file in /mnt/tempvol, sarà necessario aggiornare il file utilizzando sudo, quindi occorrerà controllare le autorizzazioni sul file per verificare di poter accedere all'istanza originale. Utilizzare il comando seguente per verificare le autorizzazioni per il file:

    [ec2-user ~]$ sudo ls -l /mnt/tempvol/home/ec2-user/.ssh total 4 -rw------- 1 222 500 398 Sep 13 22:54 authorized_keys

    In questo output di esempio, 222 è l'ID utente e 500 è l'ID del gruppo. Quindi, utilizzare sudo per eseguire nuovamente il comando di copia non riuscito.

    [ec2-user ~]$ sudo cp .ssh/authorized_keys /mnt/tempvol/home/ec2-user/.ssh/authorized_keys

    Eseguire nuovamente il comando seguente per stabilire se le autorizzazioni sono state modificate.

    [ec2-user ~]$ sudo ls -l /mnt/tempvol/home/ec2-user/.ssh

    Se l'ID utente e l'ID gruppo sono stati modificati, utilizzare il seguente comando per ripristinarli.

    [ec2-user ~]$ sudo chown 222:500 /mnt/tempvol/home/ec2-user/.ssh/authorized_keys

Fase 7: smontare e scollegare il volume originale dall'istanza temporanea e ricollegarlo all'istanza originale

  1. Dall'istanza temporanea, smontare il volume collegato all'istanza in modo da ricollegarlo all'istanza originale. Ad esempio, utilizzare il seguente comando per smontare il volume in /mnt/tempvol.

    [ec2-user ~]$ sudo umount /mnt/tempvol
  2. Scollega il volume dall'istanza temporanea (l'hai smontato nel passaggio precedente): dalla EC2 console Amazon, scegli Volumi nel riquadro di navigazione, seleziona il volume del dispositivo principale per l'istanza originale (hai preso nota dell'ID del volume nel passaggio precedente), scegli Azioni, Scollega volume, quindi scegli Scollega. Attendere che lo stato del volume diventi available. (Potrebbe essere necessario scegliere l'icona Refresh (Aggiorna)).

  3. Ricollega il volume all'istanza originale: con il volume ancora selezionato, scegli Actions (Operazioni), Attach volume (Collega volume). Seleziona l'ID dell'istanza originale, specifica il nome del dispositivo annotato in precedenza nel Passaggio 2 per il collegamento del dispositivo root originale (/dev/sda1 o /dev/xvda), quindi scegli Attach volume (Collega volume).

    Importante

    Se non si specifica lo stesso nome del dispositivo dell'allegato originale, non è possibile avviare l'istanza originale. Amazon EC2 prevede che il volume del dispositivo root sia pari a sda1 o/dev/xvda.

Fase 8: connettersi all'istanza originale utilizzando la nuova coppia di chiavi

Seleziona l'istanza originale, scegli Instance state (Stato istanza), Start instance (Avvia istanza). Dopo che l'istanza acquisisce lo stato running, è possibile connettersi a essa tramite il file della chiave privata per la nuova coppia di chiavi.

Nota

Se il nome della nuova coppia di chiavi e del corrispondente file di chiave privata è diverso dal nome della coppia di chiavi originale, assicurarsi di specificare il nome del nuovo file della chiave privata quando ci si connette all'istanza.

Fase 9: pulizia

(Facoltativo) È possibile terminare l'istanza temporanea se non la si utilizza più. Seleziona l'istanza temporanea e scegli Stato dell'istanza, Termina (elimina) istanza.