Wie wird die SSH-Agentenweiterleitung auf dem Mac-Terminal durchgeführt?

12

Ich habe viele Tutorials dazu überprüft, bin aber nicht klar geworden.

Gemäß Tuts gibt es zwei Möglichkeiten, die Agentenweiterleitung zu konfigurieren

  1. in Ihrer Konfigurationsdatei ~/.ssh/configSet

    Host example.com
    
    ForwardAgent yes
    
  2. Durch Hinzufügen von Identität, wie ssh-add.

Was nützt es?

  1. SSH-Agent-Weiterleitung zum Speichern der Schlüsselpassphrase. Damit wir nicht jedes Mal eine Passphrase eingeben müssen?

  2. Benötigen wir zwei Server, um die SSH-Agentenweiterleitung zu testen? Bitte vorschlagen. Oder können wir auch mit einem einzelnen Server testen?

Ich habe diesen Git-Hub-Link überprüft und die gleichen Schritte ausgeführt. Ich kann Agent sehen. Wann wird dieser Befehl ausgeführt echo "$SSH_AUTH_SOCK" ? Bedeutet das, dass er funktioniert?

Wie kann ich das mit meinem Server machen? Bitte führen Sie mich.

UPDATE: Wenn ich versuche zu ssh, erhalte ich diese Fehlermeldung im Terminal

Der Agent gab zu, dass er nicht mit dem Schlüssel unterschrieben hat.

Niks
quelle

Antworten:

8

1) Eine Möglichkeit, es zu verwenden, ist korrekt, die andere ist das Befehlszeilenargument -A.

2) Der Agent speichert Passphrasen für Schlüssel. Die Agentenweiterleitung dient zur Verwendung lokaler Identitäten (mit oder ohne Passphrase) auf Remoteservern, ohne dass diese in eine möglicherweise unsichere Umgebung kopiert werden müssen.

3) Sie können mit einem Server testen, zum Beispiel mit localhost.

4) echo "$SSH_AUTH_SOCK"sollte überprüfen, ob es eingerichtet ist, dies ssh-add -Lwürde es jedoch zuverlässiger überprüfen, da die Verbindung zum Agenten getestet wird.

Jakuje
quelle
Vielen Dank für die Antwort. Bedeutet das, dass wir Schlüssel und SSH hinzufügen müssen, einfach wie mit diesem hinzugefügten Schlüssel? ssh [email protected] und es wird Sie nicht nach Passphrase fragen, da es von Agent gespeichert wird? können wir servername = localhost verwenden?
Niks
ssh-add your-keyum Ihren Schlüssel zum Agenten hinzuzufügen (er fragt einmal nach der Passphrase), wenn er lebt. Dann ssh server(mit -Aoder Konfigurationsoption) wird nicht nach
Passphrase
Danke ... Bedeutet, wenn ich Forward Agent Ja in der Konfigurationsdatei setze, kann ich ssh ohne Verwendung -A? Bitte vorschlagen.
Niks
hi .. Als ich den Befehl $ SSH_AUTH_SOCK ausgeführt habe, erhalte ich das folgende Ergebnis: -bash: /tmp/ssh-gT43vE99vk/agent.511: Berechtigung verweigert Ich bin hier verwirrt. Ob meine Agentenweiterleitung funktioniert oder nicht ? auch ssh-add -Lmit diesem es Liste SSH-Schlüssel, den ich hinzugefügt habe. Bitte schlagen Sie mich vor.
Niks
Es gibt keinen "laufenden Befehl $SSH_AUTH_SOCK". Es ist eine Umgebungsvariable, die den Pfad zum Unix-Domain-Socket enthält, und Sie können ihn offensichtlich nicht ausführen. Aber ssh-addkönnen mit Ihrem Agenten über diese Buchse kommunizieren. Ich habe geschrieben, echo "$SSH_AUTH_SOCK"was bestätigt, dass die Variable gesetzt ist.
Jakuje