Risposte:
Modificato: se possiedi entrambe le macchine, puoi condividere la tua chiave privata. Ma questa soluzione non è sicura per il caso di notebook rubati o per macchine che non possiedi.
È possibile copiare le chiavi private da H1 a H2, se si desidera utilizzare la stessa chiave privata per poter accedere da H2 a S1. Quando in H1 esegui i comandi:
H1$ ssh H2 mkdir ~/.ssh
H1$ scp ~/.ssh/id_rsa ~/.ssh/id_dsa H2:~/.ssh/
Avvertimento! Ciò eliminerà e sostituirà qualsiasi chiave privata posseduta in H2.
Il modo migliore è generare nuove chiavi private su H2 ( ssh-keygen
) e installare la loro parte pubblica su S1 con ssh-copy-id
util. In questo caso più sicuro avrai due serie di chiavi; uno è per il login H1-S1 e il secondo per il login H2-S1. Ci saranno due chiavi pubbliche autorizzate in S1. E sarai in grado di revocare uno di essi o entrambi (ad esempio, quando il tuo notebook viene rubato o il proprietario della macchina decide di disabilitare il tuo account e riutilizzare tutti i tuoi file).
Uso ssh-copy-id
SINOSSI
ssh-copy-id [-i [identity_file]] [user @] machine
DESCRIZIONE
ssh-copy-id è uno script che utilizza ssh per accedere a una macchina remota e aggiungere il file di identità indicato al file ~ / .ssh / authorized_keys di quella macchina.
Imposta H2 usando lo stesso processo (ma non la stessa chiave privata) che hai fatto quando hai impostato H1:
genere: ssh-keygen -t rsa
genere: ssh-copy-id username@S1.net
(ma usa il tuo vero nome utente sul nome host di S1 e S1, e successivamente inserisci la tua password su S1 quando lo richiede).
Ciò installa la chiave pubblica della workstation nel ~/.ssh/authorized_keys
file per l'utente sul server.
Presumo che quello che stai davvero chiedendo sia
Qual è il modo giusto per farlo?
Le persone hanno capito che un account su un server ha un solo nome utente e, naturalmente, una singola password autorizzata.
I sistemi a chiave pubblica come ssh sono migliori del sistema di password: un account su un server ha un solo nome utente e un numero qualsiasi di chiavi pubbliche autorizzate , tutte elencate nel ~/.ssh/authorized_keys
file.
( maggiori dettagli ).
Ssh-copy-id farebbe il lavoro per te: http://linux.die.net/man/1/ssh-copy-id ?
Per lo spostamento delle chiavi SSH da un computer a un altro. Basta copiare l'intera cartella da ~ / .ssh da H1 (vecchia macchina) nella cartella dei contenuti ~ / .ssh della nuova macchina H2.
Ora prova:
ssh ubuntu@13.123.43.26 (il tuo ip S1)
Molto probabilmente riceverai un avviso di autorizzazione per correggere l'esecuzione:
chmod 400 ~ / .ssh / id_rsa
Ora di nuovo:
ssh ubuntu@13.123.43.26 (il tuo ip S1)
Funzionerà bene ora.
ssh-copy-id
è una soluzione più sicura (nessuna sovrascrittura delle chiavi esistenti o la copia accidentale della chiave privata invece della chiave pubblica ) e una soluzione meno nota, si prega di considerare di accettare una di quelle risposte come risposta accettata.