Zum Inhalt

Webinar: Melden Sie sich jetzt für unser kommendes Webinar an!

Jetzt registrieren

Wie funktioniert die SSH-zertifikatbasierte Authentifizierung?

entfernter Server

SSH steht für Secure Shell oder Secure Socket Shell. Es handelt sich um ein kryptografisches Netzwerkprotokoll, das Benutzern und Systemadministratoren den Zugriff auf Computer über ein ungesichertes Netzwerk wie das Internet ermöglicht. Es wird verwendet, um sich bei einem Remote-Server anzumelden, Befehle auszuführen und Daten von einem Computer auf einen anderen zu übertragen.

Wo verwenden wir SSH?

SSH wird verwendet, um ungeschützte Remote-Login-Protokolle wie Telnet, rlogin, rsh und andere sowie unsichere Dateiübertragungsprotokolle wie FTP zu ersetzen. Netzwerkadministratoren nutzen seine Schutzfunktionen intensiv. Das SSH-Protokoll kann in verschiedenen Szenarien eingesetzt werden, zum Beispiel:

  • Sicheren Zugriff für Benutzer und automatisierte Prozesse ermöglichen
  • Durchführen interaktiver und automatisierter Dateiübertragungen
  • Remote-Befehle ausgeben
  • Verwaltung der Netzwerkinfrastruktur und anderer unternehmenskritischer Systemkomponenten

Wie funktioniert SSH?

Das SSH-Protokoll basiert auf einer Client-Server-Architektur. Ein SSH-Client stellt eine sichere Verbindung zu einem SSH-Server her. Der SSH-Client steuert den Verbindungsaufbau und verwendet Public-Key-Infrastruktur (PKI) um die Authentizität des SSH-Servers zu überprüfen. Nach der Konfiguration verwendet das SSH-Protokoll starke symmetrische Verschlüsselungs- und Hashing-Algorithmen, um die Vertraulichkeit und Integrität der ausgetauschten Daten zu gewährleisten.

Welche verschiedenen Arten der Authentifizierung gibt es?

Schlüsselbasierte Authentifizierung

Die am häufigsten verwendete Form der SSH-Bereitstellung ist die Public-Key-Authentifizierung. Sie wird aufgrund der erhöhten Sicherheit einfachen Passwörtern vorgezogen. Die schlüsselbasierte Authentifizierung bietet eine unübertroffene kryptografische Stärke, die sogar die von sehr langen Passwörtern übertrifft. SSH erhöht die Sicherheit durch die Public-Key-Authentifizierung erheblich und macht das Merken komplexer Passwörter überflüssig.

Neben der Sicherheit verbessert die Public-Key-Authentifizierung auch die Benutzerfreundlichkeit. Dadurch kann der Benutzer Single Sign-On auf allen SSH-Servern implementieren, mit denen er sich verbindet. Schlüsselbasierte Authentifizierung ermöglicht außerdem automatisierte passwortlose Anmeldungen, ein Schlüsselmerkmal der unzähligen sicheren automatisierten Prozesse, die in Unternehmensnetzwerken weltweit laufen.

Bei dieser Art der Authentifizierung wird ein Schlüsselpaar (öffentlicher und privater Schlüssel) generiert.

  • Der öffentliche Schlüssel wird auf den SSH-Server kopiert und standardmäßig der Datei ~/.ssh/authorized_keys hinzugefügt. Jeder, der eine Kopie des öffentlichen Schlüssels besitzt, kann Daten verschlüsseln, die nur von Personen gelesen werden können, die den entsprechenden privaten Schlüssel besitzen.
  • Der private Schlüssel verbleibt (nur) beim Benutzer. Nur ein Benutzer, dessen privater Schlüssel mit dem öffentlichen Schlüssel des Servers übereinstimmt, kann sich erfolgreich authentifizieren. Private Schlüssel sollten sorgfältig aufbewahrt und behandelt werden. Kopien privater Schlüssel sollten nicht weitergegeben werden.

Nachteile der schlüsselbasierten Authentifizierung

  • Eine schlechte SSH-Schlüsselverwaltung kann für Unternehmen ein großes Risiko darstellen.
  • Der Missbrauch von SSH-Schlüsseln kann zum Zugriff auf vertrauliche oder privilegierte Informationen führen.
  • Da Schlüsseln dauerhaft vertraut wird, erhöht sich die Wahrscheinlichkeit eines Angriffs.

Enterprise-PKI-Dienste

Erhalten Sie umfassende End-to-End-Beratungsunterstützung für alle Ihre PKI-Anforderungen!

Zertifikatbasierte Authentifizierung

Diese Art der Authentifizierung erfordert keine Schlüsselgenehmigung und -verteilung. Anstatt öffentliche Schlüssel über statische Dateien zu verteilen, können wir Zertifikate verwenden, um öffentliche Schlüssel an Namen zu binden. Ein Zertifikat enthält Daten wie einen öffentlichen Schlüssel, einen Namen und zusätzliche Daten wie Ablaufdaten und Berechtigungen. Diese Daten werden von einem Zertifizierungsstelle (CA).

Um die Zertifikatsauthentifizierung zu aktivieren, konfigurieren Sie Clients und Hosts so, dass sie Zertifikate mit dem öffentlichen Schlüssel Ihrer Zertifizierungsstelle überprüfen (d. h., sie vertrauen den von Ihrer Zertifizierungsstelle ausgestellten Zertifikaten).

Bearbeiten Sie auf jedem Host /etc/ssh/sshd_config und geben Sie den öffentlichen CA-Schlüssel zum Überprüfen der Benutzerzertifikate, den privaten Schlüssel des Hosts und das Zertifikat des Hosts an.

Fügen Sie auf jedem Client eine Zeile zu ~/.ssh/known_hosts hinzu, die den öffentlichen CA-Schlüssel zur Überprüfung der Hostzertifikate angibt.

Vorteile zertifikatsbasierter Authentifizierung

  • Es ist einfach zu verwenden, da es sich um eine Vertrauensstellung bei der ersten Verwendung (TOFU) handelt; Warnungen werden nicht angezeigt, da die Zertifikatsauthentifizierung Zertifikate verwendet, um öffentliche Schlüsselbindungen zu kommunizieren, sodass sich Clients jederzeit authentifizieren können.
  • Es rationalisiert den Betrieb, indem der Schlüsselgenehmigungs- und -verteilungsprozess entfällt. Darüber hinaus reduziert es die Betriebskosten für die Überwachung und Wartung der aktuellen Infrastruktur zum Hinzufügen, Entfernen, Synchronisieren und Prüfen statischer öffentlicher Schlüsseldateien.
  • Im Vergleich zur schlüsselbasierten Authentifizierung fördert sie eine gute Sicherheitshygiene. Die Wahrscheinlichkeit, dass ein kompromittierter privater Schlüssel lange unbemerkt bleibt, ist recht hoch; Zertifikate hingegen laufen ab, was bedeutet, dass sie im Falle von Diebstahl, Missbrauch usw. automatisch verfallen und somit ausfallsicher sind.

Fazit

Die zertifikatsbasierte Authentifizierung bietet viele Vorteile, wie z. B. eine verbesserte Benutzerfreundlichkeit, erhöhte Sicherheit, optimierte Abläufe usw. Bei Implementierung hilft sie Unternehmen, die Komplexität der Schlüsselgenehmigung und -verteilung, Risiken im Zusammenhang mit unsachgemäßer Schlüsselverwaltung und vieles mehr zu reduzieren.