Amazon Linux 2023 の Microsoft Defender for Endpoint の手動オフボードを試してみる

Amazon Linux 2023 の Microsoft Defender for Endpoint の手動オフボードを試してみる

2025.08.04

Amazon Linux 2023 にインストールされた Microsoft Defender for Endpoint を手動でオフボーディングしてみました。オフボードにより、Microsoft Defender による監視が中止されます。
手動のオフボード手順は次の Microsoft Learn ドキュメントに記載があります。

本ブログでは下記ブログでオンボーディングした Amazon Linux 2023 に対して、オフボーディングしてみます。

https://dev.classmethod.jp/articles/defender-endpoint-amazon-linux-2023-install-manually/

オフボードの流れです。

  1. Microsoft Defender からオフボードパッケージを入手
  2. Amazon Linux 2023 からオフボード
  3. Microsoft Defender ポータルから対象マシンを除外

1. Microsoft Defender からオフボードパッケージを入手

始めに、Microsoft Defender ポータルからオフボードパッケージをダウンロードします。
Microsoft Defender ポータルにおける「システム」の「設定」から「エンドポイント」を選択します。

defender-endpoint-linux-offboard-manually-1

「デバイス管理」内の「オフボーディング」を選択します。オペレーションシステムは今回の対象である「Linux サーバー」を選択して、「パッケージをダウンロード」からダウンロードします。

defender-endpoint-linux-offboard-manually-2

オフボードパッケージのファイル名は WindowsDefenderATPOffboardingPackage_valid_until_2025-08-10.zip でした。オフボードパッケージには次のとおり、有効期限があることの注意書きがありました。7 日以内に対応する必要があります。

セキュリティ上の理由から、オフボーディング パッケージは作成されてから 7 日以内に有効期限が切れます。

ダウンロードしたオフボードパッケージを Microsoft Defender for Endpoint をインストールしているサーバにアップロードする必要があります。今回の検証の対象となる EC2 インスタンス(Amazon Linux 2023)が存在する AWS アカウント内の S3 バケットに事前にアップロードしておきます。後ほど、EC2 インスタンスからダウンロードして利用します。

defender-endpoint-linux-offboard-manually-3

なお、今回オフボードする Amazon Linux 2023 は Microsoft Defeder ポータルにおける次のデバイスです。

defender-endpoint-linux-offboard-manually-4

以降は、オフボーディングする Aamzon Linux 2023 上での操作です。

2. Amazon Linux 2023 からオフボード

Microsoft Defender for Endpoint がインストールされ、オンボード済みの Amazon Linux 2023 に SSM のセッションマネージャーで接続して作業します。

オフボーディング

始めに、下記コマンドで事前に S3 バケットにアップロードしておいたオフボードパッケージをダウンロードします。<S3_BUCKET_NAME> には S3 バケット名を指定します。

aws s3api get-object --bucket <S3_BUCKET_NAME> --key WindowsDefenderATPOffboardingPackage_valid_until_2025-08-10.zip WindowsDefenderATPOffboardingPackage_valid_until_2025-08-10.zip

実行結果例です。S3 バケット名はマスキングしています。

$ aws s3api get-object --bucket <S3_BUCKET_NAME> --key WindowsDefenderATPOffboardingPackage_valid_until_2025-08-10.zip WindowsDefenderATPOffboardingPackage_valid_until_2025-08-10.zip
{
    "AcceptRanges": "bytes",
    "LastModified": "2025-08-03T16:04:22+00:00",
    "ContentLength": 5507,
    "ETag": "\"25e428ee4808a4b54fe35afa47cc1a00\"",
    "ChecksumCRC64NVME": "55n+McS2N8k=",
    "ChecksumType": "FULL_OBJECT",
    "ContentType": "application/zip",
    "ServerSideEncryption": "AES256",
    "Metadata": {}
}

ダウンロードできていることを確認します。

$ ls -l
total 8
-rw-rw-r--. 1 ssm-user ssm-user 5507 Aug  4 07:55 WindowsDefenderATPOffboardingPackage_valid_until_2025-08-10.zip

下記コマンドで zip を解凍します。

unzip WindowsDefenderATPOffboardingPackage_valid_until_2025-08-10.zip

実行結果例です。

$ unzip WindowsDefenderATPOffboardingPackage_valid_until_2025-08-10.zip
Archive:  WindowsDefenderATPOffboardingPackage_valid_until_2025-08-10.zip
  inflating: MicrosoftDefenderATPOffboardingLinuxServer_valid_until_2025-08-10.py
$ ls -l
total 20
-rw-r--r--. 1 ssm-user ssm-user 8758 Aug  3 16:03 MicrosoftDefenderATPOffboardingLinuxServer_valid_until_2025-08-10.py
-rw-rw-r--. 1 ssm-user ssm-user 5507 Aug  4 07:55 WindowsDefenderATPOffboardingPackage_valid_until_2025-08-10.zip

オフボーディングする前の状態を確認しておきます。org_id が登録されており、helathytrue 状態です。

$ mdatp health --field org_id
"0a04cde7-58ed-4181-959exampleexample"
$ mdatp health --field healthy
true

下記コマンドでオフボードパッケージを実行します。

sudo python3 MicrosoftDefenderATPOffboardingLinuxServer_valid_until_2025-08-10.py

実行結果例です。

$ sudo python3 MicrosoftDefenderATPOffboardingLinuxServer_valid_until_2025-08-10.py
Generating /etc/opt/microsoft/mdatp/mdatp_offboard.json ...

実行後は org_id は空になり、helathyfalse 状態になりました。

$ mdatp health --field org_id
ATTENTION: No license found. Contact your administrator for help.
""
$ mdatp health --field healthy
ATTENTION: No license found. Contact your administrator for help.
false

mdatp のアンインストール

Microsoft Defender との関連付けが解除された mdatp をアンインストールします。アンインストール方法は次の Microsoft Learn ドキュメントに記載があります。

冒頭で紹介したブログでは上記のドキュメントを参考に mdatp をインストールしたため、アンインストールは同じページにある次のコマンドで実施することにします。

sudo yum remove mdatp

アンインストール前の list です。新しいバージョンがありましたが、このまま remove します。Microsoft のリポジトリを参照しようとして出力が途中で止まる場合は、一度 yum list を実行してから下記コマンド実行するとうまく表示されると思います。

$ yum list | grep mdatp
mdatp.x86_64                                                      101.25052.0007-1            @packages-microsoft-com-prod
mdatp.aarch64                                                     101.25062.0003-1            packages-microsoft-com-prod
mdatp.x86_64                                                      101.25062.0003-1            packages-microsoft-com-prod

アンインストールの実行結果例です。

$ sudo yum remove mdatp
Dependencies resolved.
==================================================================================================
 Package       Architecture   Version                  Repository                            Size
==================================================================================================
Removing:
 mdatp         x86_64         101.25052.0007-1         @packages-microsoft-com-prod         507 M

Transaction Summary
==================================================================================================
Remove  1 Package

Freed space: 507 M
Is this ok [y/N]: y
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                          1/1
  Running scriptlet: mdatp-101.25052.0007-1.x86_64                                            1/1
  Erasing          : mdatp-101.25052.0007-1.x86_64                                            1/1
  Running scriptlet: mdatp-101.25052.0007-1.x86_64                                            1/1
  Verifying        : mdatp-101.25052.0007-1.x86_64                                            1/1

Removed:
  mdatp-101.25052.0007-1.x86_64

Complete!

アンインストール後の list です。mdatp.x86_64 がインストールされていない状態となりました。

$ yum list | grep mdatp
mdatp.aarch64                                                     101.25062.0003-1            packages-microsoft-com-prod
mdatp.x86_64                                                      101.25062.0003-1            packages-microsoft-com-prod

Microsoft リポジトリの削除

次に、インストール時に利用した Microsoft リポジトリを無効化してみます。今回の環境では Production のリポジトリが利用していました。

$ yum repolist
repo id                                 repo name
amazonlinux                             Amazon Linux 2023 repository
kernel-livepatch                        Amazon Linux 2023 Kernel Livepatch repository
packages-microsoft-com-prod             Microsoft Production

下記コマンドでリポジトリを無効化できます。

sudo yum-config-manager --disable packages-microsoft-com-prod

実行結果例です。

$ sudo yum-config-manager --disable packages-microsoft-com-prod
$

リポジトリのリストから削除されていることを確認できました。

$ yum repolist
repo id                            repo name
amazonlinux                        Amazon Linux 2023 repository
kernel-livepatch                   Amazon Linux 2023 Kernel Livepatch repository

Microsoft の GPG 公開鍵の削除

最後に、下記ブログの手順でインストールする際にインポートした Microsoft の GPG 公開鍵を削除します。

https://dev.classmethod.jp/articles/defender-endpoint-amazon-linux-2023-install-manually/#microsoft-gpg-%25E5%2585%25AC%25E9%2596%258B%25E9%258D%25B5%25E3%2581%25AE%25E3%2582%25A4%25E3%2583%25B3%25E3%2583%259D%25E3%2583%25BC%25E3%2583%2588

下記コマンドで Microsoft の GPG 公開鍵を確認できます。

sudo rpm -q gpg-pubkey --qf '%{NAME}-%{VERSION}-%{RELEASE}\t%{SUMMARY}\n' | grep -i microsoft

下記コマンドで鍵を削除できます。

sudo rpm -e <PUBLIC_KEY>

一連の実行結果例です。3 つ目の公開鍵の確認コマンドでは、削除済みのため出力内容がない状態です。

$ sudo rpm -q gpg-pubkey --qf '%{NAME}-%{VERSION}-%{RELEASE}\t%{SUMMARY}\n' | grep -i microsoft
gpg-pubkey-be1229cf-5631588c    Microsoft (Release signing) <gpgsecurity@microsoft.com> public key
$ sudo rpm -e gpg-pubkey-be1229cf-5631588c
$ sudo rpm -q gpg-pubkey --qf '%{NAME}-%{VERSION}-%{RELEASE}\t%{SUMMARY}\n' | grep -i microsoft

オフボードパッケージの削除

必要に応じて、S3 からダウンロードして利用していたオフボードパッケージを削除します。

$ ls -l
total 20
-rw-r--r--. 1 ssm-user ssm-user 8758 Aug  3 16:03 MicrosoftDefenderATPOffboardingLinuxServer_valid_until_2025-08-10.py
-rw-rw-r--. 1 ssm-user ssm-user 5507 Aug  4 01:52 WindowsDefenderATPOffboardingPackage_valid_until_2025-08-10.zip
$ rm MicrosoftDefenderATPOffboardingLinuxServer_valid_until_2025-08-10.py
$ rm WindowsDefenderATPOffboardingPackage_valid_until_2025-08-10.zip
$ ls -l
total 0

3. Microsoft Defender ポータルから対象マシンを除外

オフボードパッケージを実行した後は、Microsoft Defender ポータルから対象サーバを除外してみます。オフボードした仮想マシンを選択して「除外する」を実行します。

defender-endpoint-linux-offboard-manually-5

「理由」は「非アクティブなデバイス」を選択して進めてみます。

defender-endpoint-linux-offboard-manually-6

最後の確認をして除外します。

defender-endpoint-linux-offboard-manually-7

次の案内があり、除外が完了しました。なお、除外しても「除外状態」のフィルターを変更すれば表示されます。

デバイスが脆弱性管理ビューとデータから完全に除外されるまでに最大 10 時間かかる場合があります。

defender-endpoint-linux-offboard-manually-8

さいごに

Amazon Linux 2023 にインストールされている Microsoft Defender for Enspoint を手動でオフボーディングしてみました。オフボードパッケージをダウンロードする画面においても説明されているのですが、手動でスクリプトを実行するのは、1 台から 10 台までの限られた数のデバイスで使用する場合が利用シーンとなるとのことです。他の方法については下記の Microsoft Learn のドキュメントに記載されていました。

以上、このブログがどなたかのご参考になれば幸いです。

この記事をシェアする

facebookのロゴhatenaのロゴtwitterのロゴ

© Classmethod, Inc. All rights reserved.