Wie übertrage ich die Identität (SSH) einer Maschine auf eine neue Maschine?

18

Ich mache einen neuen Ubuntu-Rechner als Server, der einen alten durch ältere Software ersetzen soll.

Meine Frage ist:

Ist es möglich, die Anmeldeinformationen (in Bezug auf SSH) des alten Computers / Servers auf den neuen Computer zu übertragen / zu kopieren?

Mein Ziel ist es, dass die neue Maschine die alte ersetzt und von anderen als dieselbe Maschine angesehen wird, wenn SSH verwendet wird. Mit anderen Worten, ich möchte die Aktualisierung meines Netzwerks vereinfachen, ohne die SSH-basierten Anmeldeinformationen zurücksetzen zu müssen, wenn ein Server (und insbesondere das Betriebssystem) ersetzt wird.

Vielen Dank

- Update -

Mein spezielles Ziel war es, Anmeldeinformationen nur für den Server zu übertragen, aber ich verwende manchmal ssh, um die kennwortbasierte Anmeldung zu ersetzen, und die Vorschläge zu den Client / Server-Verbindungen sind auch sehr hilfreich.

Tinlyx
quelle
Bitte machen Sie nähere Angaben. Verwenden die Benutzer ein Passwort oder SSH-Schlüssel? Übertragen Sie die Benutzerkonten und die öffentlichen SSH-Schlüssel?
AL

Antworten:

29

Die Serveranmeldeinformationen - die den "Fingerabdruck" der SSH-Clients ausmachen, die darüber meckern, ob sie falsch sind - sind eigentlich nur Schlüsselpaare, die in den /etc/ssh/sshd_configfolgenden Abschnitten definiert sind :

# 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

Kopieren Sie diese Dateien (mit ihren .pub-Varianten), replizieren Sie eine ähnliche Konfiguration, die auf sie verweist, und laden Sie sie neu sshd.

Sie möchten auch Client-Pubkeys kopieren (die von anderen hochgeladen wurden). Da ~/.ssh/authorized_keysdies jedoch ein Upgrade ist, kopieren Sie diese wahrscheinlich trotzdem.

Und natürlich hängt der Fingerabdruck auch davon ab, dass der Hostname derselbe ist, aber es hört sich so an, als würden Sie sowieso so vorgehen.

Oli
quelle
3

Sie müssen den Inhalt von $HOME/.ssh/id_rsa.puban den des anderen Servers anhängen $HOME/.ssh/authorized_keys. Glücklicherweise gibt es dafür eine Binärdatei; ssh-copy-id. Die Verwendung ist einfach:ssh-copy-id -i .ssh/id_rsa.pub <user>@<remote.server>

Tolga Ozses
quelle
Sie setzen keine SSH-basierten Anmeldeinformationen zurück, wenn Siessh-copy-id
Tolga Ozses