🔹 第一階段:BIOS 設定
進入 BIOS:
✅ 開啟:
- TPM 2.0
- Secure Boot(建議開啟)
- UEFI 模式(不要 Legacy)
儲存離開。
🔹 第二階段:安裝 Rocky Linux 10(含 LUKS2)
用 Rocky Linux 10 ISO 開機。
在安裝畫面:
1️⃣ 選擇語言 → Installation Destination
2️⃣ Storage Configuration
選:
Custom
或
Automatic (然後勾選 Encrypt my data)
✅ 必須勾選:
Encrypt my data
3️⃣ 設定 LUKS 密碼
系統會要求設定:
👉 這個密碼非常重要
👉 這就是日後主機壞掉時的救援密碼
請妥善保存。
4️⃣ 建議分割方式(標準企業配置)
/boot (1GB, 不加密)
EFI (600MB)
/ (加密)
✅ root 分割區必須加密
5️⃣ 完成安裝並重開機
此時開機會:
👉 要求輸入 LUKS 密碼
(這是正常的)
🔹 第三階段:啟用 TPM 自動解鎖
登入 root。
✅ Step 1:安裝套件
dnf install -y clevis clevis-luks clevis-dracut clevis-systemd tpm2-tools
✅ Step 2:確認 TPM 存在
ls /dev/tpm*
應看到:
/dev/tpm0
/dev/tpmrm0
✅ Step 3:確認 LUKS 位置
lsblk -f
找到:
rl-root
然後確認版本:
cryptsetup luksDump /dev/mapper/rl-root | grep Version
必須是:
Version: 2
✅ Step 4:將 TPM 綁定到 LUKS
執行:
clevis luks bind -d /dev/mapper/rl-root tpm2 '{}'
會要求輸入:
👉 您安裝時的 LUKS 密碼
成功會顯示:
Successfully bound
✅ Step 5:重建 initramfs(非常重要)
dracut -f
這一步會把 clevis 打包進開機映像。
🔹 第四階段:測試
重新開機:
reboot
如果成功:
✅ 不會要求輸入密碼
✅ 自動開機
🔹 第五階段:測試備援
進 BIOS:
👉 暫時關閉 TPM
開機:
✅ 應要求輸入密碼
✅ 輸入後可進入系統
再重新開啟 TPM。
🔹 如果主機壞掉
把硬碟接到另一台 Linux:
cryptsetup luksOpen /dev/sdX rescue
輸入原本密碼即可。
TPM slot 會失效,但密碼 slot 還在 ✅
🔹最終安全架構
LUKS2
├─ Slot 0 → 密碼(備援)
├─ Slot 1 → TPM2 自動解鎖
🔹 安全等級說明
| 情境 | 結果 |
|---|---|
| 硬碟被偷 | 無法解鎖 ✅ |
| 主機被偷 | 可開機 ⚠ |
| 主機壞掉 | 可用密碼救援 ✅ |
🔹 進階強化(企業級)
如果您是(金融相關)
建議下一步:
- 加入 PCR 綁定
- 限制 Secure Boot 狀態變更即鎖死
- 設定 TPM policy
- 設定自動 recovery SOP
🔹您現在的狀況總結
✔ 已成功安裝
✔ 已啟用 LUKS2
✔ 結構正確
✔ 可以直接做 TPM 綁定