SSH - Secure Shell

SSH bzw. Secure Shell ist ein kryptografisches Protokoll mit dem man auf einen entfernten Rechner mittels einer verschlüsselten Verbindung über ein unsicheres Netzwerk zugreifen kann. Der Entwickler dieses Protokolls und der dazugehörigen Software ist der Finne Tatu Ylönen.
Die Shell (Kommandozeile) bietet vollen Zugriff auf das Dateisystem und alle Funktionen des Rechners. Dazu verwendet man in der Regel Telnet (TCP/Port 23) oder rlogin/rsh. Diese Programme und dazugehörigen Protokolle sind jedoch unsicher, weil das Zugangspasswort in Klartext übertragen wird. Das sollte innerhalb eines unsicheren Netzwerks, z. B. dem Internet, nicht passieren, da man nicht weiß, wo der Datenverkehr verläuft und ob er abgehört wird.
Die Funktionen der Secure Shell beinhalten den Login auf entfernte Rechner, die interaktive und nicht interaktive Ausführung von Kommandos und das Kopieren von Dateien zwischen verschiedenen Rechnern eines Netzwerks. SSH bietet dazu eine kryptografisch gesicherte Kommunikation über das unsichere Netzwerk, eine zuverlässige gegenseitige Authentisierung, Verschlüsselung des gesamten Datenverkehrs auf Basis eines Passworts oder Public/Private-Key-Login-Methoden.
In den meisten Fällen ersetzt Secure Shell Telnet, FTP und die r-Utilities.

SSH 1.x und SSH 2.x

Das SSH-Protokoll existiert in den Versionen SSH 1.x und SSH 2.x. Beide Versionen sind inkompatibel zueinander. Das SSH-Protokoll 1.x ist nicht international standardisiert und unterliegt einiger konzeptionellen Schwächen, die in SSH 2.x nicht vorhanden sind.
Im Juni 1995 hat Tatu Ylönen SSH 1.0 unter Unix freigegeben und bis zur Version 1.2.12 als beliebig nutzbar freigegeben.
SSH 2.x wurde durch eine Arbeitsgruppe der IETF erarbeitet. Es empfiehlt sich die Version 2 von SSH zu verwenden. Unter SSH 2.x gibt es außerdem das Protokoll SFTP (Secure File Transfer Protocol), das für den Dateitransfer zuständig ist. Es basiert auf dem bereits existierenden FTP.

OpenSSH

OpenSSH ist eine Entwicklung des OpenBSD-Projekts und basiert auf SSH 1.2.12. Im Gegensatz zum Original wird OpenSSH aktiv gepflegt und enthält neben einigen Erweiterungen und Verbesserungen auch das SSH-Protokoll 2.x. OpenSSH ist eine Implementierung von SSH für Unix/Linux. Für Windows-Betriebssysteme gibt es die Freeware putty, die eine grafische Benutzeroberfläche für SSH 1.x und SSH 2.x hat.