Anmeldung mit PAM#

(Nitrokey Start - Linux)

So richten Sie die Anmeldung ein#

Sie haben zwei Möglichkeiten: pam_p11 oder Poldi.

Die Lösung mit pam_p11 ist schwieriger zu erreichen und basiert auf S/MIME-Zertifikaten. Bitte schauen Sie in die Dokumentation für weitere Informationen.

Poldi 0.4.1 funktioniert einwandfrei mit Nitrokey für die PAM-Authentifizierung mit RSA-Schlüsseln (siehe Fehlerbehebung für Informationen zu ECC-Schlüsseln). Neben der Installation von Poldi (z.B. sudo apt-get install libpam-poldi auf Ubuntu) sind die folgenden Schritte notwendig, um es zum Laufen zu bringen.

Es ist notwendig, dass die Schlüssel bereits auf dem Nitrokey erzeugt wurden, da der Authentifizierungsschlüssel von PAM verwendet wird.

  1. Als erstes müssen Sie die „Application ID“ Ihres Nitrokeys herausfinden. Sie können gpg --card-status | grep Application verwenden, um herauszufinden, was Ihrer ist. Es sieht aus wie D00600012401020000000000xxxxxxxx oder so ähnlich.

  2. Nun müssen Sie eine Zeile in /etc/poldi/localdb/users einfügen, die die folgenden Informationen enthält

    <YourApplicationID> <YourUsername>

    Dies könnte wie ‚D00600012401020000000000xxxxxxxx nitrokeyuser‘ aussehen. Geben Sie nun den öffentlichen Schlüssel von Nitrokey in die lokale Datenbank von poldi ein:

sudo sh -c 'gpg-connect-agent "/datafile /etc/poldi/localdb/keys/<YourApplicationID>" "SCD READKEY --advanced OPENPGP.3" /bye'

Bitte beachten Sie, dass Sie in der oberen Zeile Ihre Application ID mit der Ihres Sticks eintragen müssen!

Dann müssen Sie PAM konfigurieren. Fügen Sie einfach „auth sufficient pam_poldi.so“ zu den PAM-Konfigurationsdateien entsprechend Ihren Bedürfnissen hinzu:

  • /etc/pam.d/common-auth für die grafische Benutzeranmeldung

  • /etc/pam.d/login für die Konsolenanmeldung

  • /etc/pam.d/sudo für die sudo-Authentifizierung

  • /etc/pam.d/gnome-screensaver für die Rückkehr von einem gesperrten Bildschirm,

  • usw.

Bemerkung

Es ist gefährlich, mit Pam herumzuspielen, also stellen Sie sicher, dass Sie eine Möglichkeit haben, auf den Rechner zuzugreifen, wenn Sie die Authentifizierung komplett abbrechen. Denken Sie daran, dass das Booten in den Rettungsmodus von Grub ein Root-Passwort erfordert, also halten Sie dieses oder eine Live-CD, die Ihre Dateisysteme lesen kann, bereit.

Hier finden Sie weitere Anleitungen (in Deutsch, teilweise veraltet).

Fehlersuche#

Wenn Sie eine ähnliche Fehlermeldung wie ‚ERR 100663414 Ungültige ID <SCD>‘ erhalten, sollten Sie stattdessen versuchen

poldi-ctrl -k > <YourApplicationID>; sudo mv <YourApplicationID> /etc/poldi/localdb/keys

Bitte beachten Sie, dass Sie in der oberen Zeile Ihre Application ID mit der Ihres Sticks eintragen müssen!

ECC-Schlüssel#

Leider hat poldi noch keine Unterstützung für ECC-Schlüssel. Aber es gibt einen Patch für ECC-Schlüssel, die mit Nitrokey Start verwendet werden. Dieser ist bereits im Master-Branch des poldi-Entwicklungsrepositoriums enthalten und wird daher irgendwann in einer neueren Version veröffentlicht werden. In der Zwischenzeit besteht die einzige Möglichkeit darin, poldi aus dem Quellcode zu bauen.