In der heutigen Welt befindet sich fast alles, was wir verwalten – von Anwendungen über Server und Cloud-Infrastruktur bis hin zu Produktionsumgebungen – außerhalb unserer physischen Reichweite. Entwickler, Systemadministratoren und Sicherheitsteams arbeiten regelmäßig mit Maschinen, die sich in einer anderen Stadt, einem anderen Land oder sogar in einem anderen Rechenzentrum befinden können. Um einen reibungslosen Geschäftsbetrieb zu gewährleisten, benötigen wir eine zuverlässige Möglichkeit, uns in diese entfernten Systeme einzuloggen, Befehle auszuführen, Dateien zu übertragen und Probleme zu beheben, ohne physisch anwesend sein zu müssen. Dieser Fernzugriff muss schnell und komfortabel, vor allem aber sicher sein.
In den Anfängen der Netzwerktechnik wurden häufig Tools wie Telnet und rlogin verwendet, um auf entfernte Rechner zuzugreifen. Sie funktionierten zwar, aber sie vertrauten dem Netzwerk viel zu sehr. Sämtliche Daten, einschließlich Benutzernamen und Passwörter, wurden unverschlüsselt übertragen. Jeder, der das Netzwerk abhörte, konnte die Daten lesen und sich ohne großen Aufwand als Benutzer ausgeben. Mit der Ausbreitung des Internets in den 1990er-Jahren und der damit einhergehenden zunehmenden Offenheit der Systeme entwickelten sich diese Schwächen zu echten Sicherheitsrisiken. Administratoren benötigten eine Möglichkeit, mit entfernten Systemen zu kommunizieren, ohne befürchten zu müssen, dass Angreifer den Datenverkehr unbemerkt überwachen.
Dieses Problem führte 1995 zur Entwicklung von Secure Shell (SSH). SSH wurde entwickelt, um einen sicheren Kanal über ein unsicheres Netzwerk bereitzustellen. Anstatt Daten unverschlüsselt zu übertragen, verschlüsselt es die gesamte Sitzung und verifiziert die Identität der beteiligten Systeme. Diese einfache Idee revolutionierte den Fernzugriff. Mit SSH konnten Administratoren sich sicher auf Servern anmelden, Dateien übertragen und Aufgaben automatisieren, ohne sensible Informationen preiszugeben. Im Laufe der Zeit wurde SSH zum Standardwerkzeug für den Fernzugriff auf Systeme und bildete ein unauffälliges, aber unverzichtbares Rückgrat moderner Infrastrukturen.
SSH-Authentifizierung
Die SSH-Authentifizierung legt fest, wie ein Benutzer seine Identität beim Verbinden mit einem entfernten System nachweist. SSH unterstützt zwei primäre Authentifizierungsmechanismen: die passwortbasierte und die passwortlose Authentifizierung . In der Anfangsphase der SSH-Einführung Ende der 1990er und Anfang der 2000er Jahre war die passwortbasierte Authentifizierung die Standardwahl.
Damals war die Infrastruktur begrenzt, Systeme waren nicht permanent mit dem öffentlichen Internet verbunden und die Bedrohungslandschaft war noch relativ unentwickelt. Daher galt die Verwendung statischer Passwörter für den Fernzugriff sowohl aus betrieblicher als auch aus sicherheitstechnischer Sicht als akzeptabel. Dieses Modell geriet jedoch ins Wanken, als Server permanent mit dem Internet verbunden wurden und Angreifer begannen, SSH in großem Umfang auszunutzen.
Eines der gravierendsten Beispiele ist der Mirai-Botnetzangriff im Jahr 2016, bei dem Millionen von Geräten und Servern mithilfe automatisierter Brute-Force-Angriffe kompromittiert wurden. Was genau geschah?
- Mirai durchsuchte aktiv das Internet nach offenen SSH- und Telnet-Diensten und versuchte, sich mit einer fest codierten Liste gängiger Benutzernamen und Passwörter anzumelden.
- Nachdem der Zugriff erlangt war, wurden die Systeme in ein Botnetz eingebunden, das massive, verteilte Denial-of-Service-Angriffe (DDoS) startete.
- Der Angriff legte wichtige Dienste lahm wie zum Beispiel Dyn-DNSund legte Plattformen wie Twitter, Netflix, GitHub und Reddit vorübergehend lahm.
- Der geschätzte wirtschaftliche Schaden belief sich auf Hunderte von Millionen Dollarund enthüllt, wie passwortbasierte Fernzugriffe im Internetmaßstab als Waffe eingesetzt werden könnten.
Vorfälle wie diese machten deutlich, dass die passwortbasierte SSH-Authentifizierung in modernen Umgebungen nicht mehr praktikabel ist. Passwörter sind von Natur aus anfällig für Brute-Force-Angriffe, die Wiederverwendung von Zugangsdaten und automatisierte Scans, insbesondere wenn SSH in öffentlichen Netzwerken zugänglich ist. Dies führte zu einem branchenweiten Wandel hin zur passwortlosen SSH-Authentifizierung , bei der Passwörter vollständig aus dem Zugriffsprozess entfernt und durch kryptografische Identitäten ersetzt werden. Dadurch hat sich die SSH-Authentifizierung von passwortabhängigem Zugriff hin zu kryptografischer Sicherheit entwickelt und den Fernzugriff auf Systeme an moderne Sicherheits- und Compliance-Anforderungen angepasst.
Wie funktioniert die passwortlose SSH-Authentifizierung?
Passwortlose Authentifizierung bedeutet, sich ohne Passworteingabe an einem entfernten System anmelden zu können und dennoch die Berechtigung als Benutzer nachzuweisen. Wenn Sie einen SSH-Befehl ausführen, um eine Verbindung zu einem Server herzustellen und direkt angemeldet werden, findet im Hintergrund nicht etwa eine Authentifizierung ohne Passwort statt, sondern eine stärkere und sicherere Methode auf Basis kryptografischer Schlüssel.
Im Folgenden wird beschrieben, wie die passwortlose SSH-Authentifizierung implementiert wird und wie eine sichere SSH-Sitzung hergestellt wird.
Generieren des SSH-Schlüsselpaares
Auf dem Client-Rechner wird mithilfe des Befehls ssh-keygen ein SSH-Schlüsselpaar generiert. Dabei werden ein privater Schlüssel und ein zugehöriger öffentlicher Schlüssel erstellt.
ssh-keygen -t rsa -b 4096 -C
-t rsa: Gibt RSA als Schlüsseltyp an.
-b 4096: Definiert die Schlüssellänge in Bit.
-C: Fügt dem Schlüssel einen identifizierenden Kommentar hinzu.
Standardmäßig wird der private Schlüssel in ~/.ssh/id_rsa und der öffentliche Schlüssel in ~/.ssh/id_rsa.pub gespeichert.
Hinweis: Gemäß den NIST-Empfehlungen sollte SSH moderne und sichere Schlüsselalgorithmen verwenden. Ed25519 ist aufgrund seiner hohen Sicherheit und Effizienz die bevorzugte Option für neue Installationen. Falls RSA erforderlich ist, verwenden Sie 3072-Bit-Schlüssel oder länger. ECDSA ist mit zugelassenen Kurven wie P-256 oder höher akzeptabel.
Algorithmen wie DSA, RSA-1024Ältere oder schwache Hash-basierte Varianten sind veraltet und sollten nicht mehr verwendet werden, da sie den aktuellen Sicherheitsstandards nicht mehr entsprechen.
Kopieren des öffentlichen Schlüssels auf den SSH-Server
Der öffentliche Schlüssel muss der Datei „authorized_keys“ des Remote-Benutzers auf dem SSH-Server hinzugefügt werden, damit der Server den Client erkennt und ihm vertraut. Dies geschieht üblicherweise mit dem Dienstprogramm „ssh-copy-id“ , das die Installation des öffentlichen Schlüssels auf dem Remote-System automatisiert.
ssh-copy-id @
Im Hintergrund stellt ssh-copy-id eine Verbindung zum Server her, erstellt das Verzeichnis ~/.ssh und die Datei authorized_keys, falls diese noch nicht existieren, und fügt den öffentlichen Schlüssel hinzu. Dadurch wird sichergestellt, dass die korrekten Berechtigungen für SSH gesetzt sind.
Initiieren der SSH-Verbindung
Der SSH-Client initiiert eine TCP-Verbindung zum entfernten SSH-Server, der standardmäßig auf Port 22 lauscht . Diese Verbindungsanfrage ist der Startpunkt des SSH-Handshakes und signalisiert die Absicht des Clients, eine sichere Sitzung herzustellen.
ssh @
Wenn der Server aus Sicherheits- oder Compliance-Gründen so konfiguriert ist, dass er auf einem benutzerdefinierten Port lauscht, muss der Client diesen Port bei der Verbindungsherstellung explizit angeben.
ssh -p 22 @

Serveridentitätsprüfung
Sobald die Verbindung hergestellt ist, übermittelt der SSH-Server dem Client seinen öffentlichen Host-Schlüssel. Der Client überprüft diesen Schlüssel anhand der Einträge in der Datei ~/.ssh/known_hosts, um sicherzustellen, dass er mit dem richtigen Server kommuniziert. Bei der ersten Verbindung fordert der Client den Benutzer auf, dem Host-Schlüssel des Servers zu vertrauen und ihn zu speichern. Dieses Verfahren folgt dem Prinzip „Trust on First Use“ (TOFU) und schützt vor Man-in-the-Middle -Angriffen bei zukünftigen Verbindungen, indem es unerwartete Änderungen der Serveridentität erkennt.
Während TOFU für Einzelnutzer praktisch ist, bevorzugen Unternehmensumgebungen häufig die explizite Schlüsselfixierung, bei der Hostschlüssel vorab verteilt und zentral verwaltet werden. Dadurch wird das Risiko, einem manipulierten Schlüssel bei der ersten Verbindung zu vertrauen, beseitigt und ein stärkerer Schutz gewährleistet.
Client-Authentifizierung
Nachdem die Identität des Servers verifiziert wurde, fährt der SSH-Client mit der Benutzerauthentifizierung fort. Der Client gibt an, welchen öffentlichen Schlüssel er verwenden möchte, und der Server prüft, ob dieser Schlüssel in der Datei authorized_keys des Benutzers vorhanden ist.
Wird der Schlüssel autorisiert, generiert der Server eine zufällige Herausforderung und verschlüsselt diese mit dem öffentlichen Schlüssel des Clients, bevor er sie an den Client sendet. Der Client entschlüsselt die Herausforderung mit seinem privaten Schlüssel, berechnet einen kryptografischen Hash der entschlüsselten Herausforderung und sendet diesen Hash an den Server zurück.
Der Server berechnet daraufhin seinen eigenen erwarteten Hashwert aus der ursprünglich generierten Herausforderung und vergleicht ihn mit dem vom Client empfangenen Hashwert. Stimmen beide Werte überein, bestätigt der Server, dass der Client über den entsprechenden privaten Schlüssel verfügt und authentifiziert den Benutzer erfolgreich.
Herstellen der verschlüsselten Sitzung
Nach erfolgreicher Authentifizierung stellt SSH einen vollständig verschlüsselten Kommunikationskanal her . Ab diesem Zeitpunkt sind alle zwischen Client und Server ausgetauschten Daten, einschließlich Befehle, Ausgaben und Dateiübertragungen, vertraulich und integer geschützt. Dieser sichere Kanal bleibt für die gesamte Dauer der Sitzung aktiv und gewährleistet so, dass sensible Vorgänge während der Übertragung nicht abgefangen oder verändert werden können.
Wie fügt sich die passwortlose Authentifizierung in moderne Sicherheitspraktiken ein?
Nachdem wir nun gesehen haben, wie die passwortlose SSH-Authentifizierung funktioniert, erklären die folgenden Punkte, warum dieser Ansatz gut mit modernen Sicherheitspraktiken übereinstimmt und warum er sich zur bevorzugten Methode für die Sicherung des Fernzugriffs entwickelt hat.
- Angriffsprävention
Die passwortlose Authentifizierung entfernt Passwörter vom SSH-Zugriff und eliminiert so effektiv Brute-Force-, Password-Spraying- und Credential-Stuffing-Angriffe. Da die Authentifizierung auf kryptografischen Beweisen anstatt auf erratbaren Geheimnissen basiert, werden automatisierte Angriffe auf SSH-Login-Endpunkte wirkungslos. - Stärkere Identität
Der Zugriff wird nur gewährt, wenn der Client den Besitz eines gültigen privaten Schlüssels nachweist. Dadurch verschiebt sich die Authentifizierung von wissensbasierten Anmeldeinformationen hin zu besitzbasierter Identität, was eine stärkere und zuverlässigere Methode zur Überprüfung von Benutzern und Systemen bietet. - Sichere Automatisierung
Moderne Umgebungen basieren stark auf Skripten, Konfigurationsverwaltungstools und CI/CD-Pipelines. Passwortlose Authentifizierung ermöglicht einen sicheren, nicht-interaktiven Zugriff, ohne Passwörter in Code, Umgebungsvariablen oder Konfigurationsdateien einzubetten. - Skalierbare Zugangskontrolle
Die passwortlose SSH-Authentifizierung ermöglicht skalierbaren Zugriff in großen und verteilten Umgebungen durch die Verwendung kryptografischer Schlüssel anstelle gemeinsam genutzter Passwörter. SSH-Schlüssel laufen standardmäßig nicht ab und werden nicht rotiert, können aber mithilfe von … verwaltet werden. SSH-Schlüsselverwaltung Plattformen ermöglichen es, Einblick in Schlüsselbesitz, Nutzung und Umfang zu gewinnen. Dies erlaubt es Organisationen, den SSH-Zugriff zu skalieren und gleichzeitig Governance, Richtliniendurchsetzung und Auditierbarkeit zu gewährleisten. - Kontrollierter Widerruf
Im Falle einer Kompromittierung oder Zugriffsänderung ermöglicht passwortloses SSH den gezielten Entzug von Zugangsdaten, indem spezifische autorisierte Schlüssel identifiziert und entfernt werden, anstatt gemeinsam genutzte Zugangsdaten zurückzusetzen. Unterstützt durch zentrale Tools zur Schlüsselermittlung und -verwaltung wird der Entzug schneller und zuverlässiger, wodurch das Risiko verwaister Zugriffe reduziert wird.
Wann die passwortlose Authentifizierung schiefgehen kann
Die passwortlose Authentifizierung verbessert die Sicherheit, ist aber nicht risikofrei. Ihre Stärke hängt vollständig davon ab, wie gut kryptografische Schlüssel geschützt, verwaltet und überwacht werden. Schwache Kontrollen oder mangelnde Transparenz können sie zu einem leichten Einfallstor für Angriffe machen.
Häufige Fehlerquellen sind:
- Private Schlüssel werden unverschlüsselt auf der Festplatte gespeichert, was sie im Falle einer Systemkompromittierung leicht stehlen lässt.
- Ein einziger SSH-Schlüssel wird von mehreren Benutzern gemeinsam genutzt, was die Verantwortlichkeit und Nachverfolgbarkeit beeinträchtigt.
- SSH-Schlüssel werden niemals rotiert oder von Systemen entfernt, auch nicht, nachdem Benutzer das Unternehmen verlassen haben.
- Die Teams haben keinen klaren Überblick darüber, wo die SSH-Schlüssel bereitgestellt werden, wodurch versteckter Zugriff weiterhin möglich ist.
- Die SSH-Schlüssel werden im gesamten System manuell verwaltet, was das Risiko von Sicherheitsfehlern und Versäumnissen erhöht.
Wie kann Verschlüsselungsberatung helfen?
Wir von Encryption Consulting wissen, dass die eigentliche Herausforderung nicht die Authentifizierung an sich ist, sondern die sichere Verwaltung von SSH-Schlüsseln in großem Umfang. SSH Secure wurde genau für dieses Problem entwickelt und bietet ein umfassendes Lebenszyklusmanagement für SSH-Schlüssel mit voller Transparenz und Kontrolle, ohne die Betriebsabläufe zu verkomplizieren.
SSH Secure zentralisiert die Ermittlung, Generierung und Verwaltung von SSH-Schlüsseln für Server und Benutzersysteme. Schlüssel können direkt über das SSH Secure-Portal mithilfe starker kryptografischer Algorithmen wie RSA-4096, ECDSA und Ed25519 generiert und während ihres gesamten Lebenszyklus sicher verwaltet werden. Durch die Pflege eines einheitlichen Schlüsselinventars mit Besitz- und Nutzungskontext erhalten Unternehmen Transparenz darüber, wer worauf Zugriff hat, und reduzieren gleichzeitig die unkontrollierte Verbreitung von Schlüsseln und die Anzahl verwaister Zugangsdaten erheblich.
Um den Zugriff zu vereinfachen, ohne die Sicherheit zu beeinträchtigen, bietet SSH Secure eine unkomplizierte Ein-Klick-Verbindung . Benutzer können sich direkt vom Portal aus sicher mit autorisierten Systemen verbinden, indem sie auf die Schaltfläche „ Verbinden“ klicken – ohne manuelle SSH-Befehle auszuführen, private Schlüssel zu verwalten oder lokale Umgebungen zu konfigurieren. Dieser Ansatz reduziert menschliche Fehler, beschleunigt Arbeitsabläufe und gewährleistet, dass der Zugriff stets den definierten Sicherheitsrichtlinien entspricht.
Im Hintergrund sorgt SSH Secure durch richtlinienbasierte Kontrollen, automatisierte Rotation , Ablauf und Widerruf von Schlüsseln für eine lückenlose Verwaltung des gesamten Lebenszyklus. Private Schlüssel werden in HSMs geschützt , um deren Extraktion oder Missbrauch zu verhindern. In Kombination mit detaillierter Prüfung und Überwachung gewährleistet dies, dass der SSH-Zugriff während seines gesamten Lebenszyklus sicher, kontrolliert und konform bleibt. Dadurch wird passwortloses SSH sowohl praktikabel als auch unternehmenstauglich.
Fazit
SSH ist ein grundlegendes Protokoll für den sicheren Fernzugriff auf Systeme und die administrative Steuerung. Es ermöglicht die verschlüsselte Kommunikation zwischen Clients und Servern über unsichere Netzwerke und schützt Anmeldeinformationen, Befehle und Daten während der Übertragung. Die herkömmliche passwortbasierte SSH-Authentifizierung setzte Systeme Brute-Force-Angriffen, der Wiederverwendung von Anmeldeinformationen und Phishing aus, was die Sicherung des Zugriffs in großem Umfang erschwerte.
Die passwortlose SSH-Authentifizierung behebt diese Schwachstellen durch den Einsatz asymmetrischer Kryptografie anstelle gemeinsamer Geheimnisse. Die Authentifizierung erfolgt mittels kryptografischer Schlüsselpaare, wobei die privaten Schlüssel den Client niemals verlassen und niemals über das Netzwerk übertragen werden. Dies reduziert die Angriffsfläche erheblich und bringt den SSH-Zugriff in Einklang mit modernen Zero-Trust- und Least-Privilege-Sicherheitsprinzipien.
In Kombination mit einem strukturierten SSH-Schlüssellebenszyklusmanagement wird die passwortlose Authentifizierung betriebssicher und zuverlässig. Kontrollierte Schlüsselgenerierung, -rotation, -ablauf und -widerruf verhindern die unkontrollierte Verbreitung von Schlüsseln und eliminieren veraltete Zugriffsrechte. Dadurch erreichen Unternehmen höhere Sicherheit, bessere Auditierbarkeit und skalierbare Zugriffskontrolle in dynamischen Infrastrukturumgebungen.
