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-usero ubuntucome nome utente.ubuntulogin invece di root. Apparentemente ho l'istanza 12.04 del server Ubuntu.
ec2-usero forse ubuntu, ma non root.
ssh -i /path/to/private-key ubuntu@<ec2-public-dns-address>
basta usare ubuntuinvece 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/0come 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 chmodla .pem fileper limitare i permissons file come di seguito
chmod 400 my-key-pair.pem
2) Quindi
sshcon i seguenti comandi direttamente dalla .sshcartella
ssh -i my-key-pair.pem ec2-user@ec2-198-99-90-3.compute-1.amazonaws.com
Nota: - Per navigare nella .sshcartella. Prima premi Ctrl + Hper 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 .sshcartella. Prima premi Ctrl + Hnella 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