Zum Inhalt

47-Tage-Zertifikate sind im Anmarsch. Sind Sie bereit?

Jetzt handeln →

Was ist Secure Shell (SSH)? Wie funktioniert Secure Shell?

Was ist SSH Secure Shell und wie funktioniert es?

Secure Shell (SSH) ist ein Netzwerkprotokoll, das Benutzern und Administratoren den sicheren Zugriff auf einen entfernten Computer über ein ungesichertes Netzwerk ermöglicht und die Steuerung sowie den Datentransfer dorthin erlaubt. Es verwendet starke Verschlüsselung und Authentifizierung zum Schutz der Verbindung und ist der Standard für die Anmeldung an und die Verwaltung von Remote-Servern.

Secure Shell (SSH) ist ein kryptografisches Netzwerkprotokoll für den sicheren Betrieb eines Remote-Computers über ein unsicheres Netzwerk. Es erstellt einen verschlüsselten Kanal zwischen einem SSH-Client und einem SSH-Server, sodass Administratoren sich anmelden, Befehle ausführen und Dateien übertragen können, ohne diese dem Risiko des Abhörens oder der Manipulation auszusetzen. SSH verwendet Public-Key-Authentifizierung und starke Verschlüsselung und läuft üblicherweise auf Port 22.

Wichtige Erkenntnisse

  • SSH (Secure Shell) ist ein Protokoll für den sicheren Zugriff auf und die Verwaltung eines entfernten Computers über ein ungesichertes Netzwerk mittels Verschlüsselung und starker Authentifizierung.
  • Es folgt einem Client-Server-Modell: Der SSH-Client verbindet sich mit einem SSH-Server, beide authentifizieren sich und verhandeln Schlüssel, und der gesamte nachfolgende Datenverkehr wird verschlüsselt. SSH verwendet standardmäßig TCP-Port 22.
  • SSH unterstützt die Passwortauthentifizierung und, noch sicherer, die Public-Key-Authentifizierung mittels eines SSH-Schlüsselpaares (ein öffentlicher Schlüssel auf dem Server, ein privater Schlüssel im Besitz des Benutzers).
  • Neben der Fernanmeldung ermöglicht SSH die sichere Dateiübertragung (SFTP und SCP), Portweiterleitung und Tunneling sowie den automatisierten Zugriff von Maschine zu Maschine.
  • SSH-Schlüssel gewähren oft privilegierten Zugriff und laufen nie ab, daher stellt eine unkontrollierte „SSH-Schlüsselflut“ ein echtes Sicherheitsrisiko dar. Die Verwaltung des SSH-Schlüssellebenszyklus ist genauso wichtig wie das Protokoll selbst.

Wozu wird SSH verwendet?

SSH, auch Secure Shell oder Secure Socket Shell genannt, ist das Standardwerkzeug für die sichere Administration von Remote-Systemen. Es ersetzte ältere Protokolle wie Telnet und rlogin, die Daten, einschließlich Passwörter, im Klartext übertrugen. Häufige Anwendungsfälle sind:

  • Fernzugriff und -verwaltung: Sicheres Einloggen in Server und Netzwerkgeräte, um Befehle auszuführen und Systeme zu verwalten.
  • Sichere Dateiübertragung: Dateien werden mit SFTP (SSH File Transfer Protocol) oder SCP übertragen, die beide über den verschlüsselten SSH-Kanal laufen.
  • Automatisierung und Maschinenzugriff: Automatisierte Skripte, Backups und Konfigurationsverwaltung nutzen SSH-Schlüssel, um Verbindungen ohne menschliches Eingreifen herzustellen.
  • Portweiterleitung und Tunneling: SSH kann andere Protokolle über seinen verschlüsselten Kanal tunneln und fungiert somit als ressourcenschonende VPN-ähnliche Lösung.
  • Infrastrukturverwaltung: Administration unternehmenskritischer Systeme und Netzwerkkomponenten aus der Ferne.

Wie funktioniert SSH?

SSH arbeitet nach dem Client-Server-Modell. Ein SSH-Client initiiert eine Verbindung zu einem SSH-Server (der standardmäßig auf TCP-Port 22 lauscht), und beide stellen einen verschlüsselten Kanal her, bevor sensible Daten oder Zugangsdaten ausgetauscht werden. Dieser Vorgang läuft in drei Phasen ab.

  • Verbindung und Schlüsselaustausch: Der Client verbindet sich mit dem Server, und beide Parteien einigen sich auf eine Protokollversion und kryptografische Algorithmen. Anschließend führen sie einen Schlüsselaustausch (typischerweise Diffie-Hellman) durch, um einen gemeinsamen symmetrischen Sitzungsschlüssel zu vereinbaren, ohne diesen Schlüssel jemals über das Netzwerk zu übertragen. Der Client überprüft außerdem den Host-Schlüssel des Servers, um sicherzustellen, dass er sich mit dem richtigen Rechner und nicht mit einem Betrüger verbindet.
  • Authentifizierung: Der Server überprüft die Identität des Benutzers, üblicherweise mit einem Passwort oder, sicherer, mit Public-Key-Authentifizierung. Bei der Public-Key-Authentifizierung weist der Benutzer den Besitz eines privaten Schlüssels nach, der zu einem bereits auf dem Server gespeicherten öffentlichen Schlüssel passt.
  • Verschlüsselte Sitzung: Sobald der Kanal eingerichtet und der Benutzer authentifiziert ist, wird der gesamte Datenverkehr mit dem ausgehandelten symmetrischen Algorithmus verschlüsselt (z. B. AESund ist durch einen Hash-Algorithmus (wie SHA-2) vor Manipulationen geschützt. Befehle, Ausgaben und Dateien werden über diesen sicheren Kanal übertragen.

Das Design kombiniert asymmetrische und symmetrische Kryptografie : Asymmetrische Verfahren übernehmen den Schlüsselaustausch und die Authentifizierung, während eine schnelle symmetrische Verschlüsselung den Großteil der Sitzung schützt. Dies entspricht dem Hybridmuster, das auch bei TLS verwendet wird.

Maßgeschneiderte Verschlüsselungsdienste

Wir bewerten, entwickeln Strategien und implementieren Verschlüsselungsstrategien und -lösungen.

SSH-Authentifizierungsmethoden

SSH unterstützt verschiedene Methoden zur Benutzerauthentifizierung. Die beiden gebräuchlichsten sind Passwörter und öffentliche Schlüssel.

Passwortauthentifizierung

Der Benutzer gibt ein Passwort ein, das über den bereits verschlüsselten Kanal übertragen wird. Es ist zwar einfach, aber weniger sicher: Passwörter können erraten, wiederverwendet oder per Brute-Force-Angriff geknackt werden und eignen sich nicht für die Automatisierung.

Authentifizierung mit öffentlichen Schlüsseln (SSH-Schlüssel)

Die sicherere und weitverbreitete Methode basiert auf einem SSH-Schlüsselpaar. Der Benutzer generiert einen öffentlichen und einen privaten Schlüssel. Der öffentliche Schlüssel wird auf dem Server (in der Datei mit den autorisierten Schlüsseln) gespeichert, der private Schlüssel verbleibt beim Benutzer. Zur Authentifizierung weist der Benutzer nach, dass er den privaten Schlüssel besitzt, ohne ihn zu übermitteln. Dies ermöglicht passwortlosen, automatisierten Zugriff und Single Sign-On. Daher bilden SSH-Schlüssel das Rückgrat sicherer Automatisierung, automatisierter Dateiübertragungen und der Verwaltung großer Konfigurationsmengen.

EC SSH

Das versteckte Risiko: Die unkontrollierte Ausbreitung von SSH-Schlüsseln
SSH-Schlüssel sind mächtig, und genau deshalb stellen sie ein Risiko dar, wenn sie nicht verwaltet werden. Im Gegensatz zu Zertifikaten laufen SSH-Schlüssel in der Regel nicht ab und sammeln sich daher über Jahre an. Große Organisationen besitzen oft weitaus mehr SSH-Schlüssel als Mitarbeiter, von denen viele privilegierten oder Root-Zugriff gewähren, ohne dass dokumentiert ist, wem sie gehören oder welche Berechtigungen sie freischalten. Verwaiste und nicht nachverfolgte Schlüssel bieten eine erhebliche Angriffsfläche: Ein einziger durchgesickerter privater Schlüssel kann einem Angreifer dauerhaften, privilegierten Zugriff verschaffen. Daher ist die Verwaltung des gesamten SSH-Schlüssellebenszyklus – von der Ermittlung über die Rotation bis hin zur Löschung – genauso wichtig wie das Protokoll selbst.

Vorteile von SSH

  • Starke Sicherheit: Verschlüsselung und Authentifizierung gewährleisten die Vertraulichkeit von Daten und die Manipulationssicherheit von Verbindungen, selbst über nicht vertrauenswürdige Netzwerke.
  • Vielseitigkeit: SSH ermöglicht Fernzugriff auf Terminals, Dateiübertragung, Tunneling und Automatisierung in einem einzigen Protokoll.
  • Plattformübergreifend: SSH ist auf praktisch allen Betriebssystemen verfügbar, wobei OpenSSH die am weitesten verbreitete Implementierung ist.
  • Automatisierungsfreundlich: Die schlüsselbasierte Authentifizierung ermöglicht sichere, unbeaufsichtigte Verbindungen zwischen Maschinen.
  • Überwachung und Protokollierung: SSH bietet eine Protokollierungsfunktion, die es Administratoren ermöglicht, Zugriffe zu überwachen und Vorfälle zu untersuchen.

SSH und der Übergang nach der Quantenphysik

SSH basiert auf der asymmetrischen Kryptografie, die beim Schlüsselaustausch und der Authentifizierung zum Einsatz kommt. Genau diese könnte ein zukünftiger Quantencomputer mithilfe von Shors Algorithmus knacken. Das SSH-Ökosystem reagiert darauf: Neuere Versionen von OpenSSH verwenden Post-Quanten-Schlüsselaustauschverfahren (eine Kombination aus einem klassischen und einem quantenresistenten Algorithmus), um Sitzungen vor Angriffen zu schützen , bei denen der heute erfasste Datenverkehr später entschlüsselt werden könnte. Die symmetrische Verschlüsselung, die die Sitzungsdaten selbst schützt, wie beispielsweise AES-256, bleibt weiterhin sicher. Organisationen mit einer langlebigen SSH-Infrastruktur sollten die Post-Quanten-Bereitschaft in ihre Planung einbeziehen.

Wie Verschlüsselungsberatung hilft

SSH ist nur so sicher wie die dahinterliegenden Schlüssel, und die SSH-Schlüsselverwaltung ist der Bereich, in dem die meisten Unternehmen Sicherheitslücken aufweisen. SSH Secure von Encryption Consulting bietet automatisiertes SSH-Schlüssel-Lebenszyklusmanagement: Es erkennt jeden SSH-Schlüssel in Ihrer Umgebung, identifiziert verwaiste und nicht konforme Schlüssel und setzt Rotation und Richtlinien durch, um zu verhindern, dass sich privilegierte Zugriffe unkontrolliert anhäufen. Darüber hinaus unterstützen unsere Beratungsleistungen im Bereich Verschlüsselung Sie bei der Bewertung und Optimierung Ihrer Verschlüsselungs- und Schlüsselverwaltungsstrategie. Diese orientiert sich an den Richtlinien von NIST und FIPS und ist optimal auf die Zeit nach der Quantencomputertechnologie vorbereitet. Unsere Lösungen basieren auf ISO/IEC 27001:2022- und SOC 2-zertifizierten Verfahren.

Maßgeschneiderte Verschlüsselungsdienste

Wir bewerten, entwickeln Strategien und implementieren Verschlüsselungsstrategien und -lösungen.

Häufig gestellte Fragen

Was ist SSH in einfachen Worten?

SSH (Secure Shell) ermöglicht die sichere Verbindung und Steuerung eines anderen Computers über ein Netzwerk, selbst über ein unsicheres Netzwerk wie das Internet. Es erstellt einen verschlüsselten Tunnel zwischen Ihrem Computer (dem Client) und dem entfernten Rechner (dem Server), sodass alle gesendeten Daten, wie Befehle, Passwörter oder Dateien, von niemandem gelesen oder verändert werden können, der die Verbindung abfängt. Administratoren verwenden SSH standardmäßig zur Verwaltung von Remote-Servern.

Wie funktioniert SSH?

SSH funktioniert in drei Phasen. Zuerst verbindet sich der Client mit dem Server und beide tauschen Schlüssel aus, um sich auf ein gemeinsames Geheimnis zu einigen, ohne dieses über das Netzwerk zu übertragen. Der Client verifiziert dabei die Identität des Servers. Anschließend authentifiziert der Server den Benutzer, üblicherweise mit einem Passwort oder einem SSH-Schlüsselpaar. Die gesamte weitere Kommunikation wird schließlich mit einem symmetrischen Algorithmus wie AES verschlüsselt und durch einen Hashwert wie SHA-2 vor Manipulation geschützt. SSH verwendet standardmäßig TCP-Port 22.

Worin besteht der Unterschied zwischen Passwort- und SSH-Schlüsselauthentifizierung?

Die Passwortauthentifizierung erfordert die Eingabe eines Passworts durch den Benutzer. Dieses wird zwar verschlüsselt übertragen, kann aber erraten, wiederverwendet oder per Brute-Force-Angriff geknackt werden. Die SSH-Schlüsselauthentifizierung hingegen verwendet ein Schlüsselpaar: einen auf dem Server gespeicherten öffentlichen Schlüssel und einen privaten Schlüssel im Besitz des Benutzers. Der Benutzer weist den Besitz des privaten Schlüssels nach, ohne ihn zu senden. Die Schlüsselauthentifizierung ist sicherer und unterstützt die Automatisierung, weshalb sie für administrative Zugriffe und die Kommunikation zwischen Maschinen bevorzugt wird.

Was ist ein SSH-Schlüssel?

Ein SSH-Schlüssel ist Teil eines kryptografischen Schlüsselpaares, das zur Public-Key-Authentifizierung in SSH verwendet wird. Das Paar besteht aus einem öffentlichen Schlüssel, der auf den Servern gespeichert wird, auf die ein Benutzer zugreifen muss, und einem privaten Schlüssel, den der Benutzer geheim hält. Beim Verbindungsaufbau weist der Benutzer den Besitz des privaten Schlüssels nach, um Zugriff zu erhalten, ohne diesen jedoch zu übermitteln. SSH-Schlüssel ermöglichen passwortloses, automatisiertes Anmelden. Da sie jedoch häufig privilegierte Zugriffsrechte gewähren und nicht ablaufen, müssen sie sorgfältig verwaltet werden.

Welchen Port verwendet SSH?

SSH verwendet standardmäßig TCP-Port 22. Auf diesem Port wartet ein SSH-Server auf eingehende Verbindungen. Administratoren ändern den Standardport mitunter, um automatisierte Scans und Brute-Force-Angriffe zu reduzieren. Dies ist jedoch eher eine geringfügige Verschleierungsmaßnahme als eine wirksame Sicherheitskontrolle. Starke Authentifizierung, insbesondere schlüsselbasierte Authentifizierung, und ein ordnungsgemäßes Schlüsselmanagement gewährleisten die eigentliche Sicherheit.

Ist SSH sicher gegen Quantencomputer?

Die symmetrische Verschlüsselung, die SSH zum Schutz von Sitzungsdaten verwendet, wie beispielsweise AES-256, gilt als quantensicher. Der asymmetrische Schlüsselaustausch und die Authentifizierung, die zum Aufbau einer SSH-Sitzung erforderlich sind, basieren jedoch auf Algorithmen, die ein zukünftiger Quantencomputer möglicherweise knacken könnte. Um dem entgegenzuwirken, führen neuere Versionen von OpenSSH Post-Quanten-Schlüsselaustauschverfahren ein, die klassische und quantenresistente Algorithmen kombinieren und Sitzungen vor Harvest-Now-Decrypt-Later-Angriffen schützen, bei denen der abgefangene Datenverkehr erst später entschlüsselt wird.

Behalten Sie die Kontrolle über Ihre SSH-Schlüssel

SSH sichert die Verbindung, doch unkontrollierte SSH-Schlüssel entwickeln sich unbemerkt zu einer der größten Gefahrenquellen für privilegierte Zugriffe in Unternehmen. Entdecken Sie SSH Secure von Encryption Consulting für die automatisierte Verwaltung des SSH-Schlüssellebenszyklus oder sprechen Sie mit unserem Encryption Advisory Team über die Optimierung Ihrer Schlüsselmanagementstrategie.