Sicherheit mit dem Linux PC

Der Linux PC kann über bestimmte Sticks, zusätzlich gesichert werden. Die hier verwendeten Yubikey Sticks sind gut integrierbar. Aber Achtung: Es gehört schon auch einiges dazu, um die Teile gut einzusetzen.

Die Qual der Wahl

Es gibt einige unterschiedliche Gerätschaften bei YubiKey. Jeder muss für sich entscheiden, was für einen das Beste ist. Bei YubiKey gibt es einen multifunktionalen Stick. Der kann alles, was es in dem Bereich zu tun gibt. Aber ist das notwendig? Der schlägt derzeit für ein Einzelstück mit ca. 60 € zu Buche.

Für viele Anwendungen reicht der Stick, der FIDO2 kann. Und der kostet "nur" die Hälfte.

Wichtig ist, dass man mindestens zwei Sticks hat. Ist einer verlegt oder verloren, hat man den zweiten noch.

Außerdem muss man sich entscheiden, ob der Stick zwingend eingesetzt werden soll, oder ob es ein zusätzlicher Faktor sein soll.

Ich habe mich für die "sufficient" (also zusätzlich) und gegen die "required" (zwinged) Lösung entschieden

Softwareinstallation

Ich gehe bei meiner Beschreibung davon aus, dass ich alles, was ich mache, als "root" mache. Also kein vorangestelltes "sudo".

Natürlich braucht man die Treiber für die Sticks. Da ich hier U2F (Fido2) verwenden will, brauche ich die folgenden Treiber:

dnf install pam-u2f pamu2fcfg

Konfiguration

Leider ist hier viel Handarbeit angesagt. Also nichts für Anfänger. Auch wird hier die Konfiguration in Fedora Linux gezeigt. Aber, das ist so ähnlich in allen Linux Systemen zu konfigurieren.

Am besten erzeugt man sich im Verzeichnis "/etc/pam.d" zwei Dateien. Eine für die "required" und eine für die "sufficient" Variante.

u2f-required

#%PAM-1.0
auth       required     pam_u2f.so

u2f-sufficient

#%PAM-1.0
auth       sufficient     pam_u2f.so

Jetzt als Benutzer

Da diese Sticks natürlich für einen Benutzer eingerichtet werden, muss jetzt als Benutzer eine Zuordnung des Sticks muss also als Benutzer erfolgen. Dazu gibt es das Programm "pam_u2f". Dieses erzeugt die benötigten Daten für den Benutzer.

mkdir -p ~/.config/Yubico
pamu2fcfg > ~/.config/Yubico/u2f_keys

Wenn man einen zweiten Stick hat, kann man mit folgendem Befehl den zweiten Stick hinzufügen

pamu2fcfg -n >> ~/.config/Yubico/u2f_keys

Konfiguration von PAM

PAM ist die Verwaltung von Möglichkeiten, wie man sich anmelden kann. Und noch vieles mehr rund um die Anmeldung. Also muss ein solcher Stick auch in PAM eingebunden werden.

ACHTUNG: Bei "required" immer testen, ob die Anmeldung noch geht.

Ich nehme wieder die Konfiguration als "root" vor. Also ohne "sudo".

Die Grundkonfiguration kann in folgenden Dateien passieren:

  • /etc/pam.d/login
  • /etc/pam.d/gdm-password
  • /etc/pam.d/sudo
  • /etc/pam.d/sshd

Für den Anfang reichen diese vier.

Um die "sufficient" Variante einzusetzen, muss in den vier Dateien vor dem "system-auth" die "sufficient" Variante eingebaut werden. Im Folgenden gekürzt dargestellt.

#%PAM-1.0
auth       include      yubikey-sufficient
auth       substack     system-auth
...
...
...

Nachtrag

Wenn der Rechnername sich ändert, müssen auch die keys des Benutzers neu eingetragen werden.