Home » Linux » Sudo Befehle mit Yubikey unter Ubuntu, Mint und Debian absichern

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:

  1. Zieht euren YubiKey ab
  2. Öffnet ein neues Terminal-Fenster
  3. 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.

  1. Steckt jetzt den YubiKey ein
  2. Ö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.

Ähnliche Beiträge

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert