Aus LinuxUser 10/2012

Sichere Authentifizierung mit dem YubiKey (Teil 2)

© Nikolai Sorokin, Fotolia

Schlüsselerlebnis

SSH-Zugänge gelten als sicher – sofern die Zugangsdaten in den richtigen Händen bleiben. Mit dem YubiKey ergänzen Sie ihr Sicherheitskonzept um eine wirksame 2-Faktor-Authentifizierung.

Der erste Teil dieses Beitrags in LU 09/2012 [1] beschrieb die grundlegenden Prinzipien des YubiKey, die zugehörige Client-Server-Architektur zur Authentifizierung sowie die sich daraus ergebenden Einsatzbereiche. Der vorliegende Artikel widmet sich der Einbindung des YubiKey in die eigene Linux-Infrastruktur, der Verwendung als Pluggable Authentication Module (PAM) und dem Zusammenspiel mit einem YubiKey-Authentifizierungsserver.

YubiKey-Tools

Grundsätzlich können Sie die auf dem YubiKey gespeicherten Daten nicht direkt auslesen. Sie erhalten lediglich die temporären Schlüssel als Ergebnis der entsprechend den beiden Slots zugewiesenen Aktionen, indem Sie den Knopf auf dem YubiKey drücken – weniger als 1,5 Sekunden für den ersten Slot und rund 3 Sekunden für den zweiten Slot. Die ersten zwölf Zeichen des dynamisch generierten Schlüssels beinhalten die Geräteidentifikation des YubiKey („Public ID“), die man in der Regel administrativ eindeutig einem Nutzer zuweist. An dieser Public ID orientiert sich der Autorisierungsserver zur Schlüsselüberprüfung.

Die Konfiguration des YubiKey nehmen Sie entweder über die Kommandozeile mit dem Werkzeug Ykpersonalize aus dem Paket yubikey-personalization [2] vor oder mit dem grafischen YubiKey Personalization Tool (YKPT, [3]), einer Qt-Anwendung (Abbildung 1). Neben kostenlos von der Herstellerwebseite verfügbaren, plattformspezifisch übersetzten Binärversionen für Linux, OS X und MS Windows stehen bereits seit längerem auch fertige Pakete für Red Hat, Fedora, Ubuntu und Debian zur Verfügung. Letztere gibt es erst ab dem kommenden Debian-Release als Paket. Beide Programme liefen in unseren Tests jedoch soweit fehlerfrei, auch wenn die Pakete bislang nur zum Teil als stabil klassifiziert wurden. Auf Github [4] befindet sich ein Repository mit dem aktuellen, dazugehörigen Quellcode zum Selberbauen.

Abbildung 1: Qt-Anwendung zur YubiKey-Konfiguration – das YubiKey Personalization Tool.
Abbildung 1: Qt-Anwendung zur YubiKey-Konfiguration – das YubiKey Personalization Tool.

Für das Ausführen sowohl von Ykpersonalize als auch YKPT benötigen Sie unter Debian und Ubuntu Root-Rechte (aufgrund einer vermurksten Udev-Regel), unter Mac OS X genügen bereits normale Benutzerrechte. Beide Werkzeuge zeigen die Seriennummer des YubiKey, die Versionsnummer der Firmware und damit auch die unterstützten Verfahren zur Authentifizierung an (Abbildung 1, rechts).

Sie rufen YKPT über das Shellskript YubiKey Personalization Tool.sh auf. Das Programm startet auch ohne angeschlossenen Token und gestattet eine Evaluation des Funktionsumfangs, was für eine erste Einschätzung ausreicht. Im Advanced Mode wird es etwas unübersichtlich – etwas Entdeckerfreude hilft hier weiter. Das legt in ihrem Home-Verzeichnis die Datei configuration_log.csv an. Sie enthält die Konfiguration des zuletzt von Ihnen bearbeiteten YubiKeys und somit auch die verwendeten Passworte. Verfahren Sie mit dieser Datei entsprechend Ihrer Sicherheitsrichtlinien, etwa indem Sie die Lese- und Schreibrechte der Datei radikal auf sich selbst einschränken oder die Datei regelmäßig löschen:

$ chmod go -rwx ~/configuration_log.csv

Unter dem Menüpunkt Settings | Logging Settings können Sie im YubiKey Personalization Tool eine andere Datei festlegen oder das Speichern der Daten vollständig deaktivieren (Abbildung 2).

Abbildung 2: Im YubiKey Personalization Tool legen Sie den Pfad zur Logging-Datei fest.
Abbildung 2: Im YubiKey Personalization Tool legen Sie den Pfad zur Logging-Datei fest.

Passworte hinzufügen

Im Folgenden besprechen wir die beiden Varianten „statisches Passwort“ und „Yubico OTP“ (siehe [1]). Die Programmierung beider Varianten gestaltet sich recht ähnlich.

Beide Speicher auf dem YubiKey lassen sich getrennt voneinander programmieren. Üblich ist, den Speicher 1 für Einmalpassworte (Yubico OTP) und den Speicher 2 für ein statisches Passwort zu verwenden. Sie sind jedoch nicht an diese Gepflogenheit gebunden.

Yubico konfiguriert den Speicher 1 mit einem Schlüssel vor, mit dem Sie beispielsweise den Yubico-eigenen Autorisierungsdienst YubiCloud [5] nutzen können. Falls Sie den Inhalt dieses Speichers verändern, steht Ihnen dieser Dienst nicht mehr zur Verfügung. Haben Sie sich jedoch vorher bei YubiCloud angemeldet, können Sie ihren neuen Yubico-OTP-Schlüssel aus dem Speicherort 1 in ihrem YubiCloud-Profil nachtragen und ihren YubiKey wie gewohnt verwenden.

Indem Sie auf dem YubiKey ein statisches Passwort speichern, lagert dieses schon mal sicherer als auf dem Zettel am Monitor. Der YubiKey wirkt dabei allerdings nur wie eine Art Sichtschutz. Das Drücken des Knopfes auf dem YubiKey ist identisch zur Eingabe über die Tastatur, nur: Es sieht keiner, was Sie eingeben. Damit stellen auch längere, kompliziertere Passworte kein Problem mehr dar. Das gewählte statische Passwort kann auf dem YubiKey aus bis zu 38 Zeichen bestehen.

Sowohl mit Ykpersonalize als auch mit YKPT lässt sich der YubiKey programmieren und entsprechende Schlüssel speichern. Allerdings verhielten sich in unserem Test Kommandozeilentool und Qt-Anwendung nicht identisch. Bei den Versuchen mit dem Kommandozeilentool stellten wir fest, dass bei der Konfiguration eines statisches Passworts dieses nicht im Klartext auf dem YubiKey landete, sondern stattdessen eine zufällige Zeichenkette.

Statisches Passwort setzen

Daher starten Sie zum Setzen eines statischen Passworts am besten die Qt-Anwendung. Danach wählen Sie nacheinander die Menüpunkte Static Password und Scan Code aus. Aus den Eingabefeldern wählen Sie den Configuration Slot 2 für den zweiten Speicherplatz auf dem YubiKey. Die angezeigte Auswahl unprotected (keep it that way) belassen Sie unverändert und erhalten sich damit die Möglichkeit, weiter mit dem YubiKey zu experimentieren.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 5 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
KAUFEN
LinuxUser 10/2012 KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS
Deutschland

Hinterlasse einen Kommentar

  E-Mail Benachrichtigung  
Benachrichtige mich zu: