Secure Shell (SSH) ist ein weit verbreitetes Netzwerkprotokoll, mit dem Benutzer sicher über ungeschützte Netzwerke auf Remote-Server zugreifen können. SSH stellt eine kryptografisch gesicherte Verbindung zwischen einem Server und einem Client her, um sicherzustellen, dass die nachfolgende Kommunikation verschlüsselt ist und nicht manipuliert wurde. Das Protokoll wird häufig in verschiedenen Betriebssystemen wie Linux, Unix und macOS eingesetzt.
SSH wurde ursprünglich 1995 entwickelt, um Protokolle wie Rlogin und Telnet zu ersetzen, die mehrere Sicherheitsmängel aufwiesen. SSH1 bot Benutzern einen verschlüsselten Anmeldeweg zu entfernten Systemen. Zu den Funktionen gehörten die symmetrische Verschlüsselung und die Portweiterleitung.
Dennoch wies es zahlreiche Sicherheitsmängel auf, die es anfällig für Cyberangriffe machten. Dies führte zur Entwicklung von SSH2. Das 2006 veröffentlichte und bis heute eingesetzte SSH2-Protokoll umfasst zusätzliche Sicherheitsmaßnahmen wie den Diffie-Hellman-Schlüsselaustausch und Nachrichtenauthentifizierungscodes (MACs).
Mit SSH können Benutzer Dateien sicher übertragen, Netzwerkinfrastrukturen verwalten, aus der Ferne auf Apps und Geräte zugreifen und Befehle ausführen. Dank der Möglichkeit, Sitzungen zu authentifizieren und zu verschlüsseln, bietet SSH robusten Schutz vor Cyberangriffen und Datendiebstahl.
- Wie funktioniert das Secure-Shell-Protokoll?
- SSH-Tunneling
- Wofür wird SSH hauptsächlich eingesetzt?
- Wie sicher ist SSH?
- Welcher Port wird für Secure-Shell-Verbindungen verwendet?
- SSH im Vergleich zu anderen Protokollen
- Gängige SSH-Befehle
- Fazit: SSH-Verschlüsselung schützt die Kommunikation in Unternehmensnetzwerken
Wie funktioniert das Secure-Shell-Protokoll?
Das SSH-Protokoll basiert innerhalb eines Netzwerks auf der Client-Server-Architektur. Die Kommunikation erfolgt über Shells wie Linux-Terminal-Shells. Clients verwenden zum Verbinden mit Remote-Servern eine Form des folgenden Befehls:
ssh UserName@SSHserver.example.comZur Authentifizierung und Genehmigung des Vorgangs verwendet SSH den Diffie-Hellman-Schlüsselaustausch mit öffentlichen und privaten Schlüsseln, um sicher auf Daten zuzugreifen. Wenn ein Client erstmals versucht, eine Verbindung zu einem Server herzustellen, fordert der Server den Client auf, seine Identität nachzuweisen. Der Client muss seinerseits gültige Anmeldedaten bereitstellen, um seine Identität zu bestätigen. Sind die Anmeldedaten des Clients falsch, wird die Authentifizierung abgelehnt.

Der Server verschlüsselt eine Challenge-Nachricht mit dem öffentlichen Schlüssel und wartet auf die Antwort des Clients. Kann der Client die Challenge-Nachricht mit dem passenden privaten Schlüssel entschlüsseln, wird er als authentisch verifiziert und die Kommunikation zwischen beiden wird zugelassen.
Wichtig ist, dass der private Schlüssel ausschließlich für den Benutzer zugänglich ist und stets sicher aufbewahrt werden sollte. Wird der private Schlüssel offengelegt, können sich Unbefugte Zugriff auf geschäftskritische Systeme verschaffen. Der öffentliche Schlüssel wird dagegen sowohl vom Client als auch vom Remote-Server verwendet und ist damit ein wesentlicher Bestandteil der Kommunikation zwischen beiden.
SSH-Tunneling
Angenommen, ein Server möchte auf Daten an einem nicht zugänglichen lokalen Port zugreifen. Wie umgehen Sie Firewalls und stellen sicher, dass die Daten bei der Übertragung über das öffentliche Internet nicht gestohlen werden?
Netzwerktunneling ist der Vorgang, bidirektionale Verbindungen zwischen einem lokalen Port (also dem Zielport auf Ihrem eigenen Computer) und einem Remote-Port über einen sicheren Tunnel zu ermöglichen. SSH-Tunnel verwenden Hashing-Algorithmen und symmetrische Verschlüsselung, um Daten zu verschlüsseln und so die Sicherheit während der Datenübertragung zu gewährleisten.
Einfach ausgedrückt ermöglicht SSH-Tunneling, über eine bereits eingerichtete SSH-Verbindung zwischen Client und Server eine neue Verbindung von Ihrem lokalen Computer zum Remote-Server aufzubauen. Unternehmen bevorzugen SSH-Tunneling wegen seiner einfachen Handhabung und der Möglichkeit, Firewalls zu umgehen.
Wofür wird SSH hauptsächlich eingesetzt?
SSH-Verbindungen werden hauptsächlich verwendet, um:
- Ressourcen sicher über unsichere Übertragungswege zu übertragen.
- den sicheren Zugriff auf Geschäftsdaten und -prozesse zu gewährleisten.
- Befehle aus der Ferne auszuführen.
- Ports weiterzuleiten.
- X11-Weiterleitung auszuführen.
- Betriebssysteme und Router zu verwalten.
- Dateien zwischen Computern zu übertragen.
Wie sicher ist SSH?
SSH gilt allgemein als eine der sichersten heute verfügbaren Verschlüsselungsmethoden und wird derzeit auf fast der Hälfte aller Server weltweit sowie auf nahezu jedem Linux-Computer eingesetzt.
SSH-Schlüssel verschlüsseln den Datenverkehr zwischen Client und Server und verhindern so, dass Angreifer ihn abhören und entschlüsseln. Die zunehmende Verbreitung von SSH-Schlüsseln in Unternehmen setzt diese jedoch Cyberkriminellen aus, die sich unzureichend verwaltete und häufig vergessene SSH-Schlüssel zunutze machen können, um privilegierten Zugriff auf Netzwerke zu erlangen. Dies kann zu erheblichen Schäden für das Unternehmen und seine Stakeholder führen.
SSH kann auch für Angriffe anfällig sein, etwa Brute-Force-Versuche zum Erraten von Passwörtern oder Benutzernamen. Eine erhebliche Bedrohung für SSH besteht darin, dass Hacker SSH-Schlüssel ausnutzen, um Root-Zugriff auf den Server zu erlangen und Schadsoftware zu installieren. Obwohl dies nicht bestätigt ist, wurde vermutet, dass Edward Snowden SSH-Schlüssel erfolgreich ausgenutzt hat, um 2013 in die National Security Agency (NSA) einzudringen.
Die Implementierung einer Multi-Faktor-Authentifizierung (MFA), die Verwendung von Firewalls, die Änderung von Standardeinstellungen, das Löschen nicht erfasster bzw. verwaister Schlüssel und die regelmäßige Erneuerung von Schlüsseln gehören zu den Maßnahmen, mit denen sich SSH absichern lässt.
Welcher Port wird für Secure-Shell-Verbindungen verwendet?
Port 22 ist der Standardport für das SSH-Protokoll. Wenn ein SSH-Client eine Verbindung zu einem SSH-Server herstellen möchte, sendet er eine Kommunikationsanfrage an den Server auf Port 22. Nach dem Verbindungsaufbau tauschen Server und Client kryptografische Schlüssel aus, die zum Erstellen eines sicheren und verschlüsselten Kommunikationskanals zwischen beiden verwendet werden.
Obwohl Port 22 der Standardport ist, kann SSH auch auf anderen Ports ausgeführt werden. Um die SSH-Portnummer zu ändern, suchen Sie die Konfigurationsdatei des SSH-Servers und ändern Sie die Portnummer nach Wunsch.
SSH im Vergleich zu anderen Protokollen
SSH vs. Telnet
Telnet ist ein 1969 entwickeltes Netzwerkprotokoll, mit dem Benutzer auf Remote-Server zugreifen können. Im Laufe der Zeit hat SSH Telnet aufgrund seiner deutlich höheren Sicherheit weitgehend ersetzt.
- Einer der wichtigsten Unterschiede zwischen Telnet und SSH besteht darin, dass Telnet Daten im Klartext überträgt, während SSH die Daten verschlüsselt und dadurch ein hohes Maß an Sicherheit bietet.
- SSH verwendet standardmäßig Port 22, die Portnummer kann jedoch geändert werden. Telnet verwendet Port 23 und ist für den Einsatz in LANs konzipiert.
- SSH verwendet zur Authentifizierung eine Verschlüsselung mit öffentlichen Schlüsseln. Telnet bietet Benutzern keinerlei Authentifizierungsmöglichkeiten.
- SSH wird für öffentliche Netzwerke bevorzugt. Telnet eignet sich dagegen aufgrund von Sicherheitsbedenken eher für private Netzwerke.
SSH vs. SSL und TLS
Ähnlich wie SSH sind Transport Layer Security (TLS) und Secure Sockets Layer (SSL) zwei kryptografische Protokolle, die Daten bei der Übertragung über das Internet schützen. Wie SSH verschlüsseln beide Protokolle Daten und authentifizieren die Verbindung. SSL weist jedoch eine erhebliche Anzahl von Sicherheitslücken auf und gilt als veraltet. TLS wird aufgrund seiner verbesserten Sicherheitsfunktionen inzwischen weitgehend als Ersatz für SSL eingesetzt.
SSH und TLS verfügen zwar über einige gemeinsame Merkmale, unterscheiden sich jedoch in den folgenden Punkten:
| SSH-Protokoll | TLS-Protokoll | |
|---|---|---|
| Authentifizierungsmethode | Passwörter und private/öffentliche Schlüssel | Digitale Signaturen |
| Standardport | Port 22 | Port 443 |
| Protokolltyp | Remote-Protokoll | Sicherheitsprotokoll |
| Format | Netzwerktunnel | Digitale Zertifikate |
Gängige SSH-Befehle
Der Befehl ssh wird verwendet, um sich sicher bei entfernten Systemen anzumelden. Der grundlegendste SSH-Befehl lautet ssh user@host, wobei „user“ für den Benutzernamen bzw. Client und „host“ für die Adresse oder den Server des entfernten Computers steht.
Zu den gängigen SSH-Befehlen gehören:
cd-Befehl
Der Befehl cd (change directory) wird zur Navigation zwischen Verzeichnissen verwendet.
cd [name of the directory]Wenn die Verzeichnisstruktur verschachtelt ist, muss der vollständige Pfad des Verzeichnisses angegeben werden, um ein bestimmtes Verzeichnis zu erreichen. Zum Beispiel:
cd HomeDirectory/Level1Directory/Level2DirectoryDer obige Befehl bringt Sie anschließend zu Level2Directory.
mkdir-Befehl
Der Befehl mkdir (make directory) wird zum Erstellen eines Verzeichnisses verwendet. Die Syntax für einen mkdir-Befehl lautet:
mkdir [folder name]touch-Befehl
Der Befehl touch wird zum Erstellen einer neuen Datei verwendet. Die Syntax für den Befehl touch lautet:
touch [file name]rm-Befehl
Der Befehl rm (remove) wird zum Löschen bzw. Entfernen einer Datei verwendet. Die Syntax für den Befehl remove lautet:
rm [file name]cp-Befehl
Der Befehl cp (copy command) wird zum Kopieren einer Datei verwendet. Die Syntax für den Befehl copy lautet:
cp [source file name] [destination file name]Fazit: SSH-Verschlüsselung schützt die Kommunikation in Unternehmensnetzwerken
SSH hat ältere Netzwerkprotokolle wie rsh, Telnet und FTP, die Informationen im Klartext übertrugen, erfolgreich ersetzt. Mit SSH können Sie sicher sein, dass jede einzelne Kommunikation zwischen Ihrem Gerät und dem Server sicher und verschlüsselt ist. Daher ist der Einsatz des SSH-Protokolls ein wirksamer Ansatz zum Schutz der Netzwerksicherheit, insbesondere angesichts der anhaltenden Bedrohungen durch Cyberkriminalität.
Wir haben die besten Verschlüsselungsprogrammesorgfältig analysiert und ausgewählt, um die Sicherheit Ihrer Daten bei der Übertragung zu erhöhen und Ihre kritische Kommunikation zu schützen.