Вопрос или проблема
У меня есть Intel NUC (NUC8i7BEH), который включает в себя технологию доверенной платформы вместо специализированного чипа TPM 2.0.
Я читал этот другой пост на Ask Ubuntu о том, как использовать чип TPM 2.0, и пытаюсь получить доступ к функциям TPM на установке Ubuntu 18.04.2 LTS Server. Тем не менее, я не могу найти правильный модуль ядра для загрузки.
К слову, Ubuntu установлена в режиме UEFI, и она работает в режиме безопасной загрузки.
При загрузке я вижу это в журналах:
berto@nuc:~$ dmesg | grep -i tpm
[ 0.000000] ACPI: TPM2 0x000000007B1C10F0 000034 (v04 INTEL NUC8i7BE 00000038 AMI 00000000)
[ 1.214149] tpm tpm0: Произошла ошибка TPM (378) при получении выделения tpm pcr
[ 2.649754] ima: Чип TPM не найден, активируем обход TPM! (rc=-19)
Поддерживается ли Intel PTT в Ubuntu? И если да, как я могу его включить?
Спасибо!
Мне помог великолепный Нетзиен, который помог мне расшифровать Ошибка TPM (378)
в вышеуказанных журналах dmesg
. В шестнадцатеричном формате 378 = 0x17A, что я смог найти в исходном коде ядра. Ядро в Ubuntu 18.04 не поддерживает эту команду TPM, но Ubuntu 18.10 с ядром 4.18.0 поддерживает! Я вижу /dev/tpm0
в Ubuntu 18.10. 🙂
При использовании 18.04, если вы включите интерфейс FIFO spi в конфигурации ядра CONFIG_TCG_TIS_SPI (не как модуль), это будет работать. Я также включил патч из здесь. Не забудьте отключить безопасную загрузку или подписать ваш образ.
Ответ или решение
Intel Platform Trust Technology на Ubuntu 18.04: Подробное руководство
Intel Platform Trust Technology (PTT) — это аппаратный механизм, встроенный в процессоры Intel, который выполняет функцию TPM (Trusted Platform Module). В этом руководстве мы рассмотрим, как активировать и использовать Intel PTT на системе Ubuntu 18.04.
Установка и окружение
На вашем Intel NUC (NUC8i7BEH) установлена Ubuntu 18.04.2 LTS Server с активированным UEFI и Secure Boot. Это важно, так как PTT работает на уровне BIOS/UEFI и может требовать дополнительных настроек для корректной работы с операционной системой.
Проверка совместимости
При загрузке системы, вы можете использовать команду dmesg
для проверки, распознает ли ядро TPM устройство. Ваша запись в dmesg
:
tpm tpm0: A TPM error (378) occurred get tpm pcr allocation
ima: No TPM chip found, activating TPM-bypass! (rc=-19)
Это указывает на проблему с доступом к нему устройства TPM, и в вашем случае может быть связано с ограничениями ядра, используемого с Ubuntu 18.04.
Объяснение проблемы
Ошибка TPM error (378)
указывает на то, что ядро, установленное в Ubuntu 18.04, не поддерживает некоторые команды TPM. Вы отметили, что использование Ubuntu 18.10 с ядром версии 4.18.0 решает эту проблему, поскольку файл /dev/tpm0
появляется в результате успешного распознавания устройства TPM.
Для решения проблемы на Ubuntu 18.04, вам необходимо включить FIFO SPI интерфейс в настройках конфигурации ядра, точнее, в CONFIG_TCG_TIS_SPI
. Это позволит активировать поддержку PTT.
Подробные шаги
-
Обновление системы:
Убедитесь, что ваша система актуальна, запустив:sudo apt update sudo apt upgrade
-
Настройка ядра:
ВключитеCONFIG_TCG_TIS_SPI
в конфигурации ядра, если вы компилируете ядро самостоятельно. Если вы не хотите компилировать ядро, рекомендуется рассмотреть установку Ubuntu 18.10 или более поздней версии, где поддержка TPM уже включена. -
Применение патча:
Патч, ссылку на который вы привели, может быть использован для исправления определенных проблем с ядром. Примените патч, следуя инструкциям в репозитории. Убедитесь, что вы отключили Secure Boot, если патч не подписан. -
Загрузка и проверка TPM:
После применения всех вышеперечисленных шагов, перезагрузите систему. Откройте терминал и введите:dmesg | grep -i tpm
Проверьте пуст ли список ошибок и появился ли
/dev/tpm0
. -
Установка необходимых утилит:
Если PTT активен, установите утилиты для работы с TPM:sudo apt install tpm2-tools tpm2-abrmd
-
Тестирование работы TPM:
После установки утилит, вы можете протестировать TPM, выполнив команду:tpm2_getrandom 8
Если команда завершится успешно и отобразит 8 байт случайных данных, это подтверждает, что TPM работает корректно.
Заключение
Использование Intel PTT на Ubuntu 18.04 возможно при правильных настройках ядра и конфигурации системы. После выполнения этих шагов вы сможете полностью использовать возможности TPM для повышения безопасности вашей системы. Если вы столкнетесь с дальнейшими трудностями, рекомендуем рассмотреть обновление до более новой версии Ubuntu, где поддержка PTT будет изначально включена.