Kerberos-Login für Server, Poolrechner, und Web Services

Die meisten der IRB Webservices unterstützen den passwortlosen Single Sign-On per Kerberos. Das ist sowohl praktischer zu Bedienen als auch sicherer als der Login mit Username und Passwort.

Um die Sicherheit des Zugriffs zu erhöhen und die Zugangsdaten unserer Nutzer zusätzlich zu schützen ist sowohl auf Servern als auch auf Poolrechnern zusätzlich der SSH-Zugriff per Passwort ausgeschaltet.

Aus technischen Gründen können auf Poolrechnern z.Z. keine SSH Keys hinterlegt verwendet werden, weshalb wir den Zugriff per Kerberos empfehlen. Für Server kann der Zugriff sowohl über Kerberos als auch SSH Key erfolgen.

Untenstehend finden Sie eine Reihe von Anleitungen für die Einrichtung von Kerberos und Nutzung in Ihrem Betriebsystem und verschiedener Software.

Kerberos einrichten

Um Kerberos unter Linux einzurichten muss zunächst die nötige Software installiert werden. Diese ist üblicherweise als "krb5" (archlinux, nixos) oder "krb5-user" (debian, ubuntu) in den Repositories Ihrer Distribution zu finden. Um die Benutzung zu vereinfachen bietet sich zzgl an folgenden Inhalt in der Datei "/etc/krb5.conf" zu hinterlegen:

[libdefaults]

default_realm = UNI-PADERBORN.DE

forwardable = true

ticket_lifetime = 10h

renew_lifetime = 7d

dns_lookup_realm = true

dns_lookup_kdc = true

Vor dem ersten Login ist es dann nötig sich ein Ticket mit "kinit example" (oder "kinit -f example@UNI-PADERBORN.DE" sofern nicht wie oben konfiguriert) zu holen, wo "example" der Nutzername Ihres Uni-Accounts ist. Geben Sie als Passwort das Passwort Ihres IMT Accounts ein. Das Ticket ist dann für 10 Stunden gültig.

Login per SSH

Um sich mit Kerberos per SSH einzuloggen ist es nötig diese Authentifizierungsmethode explizit zu aktivieren. Um die Benutzung zu vereinfachen ist empfohlen Folgendes in der Datei "~/.ssh/config" zu hinterlegen wobei "example" durch Ihren IMT Nutzernamen ersetzt werden sollte:

Host *.cs.upb.de *.cs.uni-paderborn.de

    GSSAPIAuthentication yes

    GSSAPIDelegateCredentials yes

    User example

Host *.cs.upb.de *.cs.uni-paderborn.de,!sshgate.*,!git.*

    ProxyJump sshgate.cs.uni-paderborn.de

Danach können Sie sich (sofern Sie sich wie oben beschrieben ein Ticket geholt haben) per "ssh example.cs.uni-paderborn.de" in den jeweiligen Host einloggen, auch ohne VPN.

Kerberos einrichten

Um Kerberos unter Windows einzurichten, kann die Anleitung des IMTs zur Einrichtung von Single-Sign-On herangezogen werden. Bitte beachten Sie, dass Sie das Kapitel "Konfiguration der gewünschten Anwendung" zunächst überspringen können, falls Sie lediglich den SSH Zugang einrichten möchten.

Login per SSH

Um unter Windows mittels SSH eine Verbindung zu ihrer VM herstellen zu können, benötigen Sie weitere Software. Eine solche ist PuTTY. Bitte orientieren Sie sich hier an der Anleitung des IMTs zur Einrichtung von PuTTY.

Firefox unterstützt den Kerberos-Login nativ. Dazu muss lediglich die Option "network.negotiate-auth.trusted-uris" in der Seite "about:config" auf "uni-paderborn.de,upb.de,cs.uni-paderborn.de" gesetzt werden.

Sofern Sie Kerberos eingerichtet haben und ein valides Ticket haben (siehe obige OS-spezifische Anleitung) sollte der Login in die meisten Kerberos-enabled IRB Services dann ohne weitere Passworteingabe erfolgen können.

Um Kerberos mit Google Chrome zu benutzen muss die "AuthServerAllowlist"-Policy konfiguriert werden. Dies geschieht über eine JSON-Datei (z.b. kerberos.json) im Ordner /etc/opt/chrome/policies/managed/ (oder /etc/chromium/policies/managed/ für Chromium):

{
  "AuthServerAllowlist": "*.uni-paderborn.de"
}

Zusätzlich ist es nötig, dass das krb5-Paket im System installiert ist.