ビュー:
エージェント for Linuxの一部のバージョンは、互換性のあるUnified Extensible Firmware Interface (UEFI) セキュアブート
セキュアブートが有効になっている場合、コンピュータのLinuxカーネルは、各カーネルモジュールがロードされる前に、そのモジュールのPKI署名を確認します。署名のないカーネルモジュールや、署名が無効なモジュールはロードしません。次のエージェント機能により、カーネルモジュールがインストールされます。
  • 不正プログラム対策
  • Webレピュテーション
  • ファイアウォール
  • 変更監視
  • IPS
  • アプリケーションコントロール
したがって、セキュアブートでこれらの機能を使用する場合は、 トレンドマイクロの公開鍵これらのカーネルモジュールの署名を検証できるように、コンピュータのファームウェアに追加します。
方法はプラットフォームによって異なります。

トレンドマイクロの公開鍵をダウンロードする

セキュアブートコンピュータに登録する前に、カーネルモジュール署名を検証するために使用されるトレンドマイクロの公開鍵をまずダウンロードする必要があります。公開鍵は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製品版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.crtMicrosoft 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.crtMicrosoft 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およびトレンドマイクロなど) では、セキュアブートカーネルモジュールの署名の公開鍵が更新されます。新しいカーネルモジュールの署名は、古い公開鍵では検証できません。そのため、 エージェントをアップグレードする場合は、新しい公開鍵も登録する必要があります。
  • 公開鍵の有効期限が切れました
    トレンドマイクロがサポート終了日を延長する場合、トレンドマイクロは新しいサポート終了日に対応する新しい公開鍵を作成します。古い公開鍵を新しいものに置き換え、その後エージェントをアップグレードする必要があります。
    注意
    注意
    上記のいずれかの理由でSecure Bootの公開鍵が無効になり、それを交換しない場合、コンソールにEngine Offlineメッセージが表示され、コンピュータが保護されなくなる可能性があります。
    Deep Security エージェント 20がSecure Bootを使用するには、DS2022.der、DS20_V2.der、およびDS20.derキーを登録することが不可欠です。
    エージェントのバージョン
    キー
    有効期限
    注釈
    20
    DS2022.der
    2031年11月24日
    新しい交換キーは、有効期限の1年前にリリースされる予定です。
    DS20.der
    2024年11月26日
    DS20.derは有効期限が切れるとDS2022.derに置き換えられます。DS20.derの有効期限が切れる前にDS2022.derを登録してください。
    DS20_v2.der
    2026年10月24日 5.3.18-24.34-default以降のSuSE 15に必要
    5.3.18-24.34-default以降のSUSE 15カーネルに必要です。
    DS20_V2.derは有効期限が切れるとDS2022.derに置き換えられます。DS20_V2.derの有効期限が切れる前にDS2022.derを登録してください。
    12
    DS12.der
    2024年11月26日
    DS12.derは有効期限が切れるとDS2022.derに置き換えられます。DS12.derの有効期限前にDS2022.derを登録してください。
    11
    DS11_2022.der
    2031年11月24日
    DS11.der
    2022年12月5日
  • Linuxカーネルモジュールの署名検証が変更されました
    Linuxカーネルを更新すると、カーネルモジュール署名を検証する方法が変更される場合があります。これにより、登録された公開鍵を置き換える必要があるかもしれません。例えば、SuSE 15はカーネルバージョン5.3.18-24.34-defaultで拡張キー使用法(EKU)コード署名検証を追加し、新しい公開鍵バージョンDS20_v2.derが必要になりました。

AWSのセキュアブートキーの登録

  1. プラットフォームキーを持っていない場合は、AWS のドキュメントを参照して Secure Boot プラットフォームキーを生成 してください。プラットフォームキーを置き換えるのは、[all devices that are loaded during boot](例えば、GPU)のファームウェアにアクセスできる場合のみです。新しいプラットフォームキーを使用するようにファームウェアの署名チェーンを更新できない場合、Secure Boot によりインスタンスが永久に起動できなくなる可能性があります。
  2. セキュアブートをサポートするLinuxディストリビューションのAMIからEC2仮想マシンインスタンスを作成します。
  3. そのインスタンスのコンソールで、Machine Owner Key (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
  4. CA証明書とトレンドマイクロの公開鍵をインスタンスにアップロードします。
  5. プラットフォームキー、CA証明書、トレンドマイクロの各公開キーをUEFI署名リスト (.esl ) ファイルを選択します。それらを1つのファイルに結合し、バイナリファイルに変換します (.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-28f4e78f784bSignatureOwnerMicrosoft Corporation KEK CA 2011証明書のフィールド。
  6. ダウンロード.binファイル。
  7. インスタンスの新しいEC2スナップショットを作成します。
  8. [AWS Cloudshell] に移動します。選択[処理] [ファイル] [ファイルをアップロード]をクリックし、バイナリファイルを選択します。
  9. スナップショットIDを使用して新しいAMIを作成し、.binアップロードしたファイル。たとえば、次のコマンドを入力できます。
    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
  10. カスタマイズしたイメージを使用して、セキュアブートが有効な新しいインスタンスを作成します。
  11. キーがMOKリストに正常に登録されていることを確認します。
    mokutil --db | grep Trend
    カーネルがトレンドマイクロの公開鍵を正常にロードしたことを確認します。
    dmesg | grep cert

Google Cloud Platformのセキュアブートキーを登録する

  1. プラットフォームキーをお持ちでない場合は、Google Cloud Platformのドキュメントを参照してください。セキュアブートプラットフォームキーを生成する
    警告
    警告
    [起動時にロードされるすべてのデバイス (GPUなど)。] のファームウェアにアクセスできる場合にのみプラットフォームキーを交換する 新しいプラットフォームキーを使用するようにファームウェアの署名チェーンをアップデートできない場合、セキュアブートによってインスタンスが完全に起動できなくなる可能性があります。
  2. 作成カスタマイズされた仮想マシンイメージセキュアブートで使用される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 Cloud Platformのドキュメントを参照してください。
    警告
    警告
    このコマンドを入力するときは、既存の有効なセキュアブートキーをすべて含めます。このコマンドは、既存のすべてのキーを [上書き] します。これらを含めない場合、それらは削除され、カーネルモジュールはロードされません。
  3. カスタマイズしたイメージを使用して、セキュアブートが有効な新しいインスタンスを作成します。
  4. キーが正常に登録されたことを確認します。
    grep 'Trend' /proc/keys

VMware vSphereまたは物理コンピュータのセキュアブートキーの登録

ヒント
ヒント
多くのコンピュータでセキュアブートを使用する場合は、この手順の完了後に仮想マシンまたはOSイメージファイルを作成します。そのファイルから新しいコンピュータをインストールできます。
注意
注意
UEK R6U3より前のOracle Linuxを使用しているコンピュータの場合は、この手順を使用しないでください。代わりに、 Oracle Linux用のセキュアブートキーの登録
  1. プラットフォームキーがない場合は、Linuxディストリビューションのドキュメントを参照してセキュアブートプラットフォームキーを生成してください。
    警告
    警告
    [起動時にロードされるすべてのデバイス (GPUなど)。] のファームウェアにアクセスできる場合にのみプラットフォームキーを交換する 新しいプラットフォームキーを使用するようにファームウェアの署名チェーンをアップデートできない場合、セキュアブートによってコンピュータが完全に起動できなくなる可能性があります。
  2. セキュアブートを有効にするコンピュータで、コンピュータ所有者キー (MOK) コマンドをインストールします。mokutil。たとえば、Red Hat Enterprise Linuxでは、次のコマンドを入力します。
    yum install mokutil
    DebianまたはUbuntuでは、次のコマンドを入力します。
    sudo apt-get update
    sudo apt-get install efitools
  3. トレンドマイクロの公開鍵をMOKリストに追加します。複数のキー (必要な場合) はスペースで区切ります。例:
    mokutil --import /opt/ds_agent/DS2022.der /opt/ds_agent/DS20_v2.der /opt/ds_agent/DS20.der
    プロンプトが表示されたら、この手順で後に使用するパスワードを入力します。
  4. コンピュータを再起動します。
  5. コンピュータが再起動すると、Shim UEFIキー管理コンソールが開きます。続行するには、任意のキーを押してください。
  6. オンPerform MOK management画面、選択Enroll MOK
  7. 選択View key X公開鍵の証明書ハッシュを確認する必要がある場合。任意のキーを押すと、Enroll MOK画面に表示されます。
  8. 選択ContinueEnroll the key(s)?画面に表示されます。
  9. 選択Yesをクリックし、前に入力したパスワードを入力します。
  10. オンThe system must now be rebooted画面、選択OKをクリックして変更を確認し、再起動します。
  11. キーがMOKリストに正常に登録されていることを確認します。
    • ほとんどのオペレーティングシステムでは、次のコマンドを入力します。mokutil --test-key /opt/ds_agent/${certificate_file}.der
    • Debian 11では、次のコマンドを入力します。keyctl show %:.platform | grep 'Trend'

Oracle Linux用のセキュアブートキーの登録

Oracle Linux [UEK R6U3より前のUEK R6リリース]では、セキュアブートに必要な手順が若干異なります。 Unbreakable Enterprise Kernel (UEK) を使用すると、カーネルは組み込みのキーリングにあるキーのみを信頼します。このため、トレンドマイクロの公開鍵を使用してカーネルを再コンパイルする必要があります。これによりカーネル自体が変更されるため、新しいカーネルブートイメージにも署名する必要があります。
  1. のステップに到達したときカーネルイメージへのモジュール証明書の挿入、置換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
  2. 残りの手順を続行して、カーネルブートイメージに署名します。
  3. キーがbuiltin_trusted_keysキーリング:
    sudo keyctl show %:.builtin_trusted_keys | grep 'Trend'

Azureのセキュアブートキーを登録する

  1. Linuxディストリビューションイメージから作成されたSecure Bootをサポートする第2世代のAzure VMをお持ちの場合は、このVMが次の条件を満たしていることを確認してください:
    • セキュリティタイプは[Trusted launch virtual machines]として指定されています。
    • [Enable Secure Boot]セキュリティ機能が選択されています。
    世代 2 の Azure VM をお持ちでない場合は、次のように Secure Boot をサポートする Linux ディストリビューション イメージから作成してください
    • 世代2がサポートされているVMイメージを選択してください。
    • Azureポータルの[Create a virtual machine]ページに移動します。
    • [Security type]リストから[Trusted launch virtual machines]を選択します。
    • セキュリティ機能の設定で、[Enable Secure Boot]を選択します。
  2. Azure VMが停止していることを確認し、VMディスク名をメモしてください。
  3. ローカルまたはAzureのCloud Shellでaz loginコマンドを実行します。
  4. 次のスクリプトを一行ずつ実行して、共有アクセス署名 (SAS) URL を生成してください:
    read -p 'Your Subscription ID: ' subscriptionId
    read -p 'Your Resource Group Name: ' resourceGroupName
    read -p 'Your Disk Name for Exporting: ' diskName
    read -p 'Input the Expiry Duration for SAS URL in seconds (for example, 3600): ' sasExpiryDuration
    read -p 'Your Storage Account Name to Hold this VHD file: ' storageAccountName
    read -p 'Your Storage Container Name: ' storageContainerName
    read -p 'Your Storage Account Key: ' storageAccountKey
    read -p 'Your Destination VHD File Name: ' destinationVHDFileName
    az account set --subscription $subscriptionId
    sas=$(az disk grant-access --resource-group $resourceGroupName --name $diskName --duration-in-seconds $sasExpiryDuration --query [accessSas] -o tsv)
    az storage blob copy start --destination-blob $destinationVHDFileName --destination-container $storageContainerName --account-name $storageAccountName --account-key $storageAccountKey --source-uri $sas
  5. 次のファイルの内容をコピーして、CreateSIGFromOSvhdWithCustomUEFIKey.jsonとして保存してください:
    {
        "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json",
        "contentVersion": "1.0.0.0",
        "parameters": {
            "galleryName": {
                "defaultValue": "{{ change to custom gallary name for the deployed template }}",
                "type": "String",
                "metadata": {
                    "description": "Name of the gallery"
                }
            },
            "imageDefinitionName": {
                "defaultValue": "{{ change to custom image definition name }}",
                "type": "String",
                "metadata": {
                    "description": "Name of the image definition"
                }
            },
            "versionName": {
                "defaultValue": "{{ change to custom image version }}",
                "type": "String",
                "metadata": {
                    "description": "Name of the image version"
                }
            },
            "storageAccountName": {
                "defaultValue": "{{ change to custom storage account name contains the exported OS vhd }}",
                "type": "string",
                "metadata": {
                    "description": "Storage account name containing the OS vhd"
                }
            },
            "vhdURI": {
                "defaultValue": "{{ change to custom vhd URL of the exported OS vhd }}",
                "type": "String",
                "metadata": {
                    "description": "OS vhd URL"
                }
            },
            "imagePublisher": {
                "defaultValue": "{{ change to custom image publisher name }}",
                "type": "String",
                "metadata": {
                    "description": "Publisher name of the image"
                }
            },
            "offer": {
                "defaultValue": "{{ change to custom image offer name }}",
                "type": "String",
                "metadata": {
                    "description": "Offer of the image"
                }
            },
            "sku": {
                "defaultValue": "{{ change to custom image sku name }}",
                "type": "String",
                "metadata": {
                    "description": "Sku of the image"
                }
            },
            "osType": {
                "defaultValue": "Linux",
                "allowedValues": [
                    "Windows",
                    "Linux"
                ],
                "type": "String",
                "metadata": {
                    "description": "Operating system type"
                }
            },
            "gallerySecurityType": {
                "defaultValue": "TrustedLaunchSupported",
                "type": "String",
                "allowedValues": [
                    "TrustedLaunchSupported",
                    "TrustedLaunchAndConfidentialVMSupported"
                ],
                "metadata": {
                    "description": "Gallery Image security type"
                }
            },
            "customDBKeyDS20": {
                "defaultValue": "MIIFtjCCA56gAwIBAgIJAMeeWqgc+/HdMA0GCSqGSIb3DQEBCwUAMGsxGjAYBgNVBAoMEVRyZW5kIE1pY3JvLCBJbmMuMSUwIwYDVQQDDBxUcmVuZCBNaWNybyBEZWVwIFNlY3VyaXR5IDEyMSYwJAYJKoZIhvcNAQkBFhdjc3VwcG9ydEB0cmVuZG1pY3JvLmNvbTAeFw0xODExMjgwNzE5NTBaFw0yNDExMjYwNzE5NTBaMGsxGjAYBgNVBAoMEVRyZW5kIE1pY3JvLCBJbmMuMSUwIwYDVQQDDBxUcmVuZCBNaWNybyBEZWVwIFNlY3VyaXR5IDEyMSYwJAYJKoZIhvcNAQkBFhdjc3VwcG9ydEB0cmVuZG1pY3JvLmNvbTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANwAWo6ZMy6uJOY7J0rpKjTaaN/C5iJA3Aotgw/CtZj5rOVzYQat3cpnOjTdJzemD/LAvzclzmYR3CP+3xkZ/nOH3W8QDEYBXvjYcBhwdwsttSkBdA1oQb97kBXJwV3izHwGucIYnDQNCwxXZ8dts/YqdNjlqp1Dih/89pVTsu0t+rLx7kM6f3jFCh3D9mLuPXNBb6kTdSRyipJ7KZqHJp0bRRwgm/RC70z7M+rC9n2AJAgVb3qUFwe54G1GfbqKOsrJpnJdHdUIZtggNYMMjZWxA6vwhsbcKC4t5mTkn9nmL6lBcTWO7dEJe58ireScTv8PbuZ/KFu7oAYqaeAICmiDFc2P2qrqkDxNjDkYOvV3RjPpygoxf5KDyYzIisz2CHco6kyXStlIQSWUUnj4FAABTE5702rIMt8hF/EoPk1jFFVNUMVFEzygLob3eNOS2xZgVgCTDx8JqLzIn92BHCVhXQz4aLX4xjIjTrZGe7FLwhbVc3jVBGuT4RTU9LoXS482oDICPGoitMqlMBTNQG3Ktwk2ExFDJ09vU94snMNlwBmQPyr/G5Zz+Fn+XRg7BzqdiIKkekCtGPzeyxrFs3eBByFYflPbQXRfqZjAyLGpSzHHV/hCYIUmJjI/IeZ9tP9zf7eHEhhE435lJGvxD1n3y2Fh3a05tKB64EcBq+DRAgMBAAGjXTBbMAwGA1UdEwEB/wQCMAAwCwYDVR0PBAQDAgeAMB0GA1UdDgQWBBRXOdWLbdwOa9iq0lvno8i2r3vcIzAfBgNVHSMEGDAWgBRXOdWLbdwOa9iq0lvno8i2r3vcIzANBgkqhkiG9w0BAQsFAAOCAgEAGxCfUzZIDwQAZppQ0/6rjS5K/S5PUHf7n2fQq+/c52SV3G7mwNdEODWAodDqzoqlKaJMUuyOlYxAX0J/EC8BB+OatDJDiu5pwA0p8JuJrt6+CJOIIraVwRmcRCmVEz4VZhtrTx9KpJFW5ryoFX21Nc4M8HCu6jxN++D8hhd/xQG2CHVr9jr0w7dl+BoYdguB6urfAtHxh+t+iSer+BhEDeu6hLLV+yLM7xpRMr3c+So5/drFwXAdMvKYs4w+zPOZOox7EQ1x6qwepH1vvv4yP0c7uRVnty+o/Uh3/NDz9x5y+5NBVHELWbThX1hMUX/PfJ6ZLm/FB+wnUt1E3fj4t9/W9yVD8NfOAlsedl/FaJ0NrTGUAJPGAyT7NLp73D4Yge3A9Y2cebuFDhxy7ilQxnrIRbn4IpArE/pl8jP7f+QswPrbmXL5Be7oLIiCY6O3kT2EV+kaY5dcKcGiS2CSwoJYMudwDm4KU10XY7qYftGONn0uZ018iC2OBoAjFKyk1QMyWRMcA3CyxOFGkFIpzM5jhjqMdQTurBvGRY8mqYsD3j+17AV/HfJ92x5K3L0x0wttiO9Z90Z5Mz3Z0QtsNk/VlZH80Fl2byLMt+O6dnsh+0tAXiga5cT7V2opq1HFHD3vc3n644wrt7bsR9Ns+uWL3VqD8rN3VOCN+ehgInU=",
                "type": "String",
                "metadata": {
                    "description": "Custom UEFI DB DS20.der in base64 format"
                }
            },
            "customDBKeyDS20V2": {
                "defaultValue": "MIIFyzCCA7OgAwIBAgIJAOqCjczOdriRMA0GCSqGSIb3DQEBCwUAMGsxGjAYBgNVBAoMEVRyZW5kIE1pY3JvLCBJbmMuMSUwIwYDVQQDDBxUcmVuZCBNaWNybyBEZWVwIFNlY3VyaXR5IDIwMSYwJAYJKoZIhvcNAQkBFhdjc3VwcG9ydEB0cmVuZG1pY3JvLmNvbTAeFw0yMDExMjQwOTIzNTFaFw0yNjEwMjQwOTIzNTFaMGsxGjAYBgNVBAoMEVRyZW5kIE1pY3JvLCBJbmMuMSUwIwYDVQQDDBxUcmVuZCBNaWNybyBEZWVwIFNlY3VyaXR5IDIwMSYwJAYJKoZIhvcNAQkBFhdjc3VwcG9ydEB0cmVuZG1pY3JvLmNvbTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK5e7V+I80gksQSQR74uxAZylIdKaLVqBob/J6Fbca8zt7pdxCLeebu6S3yT0DRiaS5UslWO21v9q09cuqd0GoDCCaImNdMpCfTB91OZf9t3gHili0cTUyzkktT8n4g2/xw2mzoXBrm5PvX2psCFwBFh3FE7Mb5VgeA/Bh8uz7jpV9+7+TjouHQ9DXgV2dIDD2QacvtvaGyFqssNLKoKOnEm6+7o0/Cl/9eIzJT0YKzqS2BFY13ANHVTJieNVrfl9dIu1XxU7ABQ8LOVI835CAIJGJyYtIhnu2bCei7AGZzPYP7Way7djOvmG+2t+NopIE/RMTknsn3NQMJtrUi4oJOAwI36z8dMDBASUUCpglK12C9z6vHelNrE4z/tiUFYei2OBsLB/yNP9HloVDq4CMvcrZzwWbUtxmtcbTIW/uU1LOsqV92aHIMA3ZivLvvAPvlr4/8NltTvEy5N/CsxUxAeC21AbE9OXDyyE/9C+VB16YvrqQIEm5IW1Q0/fmmO6rBwy3Uu+4vZcUkq0QbOji/XcNbu17Cfg5fMuuLKu7kwqtl0JZxhZ0XBNdmhOL+XfwrZbZvCqXIKFZo1QsXsbFIoiOWVakXDonUTLPLJX5n5/7iIrw7hiUViPvTrkAUSjUm5OIu1p+hkKjGDHehdU4XX2bv9rrLAh3vIKxQSCTdlAgMBAAGjcjBwMAwGA1UdEwEB/wQCMAAwCwYDVR0PBAQDAgeAMBMGA1UdJQQMMAoGCCsGAQUFBwMDMB0GA1UdDgQWBBQ50RP6qbc9bEOp0jufVa+TgZWLlzAfBgNVHSMEGDAWgBQ50RP6qbc9bEOp0jufVa+TgZWLlzANBgkqhkiG9w0BAQsFAAOCAgEAXBhNUgJeKlB/ZwwsIjJsGXa9IPczWfTklg85hZILCT5Khcxl36zs6AEdtbW5pjV/hN+bV5LD84ZHoAa76ib4iHdU5nK4Q35AhWFdXMTCjg5bm78lESkyC7vLIjj1ITy2K3k+CgZosDXSe9V77AIN43+R4wwqbsI/FEuXmLw8UHW1DSQphjzcNGXAdbJVXhGoYLLBpyZ/OSFqhcqWwTtHZukrivtfix8fAQZ1GvfPZA0NlseXbSh883aERqwgP/etvdkUFuby0P66YTSaGZ4Dc9Q5NB4sJ+W/GcSz7Tnn2cF/hZor9ErjC+AUD0nvhn0IaJxzcCpz53XjFD8K/XeHVpBP8FqHFCoh7Ro4WcYBFR+DfoCc9Xq6tovWFZlcokybM7AmYw3DDisclkfMZFmhxi+yZQ6fmN9evVp2g7X/+w+hHrV38pnpz323186ALqSXShBPqG3HcQRvjdnS1Ve1nS8UKvy+ae+0+TKR9KTD+jQsL9daW4NfaSaBetFmdnbuNRIlKXscgoSne+Qi3YhtI93BoOnfpxEbWB4sWnSHkDO9iekSa42tabtCaY1d1MHxdYtdEBb1Gx5aWl8CmsZoWB0xRrk1NG7S8Mi+ux/2LiOfECkm1mpzaUY0w4dKfTT7/YeVAm1zgumWX+T0dsDc5Sc3t7AxiLHSmTxtYphFT4c=",
                "type": "String",
                "metadata": {
                    "description": "Custom UEFI DB DS20_V2.der in base64 format"
                }
            },
            "customDBKeyDS2022": {
                "defaultValue": "MIIFzzCCA7egAwIBAgIJAIfzdTk2xdt2MA0GCSqGSIb3DQEBCwUAMG0xGjAYBgNVBAoMEVRyZW5kIE1pY3JvLCBJbmMuMScwJQYDVQQDDB5UcmVuZCBNaWNybyBEZWVwIFNlY3VyaXR5IDIwMjIxJjAkBgkqhkiG9w0BCQEWF2NzdXBwb3J0QHRyZW5kbWljcm8uY29tMB4XDTIxMTEyNjA2MzI0OVoXDTMxMTEyNDA2MzI0OVowbTEaMBgGA1UECgwRVHJlbmQgTWljcm8sIEluYy4xJzAlBgNVBAMMHlRyZW5kIE1pY3JvIERlZXAgU2VjdXJpdHkgMjAyMjEmMCQGCSqGSIb3DQEJARYXY3N1cHBvcnRAdHJlbmRtaWNyby5jb20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCWb6JAyvw0PoMfHEMoBtj3hsRS8q5TPFoa6vDrAOcJZf0MTw3NZjlbnNzVP/Ri4J5DGpOWDXLte0ngugtdAG+w3y8UY8K2agEq1ehGIB3iUz45zPqDiQWs/huafj96q9FzNlWkLJT+M0E2l0qpNJ9NlyphbQ+cnccm1fHrNOMNtEbm31nW4DVD9VyB7BFf4NRS2h4FiDjRqUTAREMfk84MReQNEP98kPZLXR3ajE4MTZztYF6INR68nK9Jzig/vJjMRpMwFp+VkQaFnbiti6hbfRjS/GbCW62aJJCTHEavbyJKKY1+MRG406lYVlpH632iyvHfj2ni+B7lLvfi5qag+27mX+rBxlqLGuiwNu0geGv5GTlmDyx2onNWRz1akk5GJUloY2xG9ak92o6WsnDdJCXlFHytPc0R+FleZ/nNNpyzPYr1V8pqWenk+wpVcA7BsuRHofWYzut98GkjGYWXXjsipaDt1V2tTKNexFgzMCUIi/tJGmUe3U6czS4zk3tXiTq2Z3kZvrV59nRWJ+QEdax0ICNZH6AEqNNajgvcvP9WcZmOtgozNxoJuQrCETMKcPQ+JgLbSAiZU7zLIp1z7XF358G7Azu/AGFpJ0orSpZ9f2J7f1WQ8CsHUgz9KISw6P7b8j160CCEbLBxcRnORCGSeVpO5tdKt4a7oil5wwIDAQABo3IwcDAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUnbil6RHtl1sidPNZk/35mq9EaWAwHwYDVR0jBBgwFoAUnbil6RHtl1sidPNZk/35mq9EaWAwDQYJKoZIhvcNAQELBQADggIBADsauvVNB9jPnlkOJY48eayLDfDN6JMriDA8Q0s0X9EZtTBMcRSNGIQjtyr4LOCOMNrUGMG2XFKHa8S17QYtcFM/2Y+t7aOilSTokWTkwC9jU1XBESH7fV44d/fYEO5yD3LBYw5BIEgSqJg39rdWWWOD6N1CGRwH3SZwT1aeDj7+YqCYXIUFR/jUm6SXyenoxIlSkn6Ymf3Pil3GtnqqxW1+VfkL6YOa715/3ZxqdWfvf1ArUL0spEtQEm4yHwdCuhPWbIG1RKejSFSLk92B/RdxqvYXiCxZ5SLziOLslvW0s48LrQ0TEr/HWhiuJ2Q//NSSCllUYy9f6CwXnW38xml+zZu/I8qJ5smI19JfO77HeRGACNSp2GC/C2mamLb1dSXSDKG6YomcrEFSO9oll/gfi6hwCw5Lx21/dD2SBjKMnwBYGRvDsovE2BQ26GnzvKQbJZW+kN6s5Gi3L0C56kSLLZUFJUxkKFN2//Qyu0cMC0oeecr+CYDxAHD2FMf4HGJAAScnk9mcEhxYs+B2IW/nCaRjbYvUg1LdaOR9oCXH14rh+FJ9DZmR84ia/YArHOJXSX/ziy0ftePgAGqQBmHNIPDA0TSGUYg/P5fcfYTT2bKO6lV/uXiqmDQuuCm1ietUpaTAJ0kWdDxhDzJem+N1qABRpuT93xbaapiX3199",
                "type": "String",
                "metadata": {
                    "description": "Custom UEFI DB DS2022.der in base64 format"
                }
            }
        },
        "variables": {
            "linuxSignatureTemplate": "MicrosoftUefiCertificateAuthorityTemplate",
            "windowsSignatureTemplate": "MicrosoftWindowsTemplate"
        },
        "resources": [
            {
                "type": "Microsoft.Compute/galleries",
                "apiVersion": "2022-01-03",
                "name": "[parameters('galleryName')]",
                "location": "[resourceGroup().location]",
                "tags": {
                    "AzSecPackAutoConfigReady": "true"
                },
                "properties": {
                    "identifier": {}
                }
            },
            {
                "type": "Microsoft.Compute/galleries/images",
                "apiVersion": "2022-08-03",
                "name": "[concat(parameters('galleryName'), '/', parameters('imageDefinitionName'))]",
                "location": "[resourceGroup().location]",
                "dependsOn": [
                   "[resourceId('Microsoft.Compute/galleries', parameters('galleryName'))]"
                ],
                "tags": {
                    "AzSecPackAutoConfigReady": "true"
                },
                "properties": {
                    "hyperVGeneration": "V2",
                    "architecture": "x64",
                    "osType": "[parameters('osType')]",
                    "osState": "Generalized",
                    "identifier": {
                        "publisher": "[parameters('imagePublisher')]",
                        "offer": "[parameters('offer')]",
                        "sku": "[parameters('sku')]"
                    },
                    "features": [
                        {
                            "name": "SecurityType",
                            "value": "TrustedLaunchSupported"
                        }
                    ],
                    "recommended": {
                        "vCPUs": {
                            "min": 1,
                            "max": 16
                        },
                        "memory": {
                            "min": 1,
                            "max": 32
                        }
                    }
                }
            },
            {
                "type": "Microsoft.Compute/galleries/images/versions",
                "apiVersion": "2022-08-03",
                "name": "[concat(parameters('galleryName'), '/',parameters('imageDefinitionName'),'/', parameters('versionName'))]",
                "location": "[resourceGroup().location]",
                "dependsOn": [
                   "[resourceId('Microsoft.Compute/galleries/images', parameters('galleryName'), parameters('imageDefinitionName'))]",
                   "[resourceId('Microsoft.Compute/galleries', parameters('galleryName'))]"
                ],
                "properties": {
                    "publishingProfile": {
                        "targetRegions": [
                            {
                                "name": "[resourceGroup().location]",
                                "regionalReplicaCount": 1
                            }
                        ]
                    },
                    "storageProfile": {
                        "osDiskImage": {
                            "hostCaching": "ReadOnly",
                            "source": {
                                "uri": "[parameters('vhdURI')]",
                                "storageAccountId": "[resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccountName'))]"
                            }
                        }
                    },
                    "securityProfile": {
                        "uefiSettings": {
                            "signatureTemplateNames": [
                               "[if(equals(parameters('osType'),'Linux'), variables('linuxSignatureTemplate'), variables('windowsSignatureTemplate'))]"
                            ],
                            "additionalSignatures": {
                                "db": [
                                    {
                                        "type": "x509",
                                        "value": [
                                            "[parameters('customDBKeyDS20')]"
                                        ]
                                    },
                                    {
                                        "type": "x509",
                                        "value": [
                                            "[parameters('customDBKeyDS20V2')]"
                                        ]
                                    },
                                    {
                                        "type": "x509",
                                        "value": [
                                            "[parameters('customDBKeyDS2022')]"
                                        ]
                                     }
                                ]
                            }
                        }
                    }
                }
            }
        ]
    }
  6. "parameters"セクションのCreateSIGFromOSvhdWithCustomUEFIKey.jsonファイル内の{{ }}の値を置き換え、次の点に留意してください:
    • 前述のCreateSIGFromOSvhdWithCustomUEFIKey.jsonファイルはカスタムデプロイメントの例です。DS20.derDS20_v2.der、およびDS2022.derはすでにBase64形式で記入されています。
    • 別の公開鍵をテンプレートに登録するには、次のコマンドを使用して鍵をBase64形式に変換し、その後JSONファイルに鍵を追加してください
      openssl base64 -in <Trend_Micro_public_key> -A
  7. Azure CLIを使用してテンプレートデプロイメントによって共有イメージギャラリー (SIG) イメージを作成するには、次のようにします
    az deployment group create --resource-group <resource-group-name> --template-file
          CreateSIGFromOSvhdWithCustomUEFIKey.json
  8. カスタムデプロイメントイメージでAzure VMを作成します。
  9. 次のコマンドを実行して、キーがMachine Owner Key (MOK) リストに正常に登録されていることを確認してください:
    mokutil --db | grep Trend
  10. カーネルがトレンドマイクロの公開鍵を読み込んだことを確認するには、次のコマンドを実行してください:
    dmesg | grep cert
詳細については、セキュアブートUEFIキーを参照してください。