Wie richte ich einen öffentlichen SSH-Schlüssel für eine andere Maschine ohne Zugriff ein?

Wie richte ich einen öffentlichen SSH-Schlüssel für eine andere Maschine ohne Zugriff ein?

Das ist vielleicht eine dumme Frage, aber ich muss sie trotzdem stellen:
Ich habe bereits einen öffentlichen SSH-Schlüssel für meinen Client-Computer A eingerichtet. Ich habe den öffentlichen Schlüssel auf den Remote-Server kopiert, alles funktioniert einwandfrei, ich kann mich von Computer A aus anmelden.

Jetzt möchte ich auch von einem anderen Rechner auf diesen Server zugreifen und wollte gemäß bewährter Vorgehensweisen einen weiteren Schlüssel für Client-Rechner B generieren, anstatt den Schlüssel von Rechner A erneut zu verwenden. Natürlich kann ich das Schlüsselpaar generieren, aber ich kann diesen neuen öffentlichen Schlüssel nicht auf den Server kopieren, da Client-Rechner B keinen Zugriff auf den Server hat, sondern nur A.

Die einzige Lösung, die ich derzeit sehe, scheint zu sein, den neuen öffentlichen Schlüssel auf einem USB-Stick zum Client-Rechner A zu bringen und ihn von dort auf den Server zu kopieren, aber das scheint ein wenig mühsam und nicht sehr praktisch zu sein, wenn n Rechner relativ weit voneinander entfernt stehen.

Was ist hierfür der richtige Ansatz?

Sowohl auf dem Client als auch auf dem Server läuft Linux.

Antwort1

Ich bin mir nicht sicher, ob es einen richtigen Ansatz gibt. Sie müssen trotzdem irgendwie auf den Server zugreifen und da Maschine A im Moment nur der Zugriffspunkt ist, müssen Sie sie trotzdem mindestens einmal physisch erreichen, ebenso wie die anderen n Maschinen. Warum also nicht alle öffentlichen Schlüssel auf dem USB-Stick sammeln und ihn auf Maschine A verschieben, um ihn in die Home-.ssh-Konfigurationsverzeichnisse der Serverbenutzer zu verteilen?

Auch ohne USB-Stick gibt es einige Möglichkeiten.

Var #1. Aktivieren Sie vorübergehend die Passwortanmeldung am Server von Maschine A aus. Generieren Sie Schlüsselpaare und kopieren Sie öffentliche Schlüssel von den Maschinen B, C, D usw. auf die normale Weise auf den Server. Deaktivieren Sie die Passwortanmeldung am Server.

Var #2. Wenn selbst die temporäre Passwortanmeldung als Sicherheitslücke betrachtet wird, erstellen Sie einen temporären Benutzer auf dem Server, der nur auf sein Home-Verzeichnis zugreifen kann, und aktivieren Sie die Passwortanmeldung nur für diesen Benutzer. Generieren Sie Schlüsselpaare und kopieren Sie öffentliche Schlüssel von den Rechnern B, C, D usw. in das Home-Verzeichnis dieses Benutzers auf den Server. Der öffentliche Schlüssel ist nicht vertraulich und sein potenzielles Verstecken wird als sicher angesehen, sein Spoofing jedoch nicht, daher sollten Sie erwägen, ihn irgendwie zu verschlüsseln oder zu signieren (gpg). Melden Sie sich von Rechner A aus beim Server an, verbreiten Sie den öffentlichen Schlüssel an die Benutzer des Servers und deaktivieren Sie den verwendeten temporären Benutzer.

Var #3. Wenn ein Neustart des SSH-Servers keine Option ist, können Sie Maschine A als temporären SSH-Server einrichten und ihn als Zwischenstation verwenden, um öffentliche SSH-Schlüssel auf den echten Server zu kopieren.

Var #4. Verwenden Sie einen anderen Kommunikationskanal (einen anderen Remote-Server, vielleicht sogar einen öffentlichen, E-Mail usw.). Auch hier gilt: Der öffentliche Schlüssel ist nicht vertraulich, aber unterschreiben Sie ihn unbedingt, um ihn vor Spoofing zu schützen.

Antwort2

Nun, Sie müssen den öffentlichen Schlüssel auf den Remote-Server übertragenirgendwie.

Da der öffentliche Schlüssel jedoch nicht vertraulich ist (daher der Name), können Sie ihn gerne auf einen USB-Stick kopieren, irgendwo hochladen, in eine Notiz einfügen usw.

Stellen Sie einfach sicher, dass der Schlüssel, den Sie auf dem Server hinzufügen, tatsächlich der ist, den Sie von Ihrem Client hochgeladen haben!

Antwort3

Normalerweise verschiebe ich SSH-Schlüssel durch Kopieren und Einfügen. Sie können sie aber auch per E-Mail, http, netcat usw. senden, es handelt sich dabei nur um Text.

Wenn Sie den öffentlichen Schlüssel für Maschine C auf Maschine B übertragen können, können Sie per SSH von B nach A wechseln und den Schlüssel für C installieren.

verwandte Informationen