mercoledì 13 agosto 2014

Amazon EC2 Cambiare chiave .pem (key pair) per un'istanza

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.




1 commento:

  1. c'è un modo molto più rapido:
    · 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.

    RispondiElimina