某些版本的 Linux 代理與 統一可延伸韌體介面 (UEFI) 安全啟動 相容。
當安全啟動已啟動時,電腦防護的 Linux 核心會在載入每個核心模組之前檢查其 PKI 簽章。它不會載入未簽署的核心模組,也不會載入簽章無效的模組。這些代理功能會安裝核心模組:
- 惡意程式防護
- 網頁信譽評等
- 防火牆
- 完整性監控
- 入侵防護
- Application Control
因此,如果您想在安全啟動模式下使用這些功能,則必須在電腦的韌體中註冊來自趨勢科技的公鑰,以便它可以驗證那些核心模組簽名。
方法因平台而異:
下載趨勢科技的公鑰
在將它們註冊到安全啟動電腦之前,您必須先下載將用於驗證核心模組簽名的趨勢科技公鑰。公鑰以DER格式編碼。如果您在下載金鑰檔案時遇到問題,請右鍵點選並選擇Save Link As。
- DS2022.der SHA-256 憑證雜湊值:
BB FA 4A B8 3C 61 A0 3F 1D D0 4B A7 A4 51 75 E7 D7 EF D3 C8 4B F3 D9 FE A0 CE AB B9 2A F4 8E 92
- DS20_V2.der SHA-256 憑證雜湊值:
B3 36 43 7B 12 B3 EB 6A 4E 4A 44 62 40 4F 1F BD 21 32 70 77 4C 33 7D 1C 5A 58 7C 99 83 F7 30 C7
當代理程式部署在使用核心 5.3.18-24.34-default 或更高版本的 SuSE 15 上時,因為核心模組簽名的驗證方式已更改,需要
DS20_v2.der
。-
DS20.der SHA-256 憑證雜湊值:
CB 44 47 C8 76 CF 28 79 2F 8E B6 76 F1 42 4B D4 93 82 70 0E 46 92 ED 69 83 0C C3 52 E9 E4 71 03
-
DS12.der SHA-256 憑證雜湊值:
CB 44 47 C8 76 CF 28 79 2F 8E B6 76 F1 42 4B D4 93 82 70 0E 46 92 ED 69 83 0C C3 52 E9 E4 71 03
-
DS11_2022.der SHA-256 憑證雜湊值:
BB FA 4A B8 3C 61 A0 3F 1D D0 4B A7 A4 51 75 E7 D7 EF D3 C8 4B F3 D9 FE A0 CE AB B9 2A F4 8E 92
代理版本 11 的舊公鑰(
DS11.der
,SHA-1 雜湊值為 7D 96 56 5C 3A 77 B7 A7 24 49 D5 6A A5 0C 28 AA D7 3B 0B FB
)已於 2022 年 12 月 5 日過期。若要在此日期之後繼續使用代理,您必須註冊此新公鑰。否則,控制台中將出現「引擎離線」錯誤訊息,且電腦防護將無法運作。您還必須下載用於驗證趨勢科技公鑰簽名鏈所需的中繼憑證授權機構 (CA) 憑證。如果 Microsoft 更新了這些 CA 憑證,則您需要使用新的憑證。CA 憑證是以
DER 格式編碼的 X.509 v3 CRT 檔案。
- MicWinProPCA2011_2011-10-19.crt Microsoft Windows Production PCA 2011 SHA-256 憑證雜湊值:
E8 E9 5F 07 33 A5 5E 8B AD 7B E0 A1 41 3E E2 3C 51 FC EA 64 B3 C8 FA 6A 78 69 35 FD DC C7 19 61
- MicCorUEFCA2011_2011-06-27.crt Microsoft Corporation UEFI CA 2011 SHA-256 憑證雜湊值:
48 E9 9B 99 1F 57 FC 52 F7 61 49 59 9B FF 0A 58 C4 71 54 22 9B 9F 8D 60 3A C4 0D 35 00 24 85 07
- MicCorKEKCA2011_2011-06-24.crt Microsoft Corporation KEK CA 2011 SHA-256 憑證雜湊值:
A1 11 7F 51 6A 32 CE FC BA 3F 2D 1A CE 10 A8 79 72 FD 6B BE 8F E0 D0 B9 96 E0 9E 65 D8 02 A5 03
更新趨勢科技的公鑰
您將需要在某些情況下更新已註冊的用於簽署趨勢科技核心模組的公鑰。
-
您將代理程式升級到較新的主要版本在每次代理程式的主要版本發佈中(例如,代理程式 12.0 和 20.0),趨勢科技會更新用於安全啟動核心模組簽名的公鑰。新的核心模組簽名無法使用舊的公鑰進行驗證。因此,當您升級代理程式時,您也必須註冊新的公鑰。
-
公鑰已過期如果趨勢科技延長了產品的生命週期終止日期,趨勢科技將會創建一個新的公鑰以匹配新的生命週期終止日期。您需要將舊的公鑰替換為新的公鑰,然後升級代理程式。
注意
如果 Secure Boot 的公鑰因上述任何原因變得無效且您未更換它,則控制台中可能會出現引擎離線訊息,並且電腦防護將無法啟用。要讓 Deep Security Agent 20 使用安全啟動,必須註冊 DS2022.der、DS20_V2.der 和 DS20.der 金鑰。代理程式版本金鑰到期日註解20DS2022.der24-十一月-2031預計在到期日前一年發布新的替換金鑰。DS20.der2024-十一月-26DS20.der 將在到期後被 DS2022.der 取代。請確保在 DS20.der 到期之前註冊 DS2022.der。DS20_v2.der2026年十月24日 在 SuSE 15 5.3.18-24.34-default 之後需要適用於 SUSE 15 內核版本 5.3.18-24.34-default 之後。DS20_V2.der 將在到期後被 DS2022.der 取代。請確保在 DS20_V2.der 到期之前註冊 DS2022.der。12DS12.der2024-十一月-26DS12.der 將在到期後被 DS2022.der 取代。請確保在 DS12.der 到期之前註冊 DS2022.der。11DS11_2022.der24-十一月-2031DS11.der05-十二月-2022 -
Linux 核心模組簽章驗證已更改當您更新 Linux 核心時,它用來驗證核心模組簽名的方法可能會改變。這可能需要您更換已註冊的公鑰。例如,SuSE 15 在核心版本 5.3.18-24.34-default 中新增了擴展密鑰用法 (EKU) 代碼簽名驗證,這需要一個新的公鑰版本,
DS20_v2.der
。
註冊 AWS 的安全啟動金鑰
-
下載所需的CA 憑證和趨勢科技公鑰以進行安全啟動。
-
如果您沒有平台金鑰,請參閱 AWS 文件以生成安全啟動平台金鑰。只有在您可以訪問all devices that are loaded during boot的韌體(例如 GPU)時,才替換平台金鑰。如果您無法更新韌體的簽名鏈以使用您的新平台金鑰,那麼安全啟動可能會使實例永久無法啟動。
-
從支援安全啟動的 Linux 發行版 AMI 建立 EC2 虛擬機器實例。
-
在該實例的控制台中,安裝機器所有者密鑰 (MOK) 命令
mokutil
、uefivars
和 Python。例如,在 Red Hat Enterprise Linux 上,輸入以下命令:yum install mokutil yum install python3 curl -L -o uefivars.zip https://github.com/awslabs/python-uefivars/archive/refs/heads/main.zip unzip uefivars.zip
在 Debian 或 Ubuntu 上,輸入以下指令:sudo apt-get update sudo apt-get install efitools sudo apt-get install python3 curl -L -o uefivars.zip https://github.com/awslabs/python-uefivars/archive/refs/heads/main.zip unzip uefivars.zip
-
將 CA 憑證和趨勢科技公鑰上傳到該實例。
-
將每個平台金鑰、CA 憑證和趨勢科技公鑰放入 UEFI 簽章清單 (
.esl
) 檔案中。將它們合併成一個檔案,然後轉換成二進位 (.bin
) 格式。例如,根據您使用的趨勢科技公鑰,您可能會輸入以下命令:# Convert your platform key into signatures list format cert-to-efi-sig-list YOUR_PLATFORM_KEY.crt YOUR_PLATFORM_KEY.esl # Convert CA certificates sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output MS_CA_KEK.esl MicCorKEKCA2011_2011-06-24.crt sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output MS_CA_PROD.esl MicWinProPCA2011_2011-10-19.crt sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output MS_CA_UEFI.esl MicCorUEFCA2011_2011-06-27.crt # Convert Trend Micro public keys sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output TREND_UEFI_db_DS11.esl DS11_2022.der sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output TREND_UEFI_db_DS12.esl DS12.der sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output TREND_UEFI_db_DS20.esl DS20.der sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output TREND_UEFI_db_DS20_v2.esl DS20_v2.der sbsiglist --owner 77fa9abd-0359-4d32-bd60-28f4e78f784b --type x509 --output TREND_UEFI_db_DS2022.esl DS2022.der # Combine CA and vendor public keys into one signatures list cat MS_CA_PROD.esl MS_CA_UEFI.esl TREND_UEFI_db_DS11.esl TREND_UEFI_db_DS12.esl TREND_UEFI_db_DS20.esl TREND_UEFI_db_DS20_v2.esl TREND_UEFI_db_DS2022.esl > ALL_SIGNATURES_db.esl cp *.esl /root/ # Combine all and convert to binary ./python-uefivars-main/uefivars.py -i none -o aws -O YOUR_BINARY_SIGNING_CHAIN.bin -P ./YOUR_PLATFORM_KEY.esl -K ./MS_CA_KEK.esl --db ./ALL_SIGNATURES_db.esl
其中77fa9abd-0359-4d32-bd60-28f4e78f784b
是 Microsoft Corporation KEK CA 2011 憑證的SignatureOwner
欄位中的 GUID。 -
下載
.bin
檔案。 -
建立該實例的新 EC2 快照。
-
前往 AWS Cloudshell。選擇,然後選擇二進位檔案。
-
使用快照 ID 和您上傳的
.bin
文件創建一個新的 AMI。例如,您可以輸入以下命令:aws ec2 register-image --name LIFT-UBUNTU20SecureBootX64 --uefi-data $(cat YOUR_BINARY_SIGNING_CHAIN.bin) --block-device-mappings "DeviceName=/dev/sda1,Ebs= {SnapshotId={{YOUR-SNAPSHOT-ID}},DeleteOnTermination=true}" --architecture x86_64 --root-device-name /dev/sda1 --virtualization-type hvm --boot-mode uefi
-
使用自訂映像來建立已啟動安全啟動的新實例。
-
驗證金鑰是否已成功註冊到 MOK 清單中:
mokutil --db | grep Trend
並且核心已成功載入趨勢科技的公鑰:dmesg | grep cert
註冊 Google 雲端平台的安全啟動金鑰
-
下載所需的CA 憑證和趨勢科技公鑰以進行安全啟動。
-
如果您沒有平台金鑰,請參閱 Google 雲端平台文件以生成安全啟動平台金鑰。
警告
只有在您可以存取all devices that are loaded during boot (for example, the GPU).的韌體時才替換平台金鑰。如果您無法更新韌體的簽名鏈以使用您的新平台金鑰,那麼安全啟動可能會使該實例永久無法啟動。 -
建立 自訂虛擬機器映像檔,其中包含將由安全啟動使用的 CA 憑證和趨勢科技公鑰。例如,您可以輸入以下命令:
gcloud compute images create [IMAGE_NAME] \ --source-image=[SOURCE_IMAGE] \ --source-image-project=[SOURCE_PROJECT] \ --platform-key-file=YOUR_PLATFORM_KEY.der \ --signature-database-file=./MicCorUEFCA2011_2011-06-27.crt,./MicWinProPCA2011_2011-10-19.crt,./DS2022.der,./DS20_v2.der,./DS20.der,./DS12.der,./DS11_2022.der[,OTHER_EXISTING_KEYS] \ --guest-os-features=UEFI_COMPATIBLE
公鑰必須是 DER 或 BIN 格式。每個公鑰之間用逗號 (,
) 分隔。有關命令使用和 API 的詳細資訊,請參閱 Google 雲端平台文件。警告
當您輸入此命令時,請包含所有有效的現有安全啟動密鑰。此命令overwrites所有現有密鑰。如果您不包含它們,它們將被刪除,並且它們的核心模組將無法加載。 -
使用自訂映像來建立已啟動安全啟動的新實例。
-
驗證金鑰是否成功註冊:
grep 'Trend' /proc/keys
為 VMware vSphere 或實體電腦註冊安全啟動金鑰
秘訣如果許多電腦將使用安全啟動,則在完成此程序後創建虛擬機器或操作系統映像檔。新電腦可以從該檔案安裝。
|
注意如果電腦防護使用的是 UEK R6U3 之前的 Oracle Linux,請不要使用此程序。相反,請參閱 為 Oracle Linux 註冊安全啟動密鑰。
|
-
下載所需的CA 憑證和趨勢科技公鑰以進行安全啟動。
-
如果您沒有平台金鑰,請參閱您的 Linux 發行版文檔以生成安全啟動平台金鑰。
警告
只有在您能夠存取all devices that are loaded during boot (for example, the GPU).的韌體時才替換平台金鑰。如果您無法更新韌體的簽名鏈以使用您的新平台金鑰,那麼安全啟動可能會使電腦防護永久無法啟動。 -
在將啟用安全啟動的電腦防護上,安裝機器所有者密鑰 (MOK) 命令
mokutil
。例如,在 Red Hat Enterprise Linux 上,輸入以下命令:yum install mokutil
在 Debian 或 Ubuntu 上,輸入以下指令:sudo apt-get update sudo apt-get install efitools
-
將趨勢科技的公鑰新增到 MOK 清單。如果需要,請用空格分隔多個金鑰。例如:
mokutil --import /opt/ds_agent/DS2022.der /opt/ds_agent/DS20_v2.der /opt/ds_agent/DS20.der
當提示時,請輸入您稍後在此程序中將使用的密碼。 -
重新啟動電腦防護。
-
當電腦防護重新啟動時,Shim UEFI 金鑰管理控制台將會開啟。按任意鍵繼續。
-
在
執行 MOK 管理
畫面上,選擇註冊 MOK
。 -
選擇
檢視金鑰 X
如果您需要驗證公鑰的憑證雜湊值。按任意鍵返回到註冊 MOK
畫面。 -
在
註冊金鑰?
畫面上選擇繼續
。 -
選擇
是
,然後輸入您之前輸入的密碼。 -
在
The system must now be rebooted
畫面上,選擇OK
以確認您的變更並重新啟動。 -
驗證金鑰是否已成功註冊到 MOK 清單中:
- 在大多數作業系統上,輸入命令:
mokutil --test-key /opt/ds_agent/${certificate_file}.der
- 在 Debian 11 上,輸入指令:
keyctl show %:.platform | grep 'Trend'
- 在大多數作業系統上,輸入命令:
為 Oracle Linux 註冊安全啟動金鑰
在 Oracle Linux UEK R6 releases prior to UEK R6U3 上,安全啟動需要稍微不同的步驟。使用 Unbreakable Enterprise Kernel (UEK) 時,核心只會信任內建鍵環中的金鑰。因此,必須使用趨勢科技的公鑰重新編譯核心,並且由於這會更改核心本身,您還必須簽署新的核心啟動映像。
-
下載所需的CA 憑證和趨勢科技公鑰以進行安全啟動。
-
請參閱 Oracle Linux 文件中的 為安全啟動簽署核心映像和核心模組。
-
當您進行到 將模組憑證插入核心映像 的步驟時,請將
pubkey.der
替換為您趨勢科技公鑰的名稱。例如:sudo /usr/src/kernels/$(uname -r)/scripts/insert-sys-cert -s /boot/System.map$(uname -r) -z /boot/vmlinuz$(uname -r) -c ./DS20_v2.der
-
繼續完成剩餘步驟以簽署核心啟動映像。
-
驗證該金鑰是否列在
builtin_trusted_keys
金鑰環中:sudo keyctl show %:.builtin_trusted_keys | grep 'Trend'