Potrebbe capitare di dover accedere a un’istanza Amazon EC2 spenta da tempo, da un PC dove non è presente la chiave ssh .pem.
In questi casi conviene creare una nuova chiave e associarla alla vecchia istanza.
Per creare una nuova chiave non é un problema, si può fare facilmente da pannello di controllo di Amazon, andando su Key Pairs.
Per quanto riguarda l’associazione con l’istanza é leggermente più complicato.
- La prima cosa da fare é spegnere, non terminare, solo stoppare l’istanza EC2 alla quale si vuole associare la nuova chiave.
- Staccare il volume associato.
- Creare e lanciare una nuova istanza EC2, automaticamente collegata alla nuova chiave, quella che si vuole collegare alla vecchia istanza.
- Collegare il vecchio volume alla nuova istanza creata, come /dev/xvdf (oppure /dev/sdf).
- Ora é necessario entrare, con la chiave, dentro la nuova istanza creata, per esempio, posizionandosi con il terminale nella cartella dove é salvata la chiave: ssh -l ubuntu -i chiave.pem 111.111.111.111
- Una volta dentro bisognerà montare il vecchio disco, quello che abbiamo collegato come /dev/xvdf.
- Per fare una cosa del genere controllare i dischi con sudo fdisk -l se non dovessero esistere, creare le cartelle sudo mkdir /mnt/tmp e poi per montare sudo mount /dev/xvdf /mnt/tmp.
- A questo punto non rimane che copiare la nuova chiave nel vecchio disco, quindi cp ~/.ssh/authorized_keys /mnt/tmp/home/ubuntu/.ssh/authorized_keys
- A questo punto logout, uscire da ssh.
- Terminare la nuova istanza.
- Staccare il vecchio volume dalla nuova istanza appena terminata.
- Attaccare il vecchio volume alla vecchia istanza come /dev/sda1
- Lanciare la vecchia istanza e autenticarsi con la nuova chiave.
c'è un modo molto più rapido:
RispondiElimina· crea un nuova chiave e salva il file .pem nel PC
· usa il file PEM (chiave privata) per generare una nuova chiave pubblica (https://www.shellhacks.com/ssh-create-public-key-from-private/)
· sostituisci (oppure aggiungi) al file ~/.ssh/authorized_keys il footprint della chiave pubblica generata
fine.