Ändert sich der ssh key, wenn ich einen neuen Computer kaufe?


#1

Ich werde in nächster Zeit einen neuen Mac kaufen. Den werde ich vonGrund auf neu einrichten ( also nicht das Time Machine image einspielen). Ich habe in vielen Routern "meinen " ssh key hinterlegt. Ändert der sich dann ? Muss ich das dann bei allen Routern händisch eintragen?


#2

Du hast in deinem Home-Verzeichnis vermutlich einen (versteckten) Ordner namens .ssh, also zB /Users/frank/.ssh. In diesem Ordner befinden sich mindestens zwei Dateien: id_rsa und id_rsa.pub. Der id_rsa.pub ist der Öffentliche (»public«) Teil deines Schlüssels, den du überall hinkopieren kannst. Trägst du diesen in einem Knoten in der Config-Oberfläche ein, dann kannst du dich mit dem Privaten Teil des Schlüssels id_rsa dort authorisieren.

Im einfachsten Fall kopierst du diese beiden Dateien auf einem neuen Mac ebenfalls wieder in den .ssh-Ordner und kannst dich wieder an den Knoten anmelden.


#3

Ich will gerade noch anmerken das der .ssh Ordner versteckt ist. Daher musst du, sofern du deinen Key mit dem Finder kopieren willst, in diesen direkt hineinspringen. Dafür musst du im Finder in der Menüzeile auf Gehe zu -> Gehe zum Ordner ...gehen und in das erscheindende Feld ~/.ssh/ eintragen. Damit landest du im Ordner.

Auf dem neuen Mac kann es sein das du den .ssh Ordner erst erstellen musst, wenn du also nicht wie oben beschrieben reinspringen kannst, dann kurz das Terminal öffnen und da mkdir ~/.ssh2/ ausführen. Dann solltest du reinspringen können. Dort dann einfach wie von @Cheatha beschrieben id_rsa und id_rsa.pub hineinkopieren.
Die anderen Dateien in .ssh kannst du ignorieren.


#4

Vielen Dank
Momentan habe ich die Neuanschaffung doch noch etwas verschoben, aber wenn es soweit ist , ist das hier sehr hilfreich!


#5

Ich habe jetzt eine neuen Mac
Ich habe den .ssh Ordner angelegt ( nicht ssh2!) und wenn ich jetzt auf meine Router zugreife kommt
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0777 for ‘/Users/frankhurrle/.ssh/id_rsa’ are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key “/Users/frankhurrle/.ssh/id_rsa”: bad permissions


#6

Eine Google-Suche nach der Fehlermeldung lieferte die Antwort: Die Berechtigungen für die Datei sind zu offen gesetzt. Hilft das hier weiter? https://stackoverflow.com/questions/9270734/ssh-permissions-are-too-open-error


#7

Danke bis hierher
Ich habe über Rechtsklick Informationen die Zugriffsrechte von Hand geändert. sodaß nur ich als Admin lese und Schreibzugriff habe. Der ssh Key wird nicht mehr zurückgewiesen, wohl aber mein Systempasswort. Das ist das Selbe wie auf dem alten Rechner und ich habe es jetzt 8 Mal probiert. Auf mit Neustart. Jedesmal die Meldung, das PWD sei falsch…

GRR


#8

Vermutlich hast du beim Erstellen des SSH-Keys ein Kennwort für den Key angegeben. Dieses wird dann im macOS Schlüsselbund gespeichert worden sein. Diesen hast du dann immer mit deinem “Systemkennwort” entsperrt, es wurde aus dem Schlüsselbund dann das passende Kennwort geladen um den SSH-Key zu entsperren. Das gewünschte Kennwort ist also erstmal nicht dein Systemkennwort, sondern das Kennwort des SSH-Keys. Gibst du das erfolgreiche in, wird dich der Mac fragen, ob du dieses Kennwort nicht im Schlüsselbund speichern willst. Ab da wird er dich auch immer nach einem Kennwort fragen: Das ist dann aber das Systemkennwort zum entsperren des Schlüsselbunds, damit er das Kennwort des SSH-Keys laden kann…


#9

Ich denke nicht, dass es wasmit dem Schlüsselbund zu tun hat.
Ich habe jetzt probehalber das Systemimage von der Time Machine auf die neue Maschine gespielt und dann probiert, den ssh zugriff zu bekommen. Gleiches Ergebnis.
Dann kam ich auf die Idee, das Routerpasswort zu probieren, dass ich früher mal hinterlegt hatte, bevor ich ssh überhaupt kannte. UND siehe da, ich hatte Zugriff!
Das verstehe wer will.
Aber vielleicht hat Cheatha ja trotzdem recht und das PWD für den ssh Key ist zufällig mein Routerpasswort?. IChwerde das beobachten.


#10

Ich denke was hier passiert ist, ist das durch den Rechtsklick und das ändern der Zugriffsrechte der SSH Client den Schlüssel nicht mehr findet. Besser wäre es gewesen, wenn du den Befehl auf der von @Cheatha verlinkten Seite im Terminal ausgeführt hättest.

Probiere mal die Zugriffsrechte wieder so einzustellen wie sie waren. Vermutlich so:

Frank (Ich) - Lesen und Schreiben [also der Name deines Benutzerkontos muss da stehen]
everyone/Jeder - Keine Rechte

Und dann im Terminal den folgenden Befehl ausführen:

chmod 600 ~/.ssh/id_rsa

Und dann probiere es nochmal. Ich vermute aktuell meldest du dich einfach mit dem neben dem SSH Key hinterlegten Passwort an und nutzt den SSH Key überhaupt nicht.


#11

Danke für Euer Bemühen.

Ich habe nachgesehen. id_rsa habe nur ich lesen und schreiben Rechte, everyone darf gar nichts.
Bei ID-RSA.pub Habe ich wieder lese und Schreibrechte, staff und everyone nur lesen.
Den Befehl chmod 600 ~/.ssh/id_rsa habe ich im Terminal ausgeführt. Ergebnis: Zugriff nur über Routerpasswort.

Ich habe jetzt bei id_rsa einen admin mit leserechten zugefügt.

Noch irgendwelche Ideen?


#12

Du könntest den Parameter -v verwenden um mehr Informationen zu bekommen, wenn Du ssh nutzt. Vorausgesetzt, den gibt es auf dem ssh das Mac hat.


#13

Also, inzwischen ist mein Problem gelöst. Ich bin nicht ganz sicher, warum.

Ich hatte ja die Time Machine eingespielt auf dem neuen Rechner, also den altengeklont. Danach war Emin erster Versuch, einen Router zu erreichen, der sich letztendlich nur mit den altem Passwort ansprechen ließ. Wahrscheinlich hat einfach alles funktioniert und ich habe zufällig einen altenRouter erwischt, der noch nicht mit ssh key ausgestattet ist. Das kann man auch irgendwie nachschauen, oder?


#14

Ja klar kann man das nachschauen. Einfach per SSH anmelden und mit dem genannten Befehl schauen welche Public Keys auf dem Router hinterlegt sind:

Um nachzuschauen welche Keys hinterlegt sind, kannst du dich z.B. per SSH anmelden und mithilfe von cat /etc/dropbear/authorized_keys den Dateiinhalt der angegebenen Datei in die Konsole ausgeben. Wird dir kein Public Key als Ausgabe in der Konsole angezeigt ist auch keiner hinterlegt. Und du kannst dich nicht per SSH anmelden.

Wie man einen weiteren SSH Key hinterlegt ist hier beschrieben.