Sie ist aufwendig, kostet Geld und bringt in der Regel keinen unmittelbar sichtbaren Nutzen: Die Client-Security. Dabei ist das richtige Absichern von Rechnern ... (mehr)

UserID Resolver und Realms erstellen

Die weitere Konfiguration erfolgt über die Management-GUI unter der URL »https://IP-Adresse/manage« . Loggen Sie sich mit dem zuvor angelegten administrativen Benutzer (in der Regel "admin") und dem zugehörigen Passwort ein und rufen Sie aus dem Hauptmenü "Lin­OTP Konfiguration / User-IDResolver" auf. Über die Schaltfläche "Neu" fügen Sie bereits vorhandene Benutzerdatenbanken hinzu. Dies können entweder LDAP-basierende Systeme wie Microsofts Active Directory, Novell eDirectory oder Open LDAP sein, alternativ kann LinOTP die Benutzerinformationen aber auch von einem SQL-Server beziehen. LinOTP benötigt ausschließlich Lesezugriff auf die Benutzerdatenbanken. Möchten Sie lieber mit einer lokalen Benutzerdatenbank arbeiten, bietet sich das "Flat File" an.

Um die Verbindung zu einem Active Directory herzustellen, klicken Sie erst auf "LDAP / AD vorbelegen" und passen Sie die Parameter entsprechend Ihrer Domäne an (Bild 2). Mit "LDAP Verbindung testen" überprüfen Sie, ob der Lesezugriff auf das AD funktioniert. Anschließend vergeben Sie einen Namen und speichern den neuen UserIDResolver ab.

Bild 2: LinOTP verfügt über zahlreiche Schnittstellen zum Andocken an bestehende Directory-Systeme, zum Beispiel Microsofts AD, Novell eDirectory oder SQL-Datenbanken.

Verschiedene UserIDResolver lassen sich auf LinOTP wiederum zu Gruppen – in LinOTP-Terminologie "Realms" genannt – zusammenfassen. Wir legen daher zunächst noch eine zweite Benutzerquelle an, dieses Mal in Form eines Flat Files. Es folgt der Syntax einer Linux-Passwortdatei ("/etc/passwd"), in der die Passwörter als Hashes abgelegt sind. Sie können also entweder eine bereits vorhandene Passwortdatei per "scp" auf die LinOTP-Appliance kopieren und in der Rootshell unter einem eigenen Namen unter "/etc" auf der Appliance ablegen. Alternativ legen Sie auf der Appliance unter "/etc" ein neues Flat File an. Dazu loggen Sie sich auf der Konsole oder per SSH als "root" ein und wechseln mit

unsupported

in eine echte Rootshell. Der Befehl

linotp-create-pwidresolver-user -u tom -i 1001 -p geheimespasswort -d Thomas > /etc/flatfile

erzeugt beispielsweise die Datei »/etc/flatfile,« die bereits den Benutzer Thomas mit der UserID 1001 und dem verschlüsselten Passwort-Hash "geheimespasswort" enthält.

Legen Sie nun im Bereich "LinOTP Konfiguration / Realms" eine Gruppe an, zum Beispiel "Testuser", und wählen Sie die Benutzerdatenbanken mit gedrückter Steuerungstaste mit der Maus an, um diese hinzuzufügen.

Token-Konfiguration und -Rollout

In der "Benutzeransicht" sollten nun die Benutzer aus den jeweiligen Quellen erscheinen. Der nächste Schritt besteht darin, den Benutzern einen oder mehrere Tokens zuzuweisen. LinOTP unterstützt eine Vielzahl von Hardware-Herstellern, darunter Feitian, SafeNet, Vasco und den beliebten Yubikey. Mit der Auslieferung kommerzieller Hard- und Software-Tokens werden sogenannte Seed-Files geliefert. Diese Dateien können vom Hersteller in unterschiedlichen Formaten verschlüsselt oder unverschlüsselt geliefert werden und gelangen über den Dialog "Tokendatei importieren" auf die Lin­OTP-Appliance. Sind die Seeds verschlüsselt, muss das ebenfalls mitgelieferte Passwort für die Entschlüsselung der Seeds beim Import entsprechend angegeben werden. Wenn Ihre Tokens mit dem OATH-Standard initialisiert beziehungsweise mit diesem kompatibel sind, haben Sie die Seedfiles voraussichtlich in einer PSKC-Datei oder im CSV-Format erhalten (Bild 3). Leider ist PSKC (Portable Symmetric Key Container, RFC6030) aber nicht gleich PSKC und es kann daher vorkommen, dass sich die gelieferte PSKC-Datei nicht korrekt einlesen lässt. In diesen Fällen hilft der kompetente Support von LSE aber schnell und unbürokratisch weiter und konvertiert das Dateiformat entsprechend.

Die LinOTP Web-GUIs und das Commandline Interface

LinOTP stellt mehrere Web-GUIs für die unterschiedlichen Aufgaben bereit:Management GUI: https://IP-Adresse/manage/Das eigentliche Admin-Frontend. Hier konfigurieren Sie Benutzer, externe Authentfizierungsquellen, Tokens und Richtlinien. Appliance Configuration GUI: https://:8443/Das Admin-Frontend für die Grundeinstellungen der virtuellen Appliance. Hier konfigurieren Sie beispielsweise Netzwerk, Routing, DNS, Zeitserver, Loglevel und RADIUS Clients. Weiterhin verwalten Sie hier administrative Benutzer und deren Passwörter und führen Backups und Restores durch. Self Service Portal: https://Im Self Service Portal können Benutzer – abhängig von der zugeordneten Richtlinie – selbständig Aktionen ausführen und so etwa selbst einen Token für ihren Account ausrollen oder die PIN für einen Token ändern.Authentifizierungs Test: https:///auth/indexUnter dieser URL können Sie im Browser rasch testen, ob die OTP-Konfiguration eines Benutzers ordnungsgemäß funktioniert.Kommandozeilenfans werden sich über die umfangreiche CLI-Unterstützung freuen. Dazu melden Sie sich entweder über die Konsole oder per SSH als "root" auf der Appliance an. Sie landen dann zunächst in einer eingeschränkten Shell, deren Befehle Sie sich durch Eingabe von help anzeigen lassen können. Wechseln Sie mit dem Befehl unsupported in eine echte Root-Shell. Die CLI-Befehle beginnen alle mit "linotp", Sie können diese daher einfach durch Eingabe von linotp + [Tab]auflisten lassen. Alternativ lohnt natürlich auch hier ein Blick in die ausführliche Dokumentation [3].

Nach dem Einlesen der Seedfiles finden Sie die Tokens mit ihrer Seriennummer in der "Tokenansicht". Die Seriennummer ist bei Hardware-Tokens in der Regel auf der Rückseite aufgedruckt, sodass sich diese leicht identifizieren lassen. Im nächsten Schritt werden wir dem oder den Benutzern einen oder mehrere Token zuweisen, mit denen sie sich später gegenüber der Applikation authentifizieren können. Aus Sicherheitsgründen werden wir das Token zusätzlich mit einer geheimen PIN schützen, die nur der Benutzer kennt. Ein verlorenes oder gestohlenes Token ist für einen Angreifer dann wertlos, da es sich ohne Kenntnis der PIN nicht zur Authentifizierung verwenden lässt.

Um einem Benutzer nun einen der Tokens aus der Liste zuzuweisen, wählen Sie in der Benutzeransicht zunächst den Benutzer aus und klicken dann auf "Tokenansicht". Dort wählen Sie das Token mit der Seriennummer aus, die der Benutzer erhalten soll, und klicken auf der linken Seite auf "zuweisen". Daraufhin poppt ein Fenster zum Setzen der PIN auf, hier tragen Sie zunächst eine Standard-PIN (zum Beispiel 0000) ein und klicken zum Abschluß auf "PIN setzen".

Neben dem Hardware-Token wollen wir dem Benutzer nun mit dem Google Authenticator zusätzlich ein Software-Token zuweisen. Dazu wählen Sie in der Benutzeransicht den gewünschten Benutzer aus und klicken auf "Ausrollen". Stellen Sie als Token-Typ "HMAC ereignisbasiert" ein und aktivieren Sie "HMAC Seed vom Server generieren lassen". Die restlichen Einstellungen übernehmen Sie mit einem Klick auf "Ausrollen". LinOTP zeigt nun einen QR-Code an, den Sie mit der Google Authenticator App scannen. Das Soft-Token erscheint dann im Google Authenticator unter der gleichen Seriennummer, die im LinOTP Management angezeigt wird (Bild 4).

Bild 3: LinOTP bietet volle Unterstützung für den freien OATH-Standard. Die Token-Hersteller liefern ihre Secrets (Seeds) in der Regel als PSKC-Datei aus, die sich in LinOTP importieren lässt.
comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2022