- Diese Veranstaltung hat bereits stattgefunden.
Virtuelles FRAOSUG-Treffen: Login mit signierten SSH-Schlüsseln
17. November 2020 @ 19:00 - 20:30
Online-Vortrag von Christopher J. Ruwe
Zugrunde liegt das Problem, daß es aufwendig ist, ssh-Zugriff auf viele Hosts aus einem zentral oder sogar aus einem Single-Sign-On System auszusteuern. Oft möchte man etwas einfacheres als LDAP/Kerberos-Konstrukte.
Eine Lösung ist es, ssh public keys zu signieren und die Hosts so zu konfigurieren, daß von einer trusted CA signierte publics aus dem bekannten public/private Verfahren einen Login auch dann auf einen Host zulassen, wenn dort der public key nicht ausgebracht ist.
Über den Umweg des Signatur-Verfahrens kann man ein SSO-System so erweitern, daß Veränderungen an Nutzern (Existenz und Berechtigungen) hinreichend schnell auf alle “teilnehmenden” Hosts propagiert werden.
Hashicorp Vault kann als CA ssh-keys signieren. Keycloak übernimmt die Rolle des OIDC IdP. Vault akzeptiert OIDC Tokens von Keycloak als Identität mit Berechtigungen. Abhängig von den Berechtigungen dort signiert Vault public keys mit zulässigen principals und ssh extensions oder auch nicht.
Über die OIDC Identität im Zertfikat kann ein Audit-Trail für alle Funktionsnutzer erzeugt werden. Die Gültigkeit der signierten keys ist kurz – bei mir 15s. Neue von Vault gibt es nur gegen Vault-Token, der gilt auch nur kurz und neue Vault-Token gibts nur gegen OIDC-Token vom SSO. Dann gibt es 15s nach Berechtigungs-Entzug im SSO auch keine neuen ssh-Sessions mehr.
Wenn ich die SSH-Session-Dauer noch zwangsweise klein halte, wird Berechtigungs-Entzug sehr schnell auf allen Maschinen wirksam – erheblich schneller und einfacher als durch wie auch immer angesteuertes Entfernen von public keys. Dann isser wech …
Mehr Info und ein Jitsi-Link hier: https://fraosug.de/