Come trasferire l'identità (SSH) di una macchina su una nuova macchina?


18

Sto creando una nuova macchina Ubuntu come server, che dovrebbe sostituire una vecchia con un software più vecchio.

La mia domanda è:

È possibile trasferire / copiare le credenziali (in termini di SSH) della vecchia macchina / server sulla nuova macchina?

Il mio obiettivo è tale che la nuova macchina dovrebbe soppiantare quella vecchia ed essere vista dagli altri come la stessa macchina quando si utilizza SSH. In altre parole, voglio facilitare l'aggiornamento della mia rete senza dover ripristinare le credenziali basate su SSH se viene sostituito un server (e in particolare il suo sistema operativo).

Grazie

-- Aggiornare --

Il mio obiettivo specifico era trasferire le credenziali solo per il server, ma a volte utilizzo ssh per sostituire l'accesso basato su password e anche i suggerimenti sulle connessioni client / server sono molto utili.


Si prega di fornire maggiori dettagli. Gli utenti utilizzano password o chiavi SSH? Trasferisci gli account utente e le chiavi pubbliche SSH?
AL

Risposte:


29

Le credenziali del server - che compongono i client SSH "impronte digitali" su cui si basano se non sono corrette - sono in realtà solo le coppie di chiavi definite in /etc/ssh/sshd_config:

# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key

Copia questi file sopra (con le loro varianti .pub), replica una configurazione simile che punta a loro, ricarica sshde le cose dovrebbero Just Work ™.

Ti consigliamo anche di copiare sui pubkeys client (che le persone hanno caricato sui loro, ~/.ssh/authorized_keysma poiché si tratta di un aggiornamento, probabilmente li stai comunque copiando.

E ovviamente l'impronta digitale si basa anche sul fatto che il nome host sia lo stesso, ma sembra che sia quello che stai facendo comunque.


3

È necessario aggiungere il contenuto degli $HOME/.ssh/id_rsa.pubaltri server $HOME/.ssh/authorized_keys. Fortunatamente, esiste un binario per quello; ssh-copy-id. Il suo utilizzo è semplice:ssh-copy-id -i .ssh/id_rsa.pub <user>@<remote.server>


Non si ripristinano le credenziali basate su SSH quando si utilizzassh-copy-id
Tolga Ozses
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.