Rechnernetze
Home Nach oben SSH Transport

Secure Shell (SSH)

 

SSH ist ein Protokoll zum sicheren Einloggen und für andere sichere Netzwerkdienste über ein unsicheres Netzwerk. Es besteht aus drei wesentlichen Komponenten:

  1. Das Transportschichtprotokoll (SSH-TRANS) unterstützt
    1. Authentisierung,
    2. Vertraulichkeit,
    3. Datenintegrität,
    4. Kompression (optional).

    Die Transportschichtverbindung läuft typischerweise über eine TCP/IP-Verbindung, kann aber auch über jeden anderen sicheren Datenstrom geführt werden.

  2. Das Anwender-Authentisierungsprotokoll (SSH-USERAUTH) authentisiert den Anwender auf der Client-Seite gegenüber dem Server. Es verwendet das Transportschichtprotokoll.
  3. Das Verbindungsprotokoll (SSH-CONNECT) multiplext den verschlüsselten Tunnel in mehrere logische Kanäle. Es läuft über das Anwendungsauthentisierungs-Protokoll.

Der Client sendet eine Dienstanforderung, sobald eine sichere Transportschichtverbindung eingerichtet wurde. Nachdem die Anwender-Authentisierung komplett ist, wird eine zweite Dienstanforderung gesendet. Dadurch können neue Protokolle definiert werden und mit den definierten Protokollen koexistieren.

Das Verbindungsprotokoll stellt Kanäle zur Verfügung, welche für viele Zwecke eingesetzt werden können. Es werden Standardmethoden zur Verfügung gestellt, um sicher interaktive Shell-Sitzungen aufzubauen und beliebige TCP-IP-Ports Verbindungen zu tunneln.

Vertraulichkeit wird durch eine Reihe von Verschlüsselungsalgorithmen erreicht, welche optional ausgehandelt werden. Es werden die folgenden explizit genannt:

3des-cbc REQUIRED  three-key 3DES in CBC mode
blowfish-cbc  RECOMMENDED  Blowfish in CBC mode
twofish256-cbc  OPTIONAL  Twofish in CBC mode, with 256-bit key
twofish-cbc OPTIONAL  alias for "twofish256-cbc" (this
is being retained for
historical reasons)
twofish192-cbc OPTIONAL  Twofish with 192-bit key
twofish128-cbc RECOMMENDED  Twofish with 128-bit key
aes256-cbc OPTIONAL  AES (Rijndael) in CBC mode, with 256-bit key
aes192-cbc OPTIONAL  AES with 192-bit key
aes128-cbc RECOMMENDED  AES with 128-bit key
serpent256-cbc OPTIONAL  Serpent in CBC mode, with 256-bit key
serpent192-cbc OPTIONAL  Serpent with 192-bit key
serpent128-cbc OPTIONAL  Serpent with 128-bit key
arcfour  OPTIONAL  the ARCFOUR stream cipher
idea-cbc OPTIONAL  IDEA in CBC mode
cast128-cbc OPTIONAL  CAST-128 in CBC mode
none  OPTIONAL  no encryption; NOT RECOMMENDED

 

Hinweis: Im Deutschen wird in der Regel zwischen authentifizieren und authentisieren unterschieden. Der Duden sagt dazu:

au|then|ti|fi|zie|ren <griech.; lat.> (die Echtheit bezeugen; beglaubigen)
au|then|ti|sie|ren (geh. für glaubwürdig, rechtsgültig machen)

Man könnte die erste Form wählen, wenn etwa eine elektronische Unterschrift beglaubigt werden soll, und die zweite, wenn ein Absender seine Identität glaubwürdig machen soll. In der Regel wird in der Literatur allerdings nicht exakt zwischen diesen beiden Formen unterschieden.