ฉันกำลังพยายามทำตามบทช่วยสอนนี้ แต่ฉันใช้ Ubuntu 21.04:
https://run.tournament.org.il/ubuntu-20-04-and-tpm2-encrypted-system-disk/
เมื่อฉันรันคำสั่งที่สอง:
sudo tpm2_nvdefine -s 64 0x1500016
ฉันได้รับข้อผิดพลาด:
คำเตือน:esys:src/tss2-esys/api/Esys_NV_DefineSpace.c:337:Esys_NV_DefineSpace_Finish() ได้รับข้อผิดพลาด TPM
ข้อผิดพลาด: esys:src/tss2-esys/api/Esys_NV_DefineSpace.c:122:Esys_NV_DefineSpace() Esys เสร็จสิ้น ErrorCode (0x000009a2)
ข้อผิดพลาด: ไม่สามารถกำหนดพื้นที่ NV ที่ดัชนี 0x1500016
ข้อผิดพลาด: Esys_NV_DefineSpace(0x9A2) - tpm:session(1): การอนุญาตล้มเหลวโดยไม่มีผลกระทบจาก DA
ข้อผิดพลาด: ไม่สามารถสร้างดัชนี NV 0x1500016
ข้อผิดพลาด: ไม่สามารถเรียกใช้ tpm2_nvdefine
ฉันได้ลองแล้ว:
sudo tpm2_clear
ซึ่งส่งผลให้:
คำเตือน:esys:src/tss2-esys/api/Esys_Clear.c:291:Esys_Clear_Finish() ได้รับข้อผิดพลาด TPM
ข้อผิดพลาด: esys:src/tss2-esys/api/Esys_Clear.c:97:Esys_Clear() Esys เสร็จสิ้น ErrorCode (0x0000098e)
ข้อผิดพลาด: Esys_Clear(0x98E) - tpm:session(1): การตรวจสอบสิทธิ์ HMAC ล้มเหลวและตัวนับ DA เพิ่มขึ้น
ข้อผิดพลาด: ไม่สามารถเรียกใช้ tpm2_clear
ซึ่งทำให้ฉันดูสถานะ:
$ sudo tpm2_getcap คุณสมบัติตัวแปร | egrep 'TPM2_PT_(MAX|LOCKOUT).*'
TPM2_PT_LOCKOUT_COUNTER: 0x0
TPM2_PT_MAX_AUTH_FAIL: 0xA
TPM2_PT_LOCKOUT_INTERVAL: 0x1C20
TPM2_PT_LOCKOUT_RECOVERY: 0x1C20
ฉันได้ลองแล้ว:
sudo tpm2_dictionarylockout --setup-parameters --max-tries=4294967295 --clear-lockout
ซึ่งส่งผลให้เกิดข้อผิดพลาดที่คล้ายกัน:
คำเตือน:esys:src/tss2-esys/api/Esys_DictionaryAttackLockReset.c:288:Esys_DictionaryAttackLockReset_Finish() ได้รับข้อผิดพลาด TPM
ข้อผิดพลาด: esys:src/tss2-esys/api/Esys_DictionaryAttackLockReset.c:98:Esys_DictionaryAttackLockReset() Esys เสร็จสิ้น ErrorCode (0x00000921)
ข้อผิดพลาด: Esys_DictionaryAttackLockReset(0x921) - tpm:warn(2.0): ไม่อนุญาตให้อนุญาตสำหรับวัตถุที่อยู่ภายใต้การป้องกันของ DA เนื่องจาก TPM อยู่ในโหมดล็อกเอาท์ของ DA
ข้อผิดพลาด: ไม่สามารถเรียกใช้ tpm2_dictionarylockout
ฉันได้ลองคำสั่งแรกจากบทช่วยสอน tpm2-tools เกี่ยวกับการเข้ารหัสดิสก์แล้วที่นี่: https://tpm2-software.github.io/2020/04/13/Disk-Encryption.html
ซึ่งพูดว่า:
sudo tpm2_createprimary -Q -C o -c prim.ctx
และส่งผลให้เกิดข้อผิดพลาดที่คล้ายกัน:
คำเตือน:esys:src/tss2-esys/api/Esys_CreatePrimary.c:393:Esys_CreatePrimary_Finish() ได้รับข้อผิดพลาด TPM
ข้อผิดพลาด: esys:src/tss2-esys/api/Esys_CreatePrimary.c:135:Esys_CreatePrimary() Esys เสร็จสิ้น ErrorCode (0x000009a2)
ข้อผิดพลาด: Esys_CreatePrimary(0x9A2) - tpm:session(1): การอนุญาตล้มเหลวโดยไม่มีผลกระทบจาก DA
ข้อผิดพลาด: ไม่สามารถเรียกใช้ tpm2_createprimary
ฉัน google ข้อผิดพลาดเหล่านี้ทั้งหมด แต่ไม่พบคำอธิบายที่เข้าใจได้ มีข้อมูลมากมาย แต่มาจากเครื่องมือ tpm และ/หรือพารามิเตอร์ที่ไม่ถูกต้องทั้งหมด ดูเหมือนว่าคำสั่ง tpm2_* จะเปลี่ยนเร็วมาก!
นี่หมายความว่า TPM ของฉันถูกปิดใช้งานหรือถูกล็อกหรือไม่
ฉันสังเกตเห็นว่า tpm2_takeownership ไม่ได้อยู่ในแพ็คเกจ Ubuntu อีกต่อไป (และไม่ได้อยู่ใน 20.04 ด้วย) ดังนั้นวิธีแก้ไขปัญหาอื่น ๆ ที่ฉันพบในอินเทอร์เน็ตจะไม่ทำงาน (เว้นแต่ฉันจะติดตั้งจากแหล่งที่มา) แต่ฉันคิดว่านี่ไม่ได้คาดหวังหาก มันไม่ได้อยู่ในแพ็คเกจ
สิ่งอื่น ๆ (เช่น tpm2_pcrread) ไม่มีข้อผิดพลาด เป็นไปได้ไหมว่า TPM ของฉันอ่านได้แต่เขียนไม่ได้ ฉันจะรีเซ็ตได้อย่างไร หรือนี่เป็นการตั้งค่าของผู้ผลิตหรือสิ่งที่ฉันต้องทำใน BIOS เพื่อให้เขียนได้