Sudo Befehle mit Yubikey unter Ubuntu, Mint und Debian absichern
In diesem Artikel schauen wir uns nun an wie wir Sudo Befehle mit dem Yubikey unter Ubuntu, Mint und Debian absichern können. Ein YubiKey kann als starkes zweites Authentifizierungsmerkmal für sudo
dienen. Damit wird verhindert, dass jemand mit reinem Passwort-Zugriff root-Rechte erhält – selbst wenn das Passwort bekannt ist. Im Folgenden zeige ich dir, wie du den YubiKey so einrichtest, dass er bei sudo
-Befehlen abgefragt wird. In diesem Beitrag haben wir uns angeschaut, wir den Login absichern, jetzt schauen wir uns an, wie wir Systemdateien zusätzlich absichern.

Voraussetzungen
- Ein funktionierender YubiKey, idealerweise mit U2F/FIDO2-Unterstützung.
- Ein aktuelles Debian/Ubuntu/Linux Mint-System.
sudo
-Rechte (bzw. root bei Debian).- Ein Backup-Zugang zum System (z. B. SSH oder andere Root-Methode), falls du dich aussperrst.
Vorbereitungen
Der Yubikey wird vorher eingerichtet und die Schlüssel unter /etc/Yubico/u2f_keys
abgespeichert. Folgt dazu den ersten Teil des Yubikey Tutorials hier.
PAM Konfigurations Datei für Sudo Zugriff anpassen (Mint, Ubuntu)
Damit wir für Änderungen an Systemdateien uns mit dem Yubikey authentifzieren müssen, passen wir die entsprechende Datei an. Wir öffnen die /etc/pam.d/sudo
mit
sudo nano /etc/pam.d/sudo
Fügt direkt nach dieser Zeile @include common-auth
auth required pam_u2f.so authfile=/etc/Yubico/u2f_keys

Speichert die Datei, beendet bzw. schliesst das Fenster noch nicht! Falls etwas falsch konfiguriert worden ist, kann es sein, dass ihr keine Systemdateien mehr ändern könnt. Deshalb lassen wir das Fenster offen, und kommentieren die Zeile wieder aus, falls etwas schief geht!
sudo Funktion testen
Jetzt kommt der spannende Moment:
- Zieht euren YubiKey ab
- Öffnet ein neues Terminal-Fenster
- Gib folgenden Befehl ein:
sudo echo test
Ihr werdet nach dem Passwort gefragt – gebt es ein.
Erwartetes Verhalten: Die Authentifizierung schlägt fehl, da der YubiKey nicht gesteckt ist.
- Steckt jetzt den YubiKey ein
- Öffnet ein neues Terminal-Fenster und gebt erneut ein:
sudo echo test
Ihr werdet nach dem Passwort gefragt – und dann blinkt euer YubiKey.
Berührt den Sensor, wenn er blinkt.
Wenn der Befehl ausgeführt wird, ist die Konfiguration erfolgreich. 🎉
Falls es nicht klappt, kommentiert die Zeile
auth required pam_u2f.so authfile=/etc/Yubico/u2f_keys
wieder aus, und speichert die Datei wieder ab.
PAM Konfigurations Datei für su Zugriff anpassen (Debian)
Unter Debian gibt es traditionell kein sudo Befehl. Hier loggt ich euch als Superuser ein und führt direkt Befehle als root aus. Deshalb müssen wir hier auch nicht die sudo Datei bearbeiten, sondern die su Datei:
sudo nano /etc/pam.d/su
Fügt hinter @include common-auth wieder die Zeile
auth required pam_u2f.so authfile=/etc/Yubico/u2f_keys
ein:

Auch hier gilt, speichert nur die Datei, schliesst das Terminal Fenster jedoch noch nicht!
Öffnet euch ein zweites Terminal Fenster und loggt euch mit su -
ein. Mit angestecktem Yubikey wird der Zugriff dann mit einem Touch auf den Yubikey gewährt.
Fehlersuche bei Problemen
Könnt ihr sudo Befehle nicht ausführen, oder euch nicht als Superuser einloggen, gibt es ein paar Dinge, die wir uns anschauen können:
Ist die Datei /etc/Yubico/u2f_keys
vorhanden und korrekt berechtigt?
ls -l /etc/Yubico/u2f_keys
→ Sie muss deinem Benutzer gehören oder lesbar sein für PAM, z. B. chmod 600
.
Hast du die PAM-Zeile korrekt eingefügt? Die Zeile muss nach @include common-auth
stehen und so aussehen:
auth required pam_u2f.so authfile=/etc/Yubico/u2f_keys
Wurde der YubiKey wirklich konfiguriert? Prüfe den Inhalt der Datei:
cat /etc/Yubico/u2f_keys
→ Sie darf nicht leer sein und sollte mit deinem Benutzernamen beginnen.
Blinkt der YubiKey bei Aufforderung? Wenn nicht, könnte ein Problem mit USB oder dem Slot bestehen. Teste mit pamu2fcfg
erneut oder an einem anderen Port.
Ist der Speicherort des Schlüssels korrekt?
Wenn ihr den Pfad in der PAM-Konfiguration nicht explizit mit authfile=
angebt, muss sich die Datei genau dort befinden – und zwar im Home-Verzeichnis des aktuellen Benutzers, der sudo
ausführt.
Wenn ihr die Schlüsseldatei systemweit verwendet (z. B. unter /etc/Yubico/u2f_keys
), müsst ihr in der PAM-Konfigurationszeile auch den Pfad angeben!
Fazit
Mit dem YubiKey und dem PAM-U2F-Modul könnt ihr euer System effektiv absichern. Selbst wenn euer Passwort kompromittiert ist, kann niemand ohne physischen Zugriff auf deinen YubiKey administrative Befehle wie sudo
oder su
ausführen.