Das SSH-Protokoll (auch als Secure Shell bezeichnet) ist eine Methode zur sicheren Remote-Anmeldung von einem Computer an einen anderen. Es bietet mehrere alternative Optionen für eine starke Authentifizierung und schützt die Kommunikationssicherheit und -integrität durch eine starke Verschlüsselung. Es ist eine sichere Alternative zu den nicht geschützten Login-Protokollen (wie telnet, rlogin) und unsicheren Dateitransfermethoden (wie FTP).

Typische Anwendungen des SSH-Protokolls

Das Protokoll wird in Unternehmensnetzwerken verwendet für:

  • Sicherer Zugriff für Benutzer und automatisierte Prozesse
  • interaktive und automatisierte Dateiübertragungen
  • Fernbefehle ausgeben
  • Verwaltung der Netzwerkinfrastruktur und anderer unternehmenskritischer Systemkomponenten.

Wie funktioniert das SSH-Protokoll?

Das Protokoll arbeitet im Client-Server-Modell, d. h. die Verbindung wird vom SSH-Client hergestellt, der sich mit dem SSH-Server verbindet. Der SSH-Client steuert den Verbindungsaufbau und verwendet Kryptographie mit öffentlichen Schlüsseln, um die Identität des SSH-Servers zu überprüfen. Nach der Installationsphase verwendet das SSH-Protokoll starke symmetrische Verschlüsselungs- und Hashing-Algorithmen, um die Vertraulichkeit und Integrität der zwischen Client und Server ausgetauschten Daten zu gewährleisten.

Die folgende Abbildung zeigt den vereinfachten Aufbauablauf einer sicheren Verbindung via Secure Shell:

Starke Authentifizierung mit SSH-Schlüsseln

Es gibt mehrere Optionen, die für die Benutzerauthentifizierung verwendet werden können. Die gebräuchlichsten sind Passwörter und die Authentifizierung mit öffentlichen Schlüsseln.

Die Public-Key-Authentifizierungsmethode wird in erster Linie für die Automatisierung und manchmal auch von Systemadministratoren für Single Sign-On verwendet. Es hat sich herausgestellt, dass sie viel häufiger genutzt wird als man jemals hätte erwarten können. Die Idee zu dieser Authentifizierungsmethode besteht darin, ein kryptografisches Schlüsselpaar - öffentlicher Schlüssel und privater Schlüssel - zu besitzen und den öffentlichen Schlüssel auf einem Server so zu konfigurieren, dass jeder, der eine Kopie des privaten Schlüssels besitzt, Zugriff auf den Server erhält und autorisiert wird. Die zur Authentifizierung verwendeten Schlüssel werden SSH-Schlüssel genannt. Die Authentifizierung mit öffentlichen Schlüsseln wird auch mit Smartcards verwendet, wie z. B. CAC- und PIV-Karten, welche von der US-Regierung verwendet werden.

Die Schlüssel-basierte Authentifizierung wird hauptsächlich verwendet, um eine sichere Automatisierung zu ermöglichen. Automatisierte sichere Shell-Dateiübertragungen werden für die nahtlose Integration von Anwendungen sowie für automatisiertes System- und Konfigurationsmanagement verwendet.

Untersuchungen zeigen, dass große Organisationen weit mehr SSH-Schlüssel haben, als sie denken. Die Verwaltung von SSH-Schlüsseln ist deswegen sehr wichtig geworden. SSH-Schlüssel gewähren den Zugriff ebenso wie Benutzernamen und Passwörter. Sie erfordern also einen vergleichbaren Bereitstellungs- und Kündigungsprozess.

In einigen Fällen sind mehrere Millionen SSH-Keys gefunden worden, die den Zugriff auf produktive Server in Kundenumgebungen erlauben, wobei 90% der Keys unbenutzt sind und Zugriff repräsentieren, der zwar bereitgestellt, aber nie beendet wurde. Die Gewährleistung richtiger Richtlinien, Prozesse und Audits auch für die SSH-Nutzung ist entscheidend für das richtige Identitäts- und Zugriffsmanagement. Traditionelle Identitätsmanagementprojekte haben bis zu 90% aller Berechtigungsnachweise übersehen, da SSH-Schlüssel ignoriert wurden. Wir bieten Dienstleistungen und Tools für die Implementierung von SSH-Schlüsselmanagement.

SSH bietet starke Verschlüsselung und Integritätsschutz

Nach dem Verbindungsaufbau zwischen SSH-Client und Server werden die übermittelten Daten entsprechend den im Setup ausgehandelten Parametern verschlüsselt. Während der Verhandlung stimmen Client und Server den zu verwendenden symmetrischen Verschlüsselungsalgorithmus ab und generieren den zu verwendenden Verschlüsselungscode. Der Verkehr zwischen den kommunizierenden Parteien wird durch starke Verschlüsselungsalgorithmen nach Industriestandard (z. B. AES (Advanced Encryption Standard)) geschützt, und das SSH-Protokoll enthält auch einen Mechanismus, der die Integrität der übermittelten Daten durch Verwendung von Standard-Hash-Algorithmen (z. B. SHA-2 (Standard Hashing Algorithmus)) sicherstellt.

IETF SSH Standard und detaillierte technische Dokumentation

Das Kernprotokoll

Mit wachsender Popularität des SSH-Protokoll´s wurde das Protokoll vom IETF als ein Standard definiert. Es ist jetzt ein Internetstandard, der in den folgenden Dokumenten beschrieben wird:

SFTP-Dateiübertragungsprotokoll

Das SFTP (SSH File Transfer Protocol) ist heute wahrscheinlich das am weitesten verbreitete sichere Dateiübertragungsprotokoll. Es läuft über SSH, und ist derzeit in der draft-ietf-secsh-filexfer-02 dokumentiert.

Dateiformat für öffentlichen Schlüssel

Das Dateiformat des öffentlichen Schlüssels ist kein formaler Standard (es ist ein Informationsdokument), aber viele Implementierungen unterstützen dieses Format.

Partner | Referenzen
  • sbb.gif
  • dekabank.gif
  • deutschepost.gif
  • Exponet Infrakon 4c.png
  • idRoboTica.png
  • commerzbank.gif
  • hvb.jpg
  • 1_LOGO_VARONIS.png
  • DEUTSCHE_BANK.png
  • tuev-nord.jpg
  • 1_LOGO_Avalara.jpg
  • 1_LOGO_FARSITE.png
  • CLAAS.png
  • ASKLEPIOS.png
  • NXP.png
  • Tsystems.gif
  • Postbank.jpg
  • 1_LOGO_SSH.png
  • netcologne.gif
  • VOESTALPINE.png