Habe ich verstanden, wie OpenSSH und X509 funktionieren?

Habe ich verstanden, wie OpenSSH und X509 funktionieren?

Wir möchten eine Verbindung mit OpenSSH unter Verwendung von X509-Zertifikaten testen mitpkixssh-Fork von Roumen Petrov.

Ich verstehe nicht wirklich, wie die vollständige Authentifizierung funktioniert und insbesondere, wie man die Zertifikate mit X509-Standards zur Validierung öffentlicher Schlüsselzertifikate erstellt.

Ich werde also zunächst erklären, wie ich es verstehe und den gesamten Prozess, den ich befolgen werde, um eine Verbindung zwischen einem"Klient"und ein"Server"Maschine mit PKIXSSH Fork von OpenSSH, unter Verwendung von X509-Zertifikaten. Für den Test verwenden wir eine dritte Maschine, die wir"Steuermaschine", Maschine, die als „Zertifizierungsstelle“ fungiert

Um zu verstehen, wie es funktioniert, habe ich die folgenden Dokumente gelesen:

Kurz zusammengefasst und wenn ich es richtig verstanden habe, funktioniert es so:

  • X509 ist ein Standard zum Signieren öffentlicher Schlüssel. Signierte öffentliche Schlüssel gelten als gültig, wenn die Zertifizierungsstelle bekannt ist.
  • Wir können öffentliche Schlüssel für Hosts und Benutzer signieren
  • Mit X509-Zertifikaten können wir uns bei einem OpenSSH-Server anmelden, ohne Passwörter zu verwenden und ohne die traditionelle OpenSSH-Private-Public-Key-Authentifizierung zu verwenden. Das bedeutet, dassEs müssen keine öffentlichen Benutzerschlüssel auf Zielserver kopiert werden.
  • Wenn wir X509-Zertifikate für Hosts verwenden, vertraut der Client dem OpenSSH-Server, ohne dass sein öffentlicher Schlüssel manuell zur Datei „known_host“ hinzugefügt werden muss.

Wir wollen zwei Tests durchführen:

  • Testen Sie die Verbindung für einen Benutzer vom Clientcomputer zum Server mithilfe eines X509-Zertifikats
  • Im zweiten Schritt fügen Sie die Authentifizierung für den Server-Host hinzu

Ich bin zu dem Schluss gekommen, dass die nächsten Schritte befolgt werden müssen

  • In der „Kontrollmaschine“:

    • Konfigurieren und erstellen Sie die Schlüssel für unsere Testzertifizierungsstelle
    • Senden Sie den öffentlichen Zertifizierungsstellenschlüssel an den OpenSSH-Daemon der "Server"-Maschine, damit unsere CA erkannt wird
  • Auf der „Client“-Maschine:

    • Erstellen Sie den privaten und öffentlichen Schlüssel für den Benutzer
    • Senden Sie den öffentlichen Schlüssel an die Steuermaschine, damit er vom CA signiert werden kann.
    • Fügen Sie das Zertifikat zur privaten Schlüsseldatei hinzu, damit es dem Server angezeigt wird

An diesem Punkt sollte alles an seinem Platz sein, so dass wir die Verbindung testen können

Habe ich es richtig verstanden?

Antwort1

Endlich habe ich den Zusammenhang verstanden und getestet :-).

Ich habe einen Beitrag in einem Blog geschrieben, das ich gerade bereitgestellt habe (auf die schnelle und einfache Art und Weise; das Blog ist einfach und nicht sehr schön, aber nützlich).

Eine vollständige Beschreibung des Tests finden Sie im Artikel„OpenSSH mit X509-Zertifikaten – Anleitung“

Vielen Dank an Roumen Petrov für seine Antworten auf meine E-Mail in der Mailingliste des Produkts.

verwandte Informationen