| SSH-AGENT(1) | General Commands Manual | SSH-AGENT(1) |
BEZEICHNUNG
ssh-agent —
OpenSSH-Authentifizierungsvermittler
ÜBERSICHT
ssh-agent [-c |
-s] [-DdTU]
[-a Bindungsadresse]
[-E Fingerabdruck-Hash]
[-O Option]
[-P erlaubte_Anbieter]
[-t Lebensdauer]
ssh-agent [-TU]
[-a Bindungsadresse]
[-E Fingerabdruck-Hash]
[-O Option]
[-P erlaubte_Anbieter]
[-t Lebensdauer]
Befehl [Arg …]
ssh-agent [-c |
-s] -k
ssh-agent -u
BESCHREIBUNG
ssh-agent ist ein Programm zum Halten
privater Schlüssel, die für asymmetrische Authentifizierung
verwandt werden. Mittels Umgebungsvariablen kann der Vermittler gefunden und
automatisch zur Authentifizierung verwandt werden, wenn mittels
ssh(1) eine Anmeldung auf anderen
Maschinen erfolgt.
Folgende Optionen stehen zur Verfügung:
-aBindungsadresse- Bindet den Vermittler an das UNIX-domain -Socket Bindungsadresse. Die Vorgabe ist die Erstellung eines Sockets an einem zufälligen Pfad, der auf $HOME/.ssh/agent/s.* passt.
-c- Erstellt C-Shell-Befehle auf die Standardausgabe. Dies ist die Vorgabe,
falls
SHELLso aussieht, dass es eine Csh-artige Shell ist. -D- Vordergrundmodus. Ist diese Option angegeben, wird
ssh-agentkein »fork« durchführen. -d- Fehlersuchmodus. Ist diese Option angegeben, wird
ssh-agentkein »fork« durchführen und Fehlersuchinformationen auf die Standardfehlerausgabe schreiben. -EFingerabdruck-Hash- Gibt den bei der Anzeige von Schlüssel-Fingerabdrücken zu verwendenden Hash-Algorithmus an. Gültige Optionen sind »md5« und »sha256«. Die Vorgabe ist »sha256«.
-k- Tötet den derzeitigen Vermittler (angegeben in der
Umgebungsvariablen
SSH_AGENT_PID). -OOption- Gibt beim Start von
ssh-agenteine Option an. Die unterstützten Optionen sind:allow-remote-pkcs11,no-restrict-websafeundwebsafe-allow.Die Option
allow-remote-pkcs11erlaubt es Clients eines weitergeleitetenssh-agent, PKCS#11- oder FIDO-Bereitstellungsbibliotheken zu laden. Standardmäßig dürfen nur lokale Clients diese Aktion durchführen. Beachten Sie, dass die Anzeige, dass einssh-agent-Client in der Ferne ist, durch ssh(1) erfolgt und andere Werkzeuge zur Weiterleitung des Zugriffs auf den Vermittler-Socket diese Beschränkung umgehen könnten.Die Option
no-restrict-websafeweistssh-agentan, Signaturen mittels FIDO-Schlüsseln zu erlauben, die Web-Authentifizierungsanfragen sein könnten. Standardmäßig verweigertssh-agentSignaturanfragen für FIDO-Schlüssel, bei denen die Schlüsselanwendungszeichenkette nicht mit »ssh:« beginnt und wenn die zu signierenden Daten nicht eine ssh(1) -Benutzerauthentifizierungsanfrage oder eine ssh-keygen(1) -Signatur zu sein scheinen. Das Standardverhalten verhindert weitergeleiteten Zugriff auf einen FIDO-Schlüssel auch durch implizites Weiterleiten der Fähigkeit, sich beim Webauftritten zu authentifizieren.Alternativ erlaubt die Option
websafe-allowdie Angabe einer Musterliste von zentralen Anwendungszeichenketten, um die standardmäßige Erlaubnisliste zu ersetzen, beispielsweise: »websafe-allow=ssh:*,example.org,*.example.com«.Siehe MUSTER in ssh_config(5) für eine Beschreibung der Muster-Listen-Syntax.
-Perlaubte_Anbieter- Gibt eine Musterliste von akzeptierbaren Pfaden für
PKCS#11-Anbieter- und dynamischen
FIDO-Authentifikator-Mittelschicht-Bibliotheken an, die mit der Option
-Soder-svon ssh-add(1) verwandt werden dürfen. Bibliotheken, die nicht auf die Musterliste passen, werden abgelehnt. Die Standard-Musterliste ist »/usr/lib*/*,/usr/local/lib*/*«.Siehe MUSTER in ssh_config(5) für eine Beschreibung der Muster-Listen-Syntax.
-s- Erstellt Bourne-Shell-Befehle auf die Standardausgabe. Dies ist die
Vorgabe, falls
SHELLnicht nach einer Csh-artigen Shell aussieht. -T- Bindet das Vermittler-Socket in einem zufälligen Unterverzeichnis der Form $TMPDIR/ssh-XXXXXXXXXX/agent.<ppid> anstelle des Standardverhaltens der Verwendung eines zufälligen Namens, der auf $HOME/.ssh/agent/s.* passt.
-tLebensdauer- Setzt einen Vorgabewert für die maximale Lebensdauer von in dem Vermittler hinzugefügten Identitäten fest. Die Lebensdauer kann in Sekunden oder in einem in sshd_config(5) spezifizierten Dateiformat angegeben werden. Eine für eine Identität mit ssh-add(1) angegebene Lebensdauer setzt diesen Wert außer Kraft. Ohne diese Option ist die maximale Lebensdauer standardmäßig »für immer«.
-U- Weist
ssh-agentan, keine zurückgebliebenen Vermittler-Sockets unter $HOME/.ssh/agent/ zu bereinigen. -u- Weist
ssh-agentan, nur zurückgebliebene Vermittler-Sockets unter $HOME/.ssh/agent/ zu bereinigen und sich dann sofort zu beenden. Falls diese Option zweimal angegeben wird, wirdssh-agentzurückgebliebene Vermittler-Sockets unabhängig von dem Rechnernamen, der sie erstellte, löschen. - Befehl [Arg …]
- Wenn ein Befehl (und optionale Argumente) übergeben werden, wird dieser als Unterprozess des Vermittlers ausgeführt. Der Vermittler beendet sich automatisch, wenn der auf der Befehlszeile übergebene Befehl sich beendet.
Es gibt drei grundsätzliche Arten, den Vermittler
einzurichten. Die erste ist beim Start der X-Sitzung, wobei alle anderen
Fenster und Programme als Kind des Programms
ssh-agent gestartet werden. Der Vermittler startet
einen Befehl, unter dem seine Umgebungsvariablen exportiert werden,
beispielsweise ssh-agent xterm &. Wenn sich der
Befehl beendet, beendet sich auch der Vermittler.
Die zweite Methode wird für Anmeldesitzungen verwandt. Wenn
ssh-agent gestartet wird, gibt es die Shell-Befehle
aus, die benötigt werden, um seine Umgebungsvariablen zu setzen, die
wieder in der aufrufenden Shell ausgewertet werden können. Beispiel:
eval `ssh-agent -s`.
In beiden dieser Fällen schaut sich ssh(1) diese Umgebungsvariablen an und verwendet sie, um eine Verbindung zum Vermittler aufzubauen.
Die dritte Art ssh-agent
auszuführen, ist über Socket-Aktivierung durch einen
überwachenden Prozess wie
systemd(1). In diesem Modus
erstellt der überwachende Prozess das auf Anfragen wartende Socket
und ist für das bedarfsgerechte Starten von
ssh-agent verantwortlich, ebenso wie für die
Mitteilung des Orts des Sockets-Bearbeiters an andere Programme in der
Sitzung des Benutzers. Socket-Aktivierung wird verwandt, wenn
ssh-agent mit einem der Schalter
-d oder -D gestartet wird,
keine Socket-Adresse zum Warten auf Anfragen mittels des Schalters
-a angegeben wird und sowohl die Umgebungsvariablen
LISTEN_FDS und LISTEN_PID
korrekt den überwachenden Prozess bereitstellen.
Der Vermittler hat anfänglich keine privaten
Schlüssel. Schlüssel werden mittels
ssh-add(1) oder durch
ssh(1), wenn
AddKeysToAgent in
ssh_config(5) gesetzt ist,
hinzugefügt. In ssh-agent können
mehrere Identitäten gleichzeitig gespeichert werden und
ssh(1) wird diese automatisch
verwenden, falls vorhanden. Mittels
ssh-add(1) werden auch
Schlüssel aus ssh-agent entfernt und darin
befindliche Schlüssel abgefragt.
Verbindungen zu ssh-agent können
von weiteren fernen Rechnern mittels der Option -A
von ssh(1) weitergeleitet werden
(lesen Sie aber die dort dokumentierten Warnungen), wodurch die
Notwendigkeit des Speicherns von Authentifizierungsdaten auf anderen
Maschinen vermieden wird. Authentifizierungs-Passphrasen und private
Schlüssel werden niemals über das Netz übertragen: die
Verbindung zu dem Vermittler wird über ferne SSH-Verbindungen
weitergeleitet und das Ergebnis wird dem Anfragenden zurückgeliefert,
wodurch der Benutzer überall im Netzwerk auf sichere Art Zugriff auf
seine Identitäten hat.
Bei Empfang eines SIGUSR1 wird
ssh-agent alle von ihm geladene Schlüssel
löschen.
UMGEBUNGSVARIABLEN
SSH_AGENT_PID- Wenn
ssh-agentstartet, speichert es den Namen der Prozesskennung (PID) des Vermittlers in dieser Variablen. SSH_AUTH_SOCK- Wenn
ssh-agentstartet, erstellt es einen UNIX-domain -Socket und speichert seinen Pfadnamen in dieser Variablen. Darauf kann nur der aktuelle Benutzer zugreifen, aber dies kann leicht von root oder einer anderen Instanz des gleichen Benutzers missbraucht werden.
DATEIEN
- $HOME/.ssh/agent/s.*
- Die UNIX-domain -Sockets, die die Verbindung zum Authentifizierungsvermittler enthalten. Diese Sockets sollten nur durch den Eigentümer lesbar sein. Die Sockets sollten automatisch entfernt werden, wenn sich der Vermittler beendet.
SIEHE AUCH
AUTOREN
OpenSSH ist eine Ableitung der ursprünglichen und freien SSH-1.2.12-Veröffentlichung durch Tatu Ylonen. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt und Dug Song entfernten viele Fehler, fügten neue Funktionalitäten wieder hinzu und erstellten OpenSSH. Markus Friedl steuerte die Unterstützung für SSH-Protokollversion 1.5 und 2.0 bei.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer: debian-l10n-german@lists.debian.org
| $Mdocdate: 4. Oktober 2025 $ | Linux 6.12.107+deb13-amd64 |