Home » Linux » YubiKey als Login unter Linux Mint, Ubuntu und Debian einrichten

YubiKey als Login unter Linux Mint, Ubuntu und Debian einrichten

Der YubiKey ist eine der sichersten Methoden, um den Zugriff auf dein Linux-System zu schützen. Statt nur ein Passwort einzugeben, könnt ihr euren YubiKey als Zweitfaktor oder sogar als einzige Login-Methode nutzen. In diesem Artikel erkläre ich, wie ihr das unter Linux Mint, Ubuntu, Debian und Kubuntu einrichten könnt.

Voraussetzungen

Bevor wir starten, stellt sicher, dass dein System folgende Anforderungen erfüllt:

  • Ein YubiKey (z. B. YubiKey 5, YubiKey 5C, Security Key, o. Ä.)
  • Ein aktuelles Linux-System (Ubuntu, Debian, Linux Mint oder Kubuntu)
  • Administrationsrechte (sudo)

YubiKey-Software installieren

Um den YubiKey in das System zu integrieren, müssen einige Pakete installiert werden.

Ubuntu, Debian, Linux Mint, Kubuntu

Öffnet ein Terminal und installiert die benötigten Pakete:

sudo apt update && sudo apt install libpam-yubico libpam-u2f yubikey-personalization

Diese Pakete enthalten:

  • libpam-yubico: Für Yubico OTP (One-Time-Password)
  • libpam-u2f: Für Universal 2nd Factor (U2F)
  • yubikey-personalization: Für die Konfiguration des YubiKeys

Nach der Installation könnt ihr den YubiKey für die Anmeldung konfigurieren.

YubiKey für die Anmeldung einrichten

Authentifizierungsdaten generieren

Setzt den YubiKey in einen USB-Port und erstellt das Konfigurationsverzeichnis:

sudo mkdir -p /etc/Yubico
sudo pamu2fcfg > /etc/Yubico/u2f_keys

Jetzt sollte das Gerät blinken, und ihr müsst die Kontaktfläche antippen um das hinzufügen zu bestätigen.

Es wird empfohlen mit einem Backup Yubikey zu arbeiten! Verliert, oder beschädigt ihr den Yubikey, ist ein Login nicht mehr ohne weiteres möglich. Um einen Backup Yubikey hinzuzufügen, steckt den zweiten Stick ein, und fügt diesen mit einem leicht angepassten Befehl hinzu:

sudo pamu2fcfg -n >> /etc/Yubico/u2f_keys

Mit diesem Befehl werden euer YubiKey-Schlüssel ausgelesen und in die Datei /etc/YubiKey/u2f_keys geschrieben.

PAM (Pluggable Authentication Modules) konfigurieren

Login-Authentifizierung ändern

Öffnet die PAM-Konfigurationsdatei für den Login:

sudo nano /etc/pam.d/common-auth

Fügt folgende Zeile vor der Zeile auth requisite pam_deny.so hinzu:

auth required pam_u2f.so authfile=/etc/YubiKey/u2f_keys cue

Speichert die Datei mit strg+o beenden mit strg+x, dann Y, dann Enter.

YubiKey als einzige Login-Methode nutzen (optional, nur für fortgeschrittene Nutzer)

Wenn ihr den YubiKey als einzige Authentifizierungsmethode nutzen wollt, entfernt die Passwort-Authentifizierung:

sudo nano /etc/pam.d/common-auth

Ändert die Zeilen je nach Betriebssystem:

auth required pam_unix.so

in

#auth required pam_unix.so

---------------------------
oder
---------------------------

auth    [success=2 default=ignore]      pam_unix.so nullok
auth    [success=1 default=ignore]      pam_sss.so use_first_pass

in 

#auth    [success=2 default=ignore]      pam_unix.so nullok
#auth    [success=1 default=ignore]      pam_sss.so use_first_pass

Speichert die Datei mit strg+o beenden mit strg+x, dann Y, dann Enter.

Ein Login ist dann nur noch mit dem Yubikey möglich!

8. Fehlerbehebung

Falls etwas nicht funktioniert:

Prüft, ob der YubiKey korrekt erkannt wird:

lsusb | grep -i yubi

Prüft evt das PAM log für Fehler:

journalctl -xe | grep pam

Falls ihr euch nicht mehr einloggen könnt, boote im Recovery-Modus oder verwendet eine Live-CD, um /etc/pam.d/common-auth auf der Systemplatte zu bearbeiten.

Fazit

Mit diesen Schritten habt ihr erfolgreich deinen YubiKey für den Login unter Linux Mint, Ubuntu, Debian und Kubuntu eingerichtet. Dies erhöht die Sicherheit eures Systems erheblich, besonders wenn ihr ihn mit sudo-Authentifizierung kombiniert. Diesem Thema widmen wir aber demnächst einen eigenen Beitrag!

Falls ihr noch Fragen habt oder Probleme auftreten, könnt ihr ein Kommentar hinterlassen, oder euch in den Yubico-Foren anmelden oder auf GitHub nach Lösungen umsehen.

Ähnliche Beiträge

  • Systemwiederherstellung unter Linux mit TimeShift

    Timeshift ist eine leistungsstarke Systemwiederherstellung unter Linux, die es ermöglicht, das gesamte System zu einem früheren Zeitpunkt wiederherzustellen. Dieses Tool ist besonders nützlich, um das System vor kritischen Fehlern zu...

  • |

    FreeTube, die YouTube Alternative

    FreeTube ist eine Open-Source-Desktop-App und zugleich Youtube Alternative, die auf den Datenschutz ausgerichtet ist und es Nutzern ermöglicht, YouTube-Inhalte anzusehen, ohne persönliche Informationen preiszugeben oder von YouTube-Tracking-Technologien erfasst zu werden....

  • Daten in der Cloud verschlüsseln

    Daten in der Cloud verschlüsseln? Warum? Wer noch Angebote wie Google Drive, Microsoft One Drive oder Dropbox benutzt ist besser beraten seine Privaten Datein nur noch verschlüsselt in die externen...

  • Die wichtigsten Linux Befehle im Überblick

    In diesem Beitrag findet ihr die wichtigsten Befehle für den Linux Terminal (Kommando Zeile). Viele von uns benutzen die Kommandozeile rein nach Anleitung, und teilweise weiss man garnicht was man...

  • Linux Passwort zurück setzen mit chroot

    Habt ihr euer Linux Login Passwort vergessen? In diesem Tutorial zeigen wir euch, wie ihr euer Passwort mit chroot und einem Linux Live System zurück setzen könnt. Glücklicherweise ermöglicht Linux...

2 Kommentare

  1. Hi, danke für das Guide Mario!

    Kurze Anmerkung für „Permission denied“-Error beim Anlegen der Keydatei:

    Für das Nutzen von 2FA per-user ist das Erstellen des Verzeichnisses ~/etc/Yubico mit „sudo“ für den eigenen Benutzer nicht zielführend.
    Da muss man nachträglich noch mit „chown -R [user]:[user] ~/etc“ drüber bügeln, damit der Prozess dort schreiben kann.

  2. Kann das sein, dass du im ersten Schritt /etc/Yubico anlegst und dann in deinen weiteren Schritten /etc/YubiKey angibst? Hast du da was durcheinander gebracht oder hab ich nen Denkfehler?

Schreibe einen Kommentar

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