webentwicklung-frage-antwort-db.com.de

Befehl zum Senden des öffentlichen Schlüssels an den Remote-Host

Ich erinnere mich, dass es einen Befehl gibt, den öffentlichen Schlüssel an den entfernten Host zu senden, den ich möchte. Ich möchte diese Funktion verwenden, um einen meiner öffentlichen Schlüssel an den anderen Host zu senden. Wie kann ich das machen?

32
user482594

Sie suchen nach ssh-copy-id. Dieser Befehl erstellt lediglich .ssh und .ssh/authorized_keys und legt deren Berechtigungen entsprechend fest, wenn sie nicht vorhanden sind. Dann hängt es Ihren öffentlichen Schlüssel an das Ende von .ssh/authorized_keys an.

51
cdhowie

Möglicherweise suchen Sie nach diesem Befehl:

cat ~/.ssh/id_rsa.pub | ssh [email protected] 'cat >> .ssh/authorized_keys'

Sie hängt Ihren öffentlichen Schlüssel an die autorisierten Schlüssel des Servers an. 

Quelle

12
Flaudre

Wenn Ihr Server bereits auf keine passwortbasierte Anmeldung akzeptieren eingestellt ist, wird möglicherweise eine Permission denied (publickey)-Fehlermeldung angezeigt.

Dies ist eine weitere Methode zum Senden des Schlüssels mit netcat, sodass Sie sich nicht authentifizieren müssen. Es funktioniert nur über ein lokales Netzwerk, aber Sie können die Portweiterleitung verwenden, um dies über das Internet zu tun.

Auf dem Server:

$ nc -l 55555 >> ~/.ssh/authorized_keys

Auf dem Client (ersetzen Sie HOSTNAME durch den Hostnamen oder die IP des Servers):

$ nc HOSTNAME 55555 < ~/.ssh/id_rsa.pub

Sie können 55555 Durch einen offenen Port Ihrer Wahl ersetzen.

quelle: Chat über LAN von Linux zu Linux?


Anhang für Neulinge: Ich glaube, das hat noch niemand erwähnt, aber wenn Sie ERROR: failed to open ID file '/home/username/.pub': No such file Erhalten, müssen Sie zuerst einen Schlüssel generieren. Die Ubuntu-Hilfeseiten enthalten eine gute Anleitung zu Generieren von RSA-Schlüsseln .

2
Keith

Die ausgewählte Antwort ist richtig, aber hier ist ein einfaches Bash-Skript für alle, die keygen + copy kombinieren möchten: https://Gist.github.com/wilcollins/bc420581da87962b8b47

Diese Datei erstellt einen SSH-Schlüssel auf einem Client-Computer, wendet die entsprechenden Dateiberechtigungen an, kopiert in das lokale Verzeichnis ~/.ssh und kopiert den angegebenen Server.

0
wilco