Ho bisogno dell'accesso SSH a un'istanza Amazon EC2 che esegue Ubuntu 10.4. Tutto quello che ho è il nome utente e la password di Amazon. Qualche idea?
Risposte:
Fondamentalmente, hai bisogno di un file di chiave privata per accedere al tuo EC2 tramite SSH. Segui questi passaggi per crearne uno:
ssh -i /path/to/private-key root@<ec2-public-dns-address>
- il nome utente root è stato evitato nelle ultime versioni, in base alla selezione della distribuzione ec2-user
o ubuntu
come nome utente.ubuntu
login invece di root
. Apparentemente ho l'istanza 12.04 del server Ubuntu.
ec2-user
o forse ubuntu
, ma non root
.
ssh -i /path/to/private-key ubuntu@<ec2-public-dns-address>
basta usare ubuntu
invece di root
. Il tuo problema sarà risolto. Saluti!
PASSAGGIO 1) Scarica le chiavi private assegnate alla tua macchina ec2 (che viene scaricata solo una volta quando viene creata. Quindi è consigliabile eseguire il commit da qualche parte)
FASE 2) e spara i seguenti comandi,
chmod 400 MyKeyPair.pem
ssh -i MyKeyPair.pem ec2-user@ec2-198-51-100-1.compute-1.amazonaws.com
Documento ufficiale : connessione alle istanze Linux / Unix tramite SSH
Devi prima creare una coppia di chiavi: fallo utilizzando la tua console EC2. Quindi utilizza la tua chiave privata per SSH nel server (il nome utente è ec2-user
) utilizzando un client SSH di tua scelta.
Una volta entrati, puoi emettere un sudo su -
per ottenere il root se vuoi (nota: non puoi accedere direttamente come root).
Se stai usando MacOS, dovresti creare / modificare il file di configurazione SSH (~ / .ssh / config) e inserire qualcosa come:
Host *.amazonaws.com
User ubuntu
Port 22
StrictHostKeyChecking no
UserKnownHostsFile=/dev/null
IdentityFile ~/PATH/YOUR_DOWNLOADED_KEY.pem
Quindi per connettersi a una qualsiasi delle istanze EC2:
ssh MYNAME.amazonaws.com
Niente di più!
Per configurare Ubuntu su AWS, segui i seguenti passaggi:
Per accedere all'istanza tramite SSH, esegui:
Connettiti a Linux box specificando il tuo file PEM, ad es
ssh -i "file.pem" ubuntu@x.x.x.x
Assicurati che il tuo file PEM abbia l'autorizzazione 600 ( chmod 600 file.pem
).
Se stai eseguendo un'istanza VPC e il tuo gruppo di sicurezza è corretto (con le regole giuste) e ancora non funziona, nella sezione VPC controlla la tua sottorete che dovrebbe essere collegata al tuo VPC (entrambi utilizzati dalla tua istanza) e imposta nuova regola nella Route Table che ha 0.0.0.0/0
come destinazione e il tuo gateway Internet come destinazione .
Per maggiori dettagli, controlla: Risoluzione dei problemi di connessione all'istanza
Vedi anche: Possibili ragioni del timeout quando si tenta di accedere all'istanza EC2
1) In primo luogo chmod
la .pem file
per limitare i permissons file come di seguito
chmod 400 my-key-pair.pem
2) Quindi
ssh
con i seguenti comandi direttamente dalla .ssh
cartella
ssh -i my-key-pair.pem ec2-user@ec2-198-99-90-3.compute-1.amazonaws.com
Nota: - Per navigare nella .ssh
cartella. Prima premi Ctrl + H
per visualizzare tutti i file nascosti e infinecd .ssh
Il problema potrebbe essere il mancato accesso come utente corretto per il tuo OS Distro. Per alcune nuove AMI, il nome utente potrebbe non essere "ubuntu", ma "ec2-user". Per Amazon Linux, ad esempio, credo che l'utente sia "ec2-user". Eric Hammond fornisce esempi qui: http://alestic.com/2014/01/ec2-ssh-username
Il mio suggerimento, prova:
ssh -i /path/to/file.pem ec2-user@ec2...
ssh -i /path/to/file.pem ubuntu@ec2...
ssh -i /path/to/file.pem root@ec2...
Se hai l'AMI sbagliata, potresti voler riavviare del tutto la macchina in modo da avere l'uniformità tra i tuoi cluster. Se questo è il tuo problema, probabilmente vorrai lo stesso OS Distro almeno per le tue macchine Linux.
Fare ciò che viene suggerito in tutte queste risposte non è sufficiente. In ogni istanza vedi un gruppo di sicurezza. Quando avvii una nuova istanza, avrai questa cosa impostata come predefinita. È necessario modificare il gruppo di sicurezza e aggiungere la porta ssh. Successivamente dovrai aggiungere le porte 8080, 8443, 80, 443 anche quando vuoi ospitare il tuo sito web.
Ho accettato l'offerta di AWS di utilizzare i gruppi di sicurezza predefiniti che includevano le porte "All Trafic".
E, dopo molte e molte volte tentando di connettermi alla mia nuova istanza ec2, mi sono appena reso conto che avrei dovuto modificare il mio gruppo di sicurezza utilizzato e aggiungere manualmente alla porta 22 in entrata e in uscita (ssh)!
Spero che sia d'aiuto !
Prima modifica dell'autorizzazione del file pem di
chmod 400 path/to/key_pair.pem
All'interno del file ~ / .ssh / config aggiungi le seguenti righe, all'inizio del file
Host AWS
Hostname myserver.com
User myuser
IdentityFile path/to/.pem/file
port 22
Il nome host prende l'IP o il collegamento del server, l'utente prende il nome utente del server e il file di identità viene scaricato da AWS quando hai creato l'istanza. Basta eseguire il seguente comando nel terminale
ssh AWS
e divertiti!
Nota : per navigare nella .ssh
cartella. Prima premi Ctrl + H
nella cartella home per visualizzare tutti i file nascosti e infinecd .ssh
Assicurati che queste cose siano sotto controllo
la chiave privata deve disporre dell'autorizzazione 400
Assicurati che la porta 22 sia aperta per l'istanza AWS a cui stai tentando di accedere.
ssh -i privatekey.pem ubuntu@XXX.XXX.XXX.XXX
// XXX.XXX.XXX.XXX = IP pubblico della tua istanza