Ich habe Konten auf zwei Maschinen: H1 und H2. Ich habe ssh keys auf H1 erstellt und auf S1 installiert. Ich kann jetzt von H1 auf S1 ssh. Ich möchte dasselbe mit H2 machen. Wie installiere ich die in H1 und H2 generierten SSH-Schlüssel?
42
ssh-copy-id
ein Kinderspiel ist (kein Überschreiben vorhandener Schlüssel oder versehentliches Kopieren des privaten Schlüssels anstelle des öffentlichen Schlüssels) und eine weniger bekannte Lösung, sollten Sie in Betracht ziehen, eine dieser Antworten als akzeptierte Antwort zu akzeptieren.Antworten:
Bearbeitet: Wenn Sie beide Computer besitzen, können Sie Ihren privaten Schlüssel freigeben. Aber diese Lösung ist nicht sicher für Fall gestohlenen Notebooks oder für Maschinen , die Sie nicht besitzen.
Sie können Ihre privaten Schlüssel von H1 nach H2 kopieren, wenn Sie denselben privaten Schlüssel verwenden möchten, um sich von H2 nach S1 anmelden zu können. Wenn Sie in H1 die folgenden Befehle ausführen:
Warnung! Dies löscht und ersetzt jeden privaten Schlüssel, den Sie bei H2 hatten.
Besser ist es, neue private Schlüssel auf H2 (
ssh-keygen
) zu generieren und deren öffentlichen Teil mitssh-copy-id
util auf S1 zu installieren. In diesem sichereren Fall haben Sie zwei Schlüsselsätze. Eine ist für die Anmeldung bei H1-S1 und die zweite für die Anmeldung bei H2-S1. In S1 werden zwei öffentliche Schlüssel autorisiert. Und Sie können eines oder beide von ihnen widerrufen (zum Beispiel, wenn Ihr Notebook gestohlen wird oder der Besitzer des Geräts entscheidet, Ihr Konto zu deaktivieren und alle Ihre Dateien wiederzuverwenden).quelle
Verwenden
ssh-copy-id
ZUSAMMENFASSUNG
BESCHREIBUNG
quelle
Verwenden Sie zwei private Schlüssel
Richten Sie H2 mit dem gleichen Prozess (aber nicht mit dem gleichen privaten Schlüssel) wie bei der Einrichtung von H1 ein:
Art:
ssh-keygen -t rsa
Art:
ssh-copy-id [email protected]
(Verwenden Sie jedoch Ihren tatsächlichen Benutzernamen für S1 und den Hostnamen von S1 und geben Sie später Ihr Kennwort für S1 ein, wenn Sie dazu aufgefordert werden).
Dadurch wird der öffentliche Schlüssel Ihrer Workstation in die
~/.ssh/authorized_keys
Datei für diesen Benutzer auf dem Server installiert .Einzelheiten
Ich gehe davon aus, dass das, was Sie wirklich fragen, ist
Was ist der richtige Weg, um das zu tun?
Die Leute haben es sich in den Kopf gesetzt, dass ein Konto auf einem Server einen einzigen Benutzernamen und natürlich ein einziges autorisiertes Passwort hat.
Public-Key-Systeme wie ssh sind besser als das Passwortsystem: Ein Konto auf einem Server verfügt über einen einzigen Benutzernamen und eine beliebige Anzahl von autorisierten öffentlichen Schlüsseln , die alle in der
~/.ssh/authorized_keys
Datei aufgeführt sind.( weitere Details ).
quelle
Würde ssh-copy-id den Job für Sie erledigen: http://linux.die.net/man/1/ssh-copy-id ?
quelle
Zum Verschieben von SSH-Schlüsseln von einem Computer auf einen anderen. Kopieren Sie einfach den gesamten Ordner von ~ / .ssh von H1 (alte Maschine) in den ~ / .ssh-Inhaltsordner der neuen Maschine H2.
Versuchen Sie jetzt:
Höchstwahrscheinlich erhalten Sie eine Berechtigungswarnung, um diesen Lauf zu korrigieren:
Nun wieder:
Es wird jetzt gut funktionieren.
quelle