Ssh: Unterschied zwischen den Versionen
K Textersetzung - „( “ durch „(“ |
K Textersetzung - „ TCP-“ durch „ TCP-“ |
||
| (Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
| Zeile 8: | Zeile 8: | ||
; X11-Verbindungen | ; X11-Verbindungen | ||
* beliebige TCP-Ports und UNIX-domain -Sockets können auch über den sicheren Kanal weitergeleitet werden. | * beliebige [[TCP]]-Ports und UNIX-domain -Sockets können auch über den sicheren Kanal weitergeleitet werden. | ||
; Ausführung von Befehlen | ; Ausführung von Befehlen | ||
| Zeile 59: | Zeile 59: | ||
* Dies ist nur auf Systemen mit mehr als einer Adresse nützlich. | * Dies ist nur auf Systemen mit mehr als einer Adresse nützlich. | ||
|- | |- | ||
| -C || Fordert die Komprimierung sämtlicher Daten (einschließlich Stdin, Stdout, Stderr und über X11, TCP und UNIX-domain -Verbindungen weitergeleitete Daten). | | -C || Fordert die Komprimierung sämtlicher Daten (einschließlich Stdin, Stdout, Stderr und über X11, [[TCP]] und UNIX-domain -Verbindungen weitergeleitete Daten). | ||
* Der Kompressionsalgorithmus ist der gleiche, den auch gzip(1) nutzt. | * Der Kompressionsalgorithmus ist der gleiche, den auch gzip(1) nutzt. | ||
* Die Komprimierung eignet sich für Modemleitungen und andere langsame Anbindungen, wird die Verbindung aber in schnellen Netzwerken nur ausbremsen. | * Die Komprimierung eignet sich für Modemleitungen und andere langsame Anbindungen, wird die Verbindung aber in schnellen Netzwerken nur ausbremsen. | ||
| Zeile 115: | Zeile 115: | ||
* Falls keine Zertifikate explizit durch die Direktive CertificateFile angegeben sind, wird ssh versuchen, die Zertifikatsinformationen aus dem Dateinamen zu laden, der durch Anhängen von -cert.pub an die Identitätsdateinamen ermittelt wird. | * Falls keine Zertifikate explizit durch die Direktive CertificateFile angegeben sind, wird ssh versuchen, die Zertifikatsinformationen aus dem Dateinamen zu laden, der durch Anhängen von -cert.pub an die Identitätsdateinamen ermittelt wird. | ||
|- | |- | ||
| -J Ziel || Verbindet sich zum Zielrechner, indem ssh zuerst eine Verbindung zu dem in Ziel angegebenen Sprungrechner aufbaut und dann dort eine TCP-Weiterleitung zum endgültigen Ziel etabliert. | | -J Ziel || Verbindet sich zum Zielrechner, indem ssh zuerst eine Verbindung zu dem in Ziel angegebenen Sprungrechner aufbaut und dann dort eine [[TCP]]-Weiterleitung zum endgültigen Ziel etabliert. | ||
* Mehrere Sprungrechner können durch Kommata getrennt angegeben werden. | * Mehrere Sprungrechner können durch Kommata getrennt angegeben werden. | ||
* Dies ist eine Abkürzung für die Verwendung der Konfigurationsdirektive ProxyJump. | * Dies ist eine Abkürzung für die Verwendung der Konfigurationsdirektive ProxyJump. | ||
| Zeile 131: | Zeile 131: | ||
-L lokales_Socket:Rechner | -L lokales_Socket:Rechner | ||
| Gibt an, dass Verbindungen zu dem angegebenen TCP-Port oder Unix-Socket auf dem lokalen (Client-)Rechner an den angegeben Rechner und Port oder Unix-Socket auf der fernen Seite weitergeleitet werden soll. | | Gibt an, dass Verbindungen zu dem angegebenen [[TCP]]-Port oder Unix-Socket auf dem lokalen (Client-)Rechner an den angegeben Rechner und Port oder Unix-Socket auf der fernen Seite weitergeleitet werden soll. | ||
* Dies funktioniert durch Zuweisung eines Ports, der entweder auf einen TCP- Port auf der lokalen Seite, optional an die angegebene Anbindeadresse angebunden, oder auf einem Unix-Socket auf Anfragen wartet. | * Dies funktioniert durch Zuweisung eines Ports, der entweder auf einen [[TCP]]- Port auf der lokalen Seite, optional an die angegebene Anbindeadresse angebunden, oder auf einem Unix-Socket auf Anfragen wartet. | ||
* Immer wenn eine Verbindung zu dem lokalen Port oder Socket erfolgt, wird die Verbindung über den sicheren Kanal weitergeleitet und es erfolgt entweder eine Verbindung zu dem Port des Rechners Rechnerport oder zum dem Unix-Socket fernes_Socket auf der fernen Maschine. | * Immer wenn eine Verbindung zu dem lokalen Port oder Socket erfolgt, wird die Verbindung über den sicheren Kanal weitergeleitet und es erfolgt entweder eine Verbindung zu dem Port des Rechners Rechnerport oder zum dem Unix-Socket fernes_Socket auf der fernen Maschine. | ||
Port-Weiterleitung kann auch in der gesamten Konfigurationsdatei festgelegt werden. | Port-Weiterleitung kann auch in der gesamten Konfigurationsdatei festgelegt werden. | ||
| Zeile 186: | Zeile 186: | ||
-R [Anbindeadresse:]Port | -R [Anbindeadresse:]Port | ||
| Gibt an, dass Verbindungen zum dem angegebenen TCP-Port oder Unix-Socket auf dem fernen Rechner (Server) an die lokale Seite weitergeleitet werden sollen. | | Gibt an, dass Verbindungen zum dem angegebenen [[TCP]]-Port oder Unix-Socket auf dem fernen Rechner (Server) an die lokale Seite weitergeleitet werden sollen. | ||
Dazu wird auf der fernen Seite ein Socket bereitgestellt, das entweder auf einem TCP- Port oder einem Unix-Socket auf Anfragen wartet. | Dazu wird auf der fernen Seite ein Socket bereitgestellt, das entweder auf einem [[TCP]]- Port oder einem Unix-Socket auf Anfragen wartet. | ||
* Immer wenn eine Verbindung zu diesem Port oder Unix-Socket aufgebaut wird, wird sie über den sicheren Kanal weitergeleitet und eine weitere Verbindung erstellt, die zu einem expliziten Ziel führt (angegeben durch den Port Rechnerport auf dem Rechner oder lokales_Socket). | * Immer wenn eine Verbindung zu diesem Port oder Unix-Socket aufgebaut wird, wird sie über den sicheren Kanal weitergeleitet und eine weitere Verbindung erstellt, die zu einem expliziten Ziel führt (angegeben durch den Port Rechnerport auf dem Rechner oder lokales_Socket). | ||
* Falls kein Ziel genannt wurde, arbeitet ssh als SOCKS4/5-Proxy und leitet die Verbindungen zu den Zielen weiter, die vom entfernten SOCKS-Client erbeten werden. | * Falls kein Ziel genannt wurde, arbeitet ssh als SOCKS4/5-Proxy und leitet die Verbindungen zu den Zielen weiter, die vom entfernten SOCKS-Client erbeten werden. | ||
| Zeile 193: | Zeile 193: | ||
* Privilegierte Ports können nur nach Anmeldung als root auf der fernen Maschine weitergeleitet werden. | * Privilegierte Ports können nur nach Anmeldung als root auf der fernen Maschine weitergeleitet werden. | ||
* Durch Einschluss der Adresse in eckige Klammern können IPv6-Adressen angegeben werden. | * Durch Einschluss der Adresse in eckige Klammern können IPv6-Adressen angegeben werden. | ||
Standardmäßig werden TCP-Ports auf dem Server, an denen auf Anfragen gewartet wird, nur an die Loopback-Schnittstelle gebunden. | Standardmäßig werden [[TCP]]-Ports auf dem Server, an denen auf Anfragen gewartet wird, nur an die Loopback-Schnittstelle gebunden. | ||
* Dies kann durch Angabe einer Anbindeadresse außer Kraft gesetzt werden. | * Dies kann durch Angabe einer Anbindeadresse außer Kraft gesetzt werden. | ||
* Eine leere Anbindeadresse oder die Adresse ‘*’ zeigt an, dass das ferne Socket auf allen Schnittstellen auf Anfragen warten soll. | * Eine leere Anbindeadresse oder die Adresse ‘*’ zeigt an, dass das ferne Socket auf allen Schnittstellen auf Anfragen warten soll. | ||
Aktuelle Version vom 4. Juli 2026, 11:47 Uhr
Der Befehl ssh startet einen Secure Shell-Client zur Anmeldung an einem SSH-Server
Beschreibung

- ssh verbindet sich mit dem angegebenen Ziel und meldet sich dort an
- Es ist zur Bereitstellung sicherer, verschlüsselter Kommunikation zwischen zwei nicht vertrauenswürdigen Rechnern über ein unsicheres Netzwerk gedacht.
- Der Benutzer muss seine/ihre Identitität auf der fernen Maschine mittels einer von mehreren, nachfolgend beschriebenen Methoden nachweisen.
- X11-Verbindungen
- beliebige TCP-Ports und UNIX-domain -Sockets können auch über den sicheren Kanal weitergeleitet werden.
- Ausführung von Befehlen
- Falls ein Befehl angegeben ist, wird er auf dem fernen Rechner statt in einer Anmelde-Shell ausgeführt.
- Als Befehl kann eine komplette Befehlszeile angegeben werden oder er kann zusätzliche Argumente haben.
- Falls angegeben, werden die Argumente an den Befehl, durch Leerzeichen getrennt, angehängt, bevor er an den Server zur Ausführung gesandt wird.
Installation
Anwendung
X-Umleitung
siehe SSH/X-Forwarding
Passwort-Authentifizierung erzwingen
- Testen der Passwort-Authentifizierung
- Die Authentifizierung mit öffentlichem Schlüssel wird hier abgeschaltet
- ssh
$ ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no user@host
- scp
$ scp -o PreferredAuthentications=password -o PubkeyAuthentication=no DATEI user@host:DATEI
Aufruf
$ ssh [OPTIONEN] ZIEL [Befehl]
$ ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B Anbindeschnittstelle] [-b Anbindeadresse] [-c Chiffrespez] [-D [Anbindeadresse:]Port] [-E Protokolldatei] [-e Maskierzeichen] [-F Konfigurationsdatei] [-I PKCS11] [-i Identitätsdatei] [-J Ziel] [-L Adresse] [-l Anmeldename] [-m MAC_Spez] [-O Steuerbefehl] [-o Option] [-p Port] [-Q Abfrageoption] [-R Adresse] [-S Steuerpfad] [-W Rechner:Port] [-w lokaler_Tun[:ferner_Tun]] Ziel [Befehl [Argument …]]
Optionen
| Option | Beschreibung |
|---|---|
| -4 | Erzwingt, dass ssh nur IPv4-Adressen verwendet. |
| -6 | Erzwingt, dass ssh nur IPv6-Adressen verwendet. |
| -A | Aktiviert die Weiterleitung von Verbindungen von Authentifizierungsvermittlern wie ssh-agent(1).
|
| -a | Deaktiviert die Weiterleitung der Authentifizierungsverbindung des Vermittlers. |
| -B Anbindeschnittstelle | Bindet an die Adresse aus Anbindeschnittstelle an, bevor versucht wird, sich mit dem Zielrechner zu verbinden.
|
| -b Anbindeadresse | Verwendet Anbindeadresse auf der lokalen Maschine als Quelladresse der Verbindung.
|
| -C | Fordert die Komprimierung sämtlicher Daten (einschließlich Stdin, Stdout, Stderr und über X11, TCP und UNIX-domain -Verbindungen weitergeleitete Daten).
|
| -c Chiffrespez | Wählt die Chiffrespezifikation für die Kryptografie der Verbindung aus.
|
| -D [Anbindeadresse:]Port | Legt eine lokale, "dynamische", anwendungsbezogene Port-Weiterleitung fest.
IPv6-Adressen können durch Angabe der Adresse in eckigen Klammern festgelegt werden.
|
| -E Protokolldatei | Hängt Fehlersuchprotokolle an Protokolldatei statt an die Standardfehlerausgabe an. |
| -e Maskierzeichen | Setzt das Maskierzeichen für die Sitzung mit einem PTY (Vorgabe: ‘~’).
|
| -F Konfigurationsdatei | Legt eine alternative, benutzerbezogene Konfigurationsdatei fest.
|
| -f | Fordert ssh auf, sich vor der Befehlsausführung in den Hintergrund zu schieben.
|
| -G | Führt dazu, dass ssh nach der Auswertung der Blöcke Host und Match seine Konfiguration anzeigt und sich beendet. |
| -g | Erlaubt es fernen Rechnern, sich mit lokal weitergeleiteten Ports zu verbinden.
diese Option beim Master-Prozess eingesetzt werden. |
| -I PKCS11 | Gibt die dynamische PKCS#11-Bibliothek an, die ssh für die Kommunikation mit einem PKCS#11-Token verwenden soll, der Schlüssel für die Benutzerauthentifizierung bereitstellt. |
| -i Identitätsdatei | Wählt eine Datei, aus der die Identität (der private Schlüssel) für asymmetrische Authentifizierung gelesen wird.
|
| -J Ziel | Verbindet sich zum Zielrechner, indem ssh zuerst eine Verbindung zu dem in Ziel angegebenen Sprungrechner aufbaut und dann dort eine TCP-Weiterleitung zum endgültigen Ziel etabliert.
|
| -K | Aktiviert GSSAPI-basierte Authentifizierung und Weiterleitung (Delegierung) von GSSAPI-Anmeldedaten an den Server. |
| -k | Deaktiviert Weiterleitung (Delegierung) von GSSAPI-Anmeldedaten an den Server. |
| -L [Anbindeadresse:]Port:Rechner:Rechnerport
-L [Anbindeadresse:]Port:fernes_Socket, -L lokales_Socket:Rechner:Rechnerport -L lokales_Socket:Rechner |
Gibt an, dass Verbindungen zu dem angegebenen TCP-Port oder Unix-Socket auf dem lokalen (Client-)Rechner an den angegeben Rechner und Port oder Unix-Socket auf der fernen Seite weitergeleitet werden soll.
Port-Weiterleitung kann auch in der gesamten Konfigurationsdatei festgelegt werden.
Standardmäßig ist der lokale Port gemäß der Einstellung GatewayPorts angebunden.
|
| -l Anmeldename | Gibt den Benutzernamen an, unter dem die Anmeldung in der fernen Maschine erfolgen soll.
|
| -M | Bringt den ssh -Client in den "master" -Modus für die gemeinsame Benutzung von Verbindungen.
|
| -m MAC_Spez | Eine Kommata-getrennte Liste von MAC- (Nachrichtenauthentifizierungscodes-)Algorithmen, in der Reihenfolge der Präferenz angegeben.
|
| -N | Führt keinen Befehl in der Ferne aus.
|
| -n | Leitet Stdin nach /dev/null um (tätsächlich wird des Lesen von Stdin verhindert).
|
| -O Steuerbefehl | Steuert einen aktiven Master-Prozess für Verbindungs-Multiplexing.
|
| -o Option | Kann zur Angabe von Optionen, die wie in der Konfigurationsdatei formatiert sind, verwandt werden.
|
| -p Port | Port, zu dem beim fernen Rechner verbunden werden soll.
|
| -Q Abfrageoption | Erfragt die Algorithmen, die von einem der folgenden Funktionalitäten unterstützt werden: cipher (unterstützte symmetrische Chiffren), cipher-auth (unterstützte symmetrische Chiffren, die authentifizierte Kryptografie unterstützen), help (die für den Einsatz mit dem Schalter -Q unterstützten Abfrageausdrücke), mac (unterstützte Nachrichtenintegritätscodes), kex (Schlüssel-Austauschalgorithmen), kex-gss (GSSAPI-Schlüssel-Austauschalgorithmen), key (Schlüsseltypen), key-cert (Zertifikatsschlüsseltypen), key-plain (nicht-Zertifikatsschlüsseltypen), key-sig (alle Schlüsseltypen und Signaturalgorithmen), Protokollversion (unterstützte SSH-Protokollversionen) und sig (unterstützte Signaturalgorithmen).
|
| -q | Stiller Modus.
|
| -R [Anbindeadresse:]Port:Rechner:Rechnerport
-R [Anbindeadresse:]Port:lokales_Socket -R fernes_Socket:Rechner:Rechnerport -R fernes_Socket:lokales_Socket -R [Anbindeadresse:]Port |
Gibt an, dass Verbindungen zum dem angegebenen TCP-Port oder Unix-Socket auf dem fernen Rechner (Server) an die lokale Seite weitergeleitet werden sollen.
Dazu wird auf der fernen Seite ein Socket bereitgestellt, das entweder auf einem TCP- Port oder einem Unix-Socket auf Anfragen wartet.
Port-Weiterleitungen können auch in der Konfigurationsdatei festgelegt werden.
Standardmäßig werden TCP-Ports auf dem Server, an denen auf Anfragen gewartet wird, nur an die Loopback-Schnittstelle gebunden.
Falls das Argument Port ‘0’ ist, dann wird der Port, an dem auf Anfragen gewartet wird, dynamisch auf dem Server zugewiesen und zur Laufzeit dem Client mitgeteilt.
|
| -S Steuerpfad | Gibt den Ort eines Steuer-Sockets für die gemeinsame Verwendung von Verbindungen oder die Zeichenkette "none" an, um die gemeinsame Verwendung von Verbindungen zu deaktivieren.
|
| -s | Kann dazu verwandt werden, um das Starten eines Subsystems auf dem fernen System zu erbitten.
sicheren Transport für andere Anwendungen (beispielsweise
|
| -T | Deaktiviert Pseudo-Terminal-Zuweisung. |
| -t | Erzwingt Pseudo-Terminal-Zuweisung.
Dies kann zur Implementierung von beispielsweise Menü-Diensten sehr nützlich sein.
|
| -V | Zeigt die Versionnummer an und beendet sich. |
| -v | Ausführlicher Modus.
|
| -W Rechner:Port | Fordert, dass die Standardein- und -ausgabe auf dem Client an Rechner auf Port über den sicheren Kanal weitergeleitet wird.
|
| -w lokaler_Tun[:ferner_Tun] | Fordert Tunnelgerät-Weiterleitung mit den angegebenen tun(4) -Geräten zwischen dem Client (lokaler_Tun) und dem Server (ferner_Tun).
Die Geräte können über numerische Kennungen oder das Schlüsselwort "any", das das nächste verfügbare Tunnelgerät verwendet, angegeben werden. Falls ferner_Tun nicht angegeben ist, ist die Vorgabe "any".
Falls die Direktive Tunnel nicht gesetzt ist, wird sie auf den Standard-Tunnel-Modus ("point-to-point") gesetzt.
|
| -X | Aktiviert X11-Weiterleitung.
X11-Weiterleitung sollte mit Vorsicht aktiviert werden.
Aus diesem Grund unterliegt X11-Weiterleitung standardmäßig den X11-SECURITY-Erweiterungen.
(Debian-spezifisch: X11-Weiterleitung unterliegt derzeit standardmäßig nicht den Einschränkungen der X11-SECURITY-Erweiterungen, da derzeit zu viele Programme in diesem Modus abstürzen.
|
| -x | Deaktiviert X11-Weiterleitung. |
| -Y | Aktiviert vertrauenswürdige X11-Weiterleitung.
|
| -y | Sendet mittels des Systemmoduls syslog(3) Protokollinformationen.
|
Argumente
- Ziel
- [Benutzer@]Rechnername
- ssh://[Benutzer@]Rechnername[:Port]