TPM 2 als sicherer Datenspeicher für Linux

Das Trusted Platform Module 2 (TPM 2) wurde bereits 2014 als Standard veröffentlicht. Dennoch fristete es lange Zeit ein Schattendasein. Microsoft hob es mit den Versionen Windows 10 und Windows 11 aus dem Schatten und seit einigen Jahren befassen sich auch unter Linux mehr Entwickler damit.

Unter Linux ist aktuell TPM 2 bereits jetzt ein wichtiger Baustein für einen verifizierten Systemstart und die Möglichkeit, ein verschlüsseltes System ohne initiale Passworteingabe zu starten. Für einen Überblick über den aktuellen Stand empfehle ich folgende zwei Artikel hier im Blog:

Parallel zu den Entwicklungen bei systemd haben openSUSE und Canonical eigene Anstrengungen gestartet, um TPM stärker in die eigenen Systeme einzubinden. Ich vermute trotzdem, dass systemd als gemeinsamer Nenner vieler Distributionen, ein wichtiger Bestandteil bleiben wird.

Auf der FOSDEM 24 wurde TPM in einem anderen spanneden Kontext präsentiert, und zwar als sicheren Schlüsselspeicher. Für den Hintergrund muss man sich ein wenig mit einem gar nicht mehr so aktuellen Problem befassen. Moderne mobile Hardware wie iPhones, iPads oder Android-Smartphones haben etwas, das bei Apple als Secure Enclave bezeichnet wird oder bei Google als Titan M. Microsoft hat dafür auf einen Standard gesetzt: TPM. Das ist sehr gut, weil dadurch für Desktop-Hardware etwas ähnliches Verbreitung gefunden hat, das auch Linux das nachnutzen kann.

Das Problem ist nämlich, dass manche Daten wie biometrische Daten, aber auch wichtige Schlüssel besser nicht ohne zusätzliche Schutz im System aufbewahrt werden. Sie können dort einfach nicht so sicher geschützt werden, wie das notwendig ist. Datei- und Benutzerrechte hin oder her. Aus diesem Grund rate ich auch dringend davon ab, biometrische Verfahren mit Linux zu nutzen.

In dem FOSDEM Talk werden nun weitere Szenarien präsentiert (siehe auch den Bericht bei Heise). Ihnen gemein ist, dass sie erst möglich sind, seitdem grundlegende Arbeiten unter Linux TPM 2 auch praktisch nutzbar gemacht haben. Zu den neuen Ansätzen gehört die Möglichkeit das TPM 2-Subsystem zum versiegeln (engl. “sealed” – schwierige Übersetzung) und laden von privaten GnuPG-Schlüsseln zu nutzen. Das Verfahren ist in dem vor über einem Jahr veröffentlichten GnuPG 2.4 bereits enthalten, aber wurde bisher wenig beachtet. Möglicherweise auch, weil viele Distributionen ältere Versionen von GnuPG nutzen. Ebenso denkbar ist dies aber auch für OpenSSH, wenngleich hier noch mehr Arbeit investiert werden muss.

Vermutlich ist auch das nur der Anfang und Schlüsselspeicher werden folgen. Ich hatte lange die Sorge, dass der lautstarke FUD aus der angst- und hasserfüllten kleinen Minderheit von Linux-Anwendern, die sich unter entsprechenden Artikeln immer zu Wort meldet, bei Linux hinderlich für die Entwicklung sein könnte, aber glücklicherweise scheinen die Entwickler diese inzwischen zu ignorieren.

Cruiz
Cruizhttps://curius.de
Moin, meine Name ist Gerrit und ich betreibe diesen Blog seit 2014. Der Schutz der digitalen Identität, die einen immer größeren Raum unseres Ichs einnimmt ist mir ein Herzensanliegen, das ich versuche tagtäglich im Spannungsfeld digitaler Teilhabe und Sicherheit umzusetzen. Die Tipps, Anleitungen, Kommentare und Gedanken hier entspringen den alltäglichen Erfahrungen.
  1. Hallo Gerrit,
    danke für deinen Beitrag – das GnuPG das mittlerweile integriert hat, ist bisher an mir vorbeigegangen. Die Möglichkeit private SSH-Keys per TPM via e PKCS#11 abzusichern, habe ich dagegen schon länger im Einsatz – siehe auch https://www.codingblatt.de/ssh-keys-tpm-absichern/ (ich hoffe ein thematisch passender Link erlaubt ^^).
    Ich bin bei der TPM-Thematik ganz bei dir, und hoffe, dass sich das im Linux-Umfeld stärker durchsetzen wird. Ich selbst nutze die TPM-Funktionalität unter Linux z.B. auch für “manuelles Measured Boot” (tpm2-totp), oder in Verbindung mit VeraCrypt und einer per TPM verschlüsselten Schlüsseldatei (via PKCS#11).
    Gruß Stephan

  2. Ich findw auch Passkey ein tolles Konzept. Leider ist hier Linux ganz allgemein weit zurück.
    Es wäre schön, wenn hier was gehen würde.
    Passkey hat leider nur einen Nachteil. Irgendwie müssen die Schlüssel über gerätegrenzen hinweg synchronisiert werden. Bisher mussteblinux noch nie über das eigene Gerät hinaus denken.
    Wireguard war das erste mal, das hier Zaghaft was gemacht wurde. Aber eigentlich wäre entweder ein webdienst (Wie Bitwarden) , sowas wie P2P (wie syncthing) oder sonst ein tool als companion Dienst nötig.
    Ich glaube da fehlt ein Standard.

    Professionelle wie Fefe wettern immer gegen Active Directory. Aber bis heute gobt es kein besseres System von der Linux community mit dem man Linux Geräte in ein grösseres ganzes integriert.
    Wenn ich mir z.B. ssh ansehe. Mein umgang damit ist nich sonderlich auf Sicherheit ausgelegt. Ein falscher kompromitierter PC und meine Familie deren Admin ich bin könnte probleme bekommen.
    Aber leider gibt es nichts in dem bereich was mich dabei unterstützt sicher und zumindest etwas komfortabel zu Arbeiten.

    Laut Internet könnte ich mit PAM ja durchaus etwas mehr Sicherheit konfigurieren. Aber mal ehrlich welcher nicht berufliche IT administraror tut sich das an?

Kommentieren Sie den Artikel

Ergänzungen dienen der Diskussion über die Inhalte des Artikels. Nachfragen, Anmerkungen und Ergänzungen sind dezidiert erwünscht. Ergänzungen werden vor der Veröffentlichung moderiert. Wir behalten uns vor Kommentare ohne inhaltlichen Bezug oder abseitige Diskussionen nicht zu veröffentlichen.

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Weitere Artikel