Ubuntu: „open /usr/lib/x86_64-linux-gnu/libtpm2_pkcs11.so.1: No such file or directory" beheben

Problem

Unter Ubuntu 26.04 oder neuer tritt beim Verbinden mit einem SSH-Host über einen TPM-basierten SSH-Schlüssel folgender Fehler auf:

tpm2_pkcs11_error.txt
lib_contains_symbol: open /usr/lib/x86_64-linux-gnu/libtpm2_pkcs11.so.1: No such file or directory
provider /usr/lib/x86_64-linux-gnu/libtpm2_pkcs11.so.1 is not a PKCS11 library
Received disconnect from 100.64.0.132 port 22:2: Too many authentication failures
Disconnected from 10.1.2.3 port 22

Lösung

Zwischen Ubuntu 24.04 und 26.04 wurde das Paket libtpm2-pkcs11-1 aktualisiert. Dabei wurde die Bibliotheksdatei verschoben — von

old_pkcs11_path.txt
/usr/lib/x86_64-linux-gnu/libtpm2_pkcs11.so.1

nach

new_pkcs11_path.txt
/usr/lib/x86_64-linux-gnu/pkcs11/libtpm2_pkcs11.so

Daher muss die SSH-Konfiguration (typischerweise in ~/.ssh/config oder in /etc/ssh/ssh_config) angepasst und der Pfad zur PKCS11-Provider-Bibliothek auf den neuen Pfad geändert werden.

Beispiel — dies:

ssh_config_example_old
Host myserver
    HostName myserver.mydomain.com
    PasswordAuthentication no
    PKCS11Provider /usr/lib/x86_64-linux-gnu/libtpm2_pkcs11.so.1

ändern auf

ssh_config_example
Host myserver
    HostName myserver.mydomain.com
    PasswordAuthentication no
    PKCS11Provider /usr/lib/x86_64-linux-gnu/pkcs11/libtpm2_pkcs11.so

Ähnliche Beiträge nach Kategorie: Linux