Azure Arc 対応サーバーを安全に使うための Tips

>100 Views

March 15, 25

スライド概要

Windows Server & Cloud User Group Japan 第45回勉強会の資料です。
Azure Arc の Machine Connected Agent をより安全に使うための Tips について紹介します。

profile-image

インフラエンジニア

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

Azure Arc 対応サーバーを 安全に使うための Tips SCUGJ (wSCUGJ) 勉強会 #45 2025-03-15 Kazuki Takai Windows Server & Cloud User Group Japan

2.

自己紹介 • たかい (Kazuki Takai) // X(旧 Twitter)@zhuky7 • 会社員 (某ISP勤務) • サービス基盤開発、技術調査・技術開発、ライセンス関連 • wSCUGJ (Windows Server & System Center User Group Japan) • Active Directory 勉強会 • 興味分野:統合管理、ID、自動化、セキュリティ、監視・運用 • Microsoft MVP - Cloud and Datacenter Management / Microsoft Azure • @IT:Windows Server 2025 連載

3.

注意点 • 本セッションではプレビュー版の機能に関する内容が含まれます • 機能については現状の動作から変更となる可能性があります • 最新の仕様、動作、状況は Microsoft Learn のドキュメントや Microsoft の Blog、Tech Community などをご確認ください • 求められるセキュリティはシステムによって異なります • システムやビジネスを理解したうえで適切な対応を行いましょう

4.

要約(重要なポイント) • Azure Connected Machine エージェントは可能 な限り最新版を利用しましょう • 最小特権の原則を守りましょう • 必要なら、 Connected Machine エージェントを ロックダウンしましょう

5.

おさらい : Azure Arc とは • マルチクラウド・ハイブリッドクラウド環境に対 するマイクロソフトのビジョンを実現するための 一連のサービス・機能・ソリューション群 • Azure の管理性とソリューションを Azure の外部 に対して提供する

6.

おさらい : Azure Arc が実現するもの マルチクラウド環境、ハイブリッド環境においても ① Azure と同等の管理機構を利用できるようにし、 一元的な管理を実現する ② Azure を利用するのと同様にアプリケーション を開発し展開、利用できる

7.

おさらい : Azure Arc の様々な機構 • Azure Arc-enabled servers • Azure Arc-enabled Kubernetes • SQL Server enabled by Azure Arc • Azure Arc-enabled private clouds • VMware vSphere / System Center Virtual Machine Manager / Azure Local • Multicloud connector enabled by Azure Arc • Amazon Web Services / Google Cloud / Oracle Cloud • Azure Arc-enabled data services • SQL Managed Instance / Azure Arc-enabled PostgreSQL • AKS enabled by Azure Arc • Azure Container Apps on Azure Arc • Azure IoT Operations – enabled by Azure Arc • Azure Arc site manager

9.

Azure Arc-enabled servers • Azure Arc 対応サーバー • Azure 以外の場所で稼働しているサーバーに対して Azure の管理性を提供するための仕組み • マルチ OS 対応(Windows / Linux) • ハードウェア非依存(物理サーバー / 仮想マシン) • 場所非依存(Azure へのネットワーク接続性のみ)

10.

Azure Arc 対応サーバーの全体像 Extended Security Updates (ESU) SQL Server enabled by Azure Arc Best practices assessment Dashboards Microsoft Defender for Cloud Microsoft Sentinel Custom Script extension Azure Policy Log Analytics Migration assessment Microsoft Defender for Cloud Azure Monitor Azure Key Vault Azure Automation OpenSSH for Windows Entra ID based SSH for Linux Datadog Agent Arc-enabled servers Extensions Arc-enabled VMware vSphere Arc-enabled SCVMM Azure Local 1st party Arc integration Azure Arc Jumpstart Gems より引用

11.

Azure Arc 対応サーバーの仕組み • 対象のサーバーを Azure 上のリソースへ写像 • 対象のサーバーにエージェントをインストール • Azure Connected Machine エージェント • 対象のサーバーを表すリソースオブジェクトを生成 • Azure の各種管理サービスからは写像されたリソース に対して管理操作を実施

12.

Connect Machine エージェント • Azure Arc 対応サーバーのエージェント • サーバーの情報を Azure へ送信 • 一部の情報は Azure Monitor エージェント(AMA)が収集・送信 • Connected Machine エージェントから AMA のインストールが可能 • Azure(コントロールプレーン)からの操作、変更を適用 • 複数のサービス(デーモン)・役割で構成 • 後述 • 管理対象となるサーバーへインストール • Windows 用インストーラー(msi) • Linux 用パッケージ(rpm / deb)

13.

Azure への接続・登録(オンボード) • Connected Machine エージェントのインストール後、Azure へ の接続・登録(オンボード)が必要 • エージェント側から Azure のエンドポイントへ接続 • HTTPS(宛先ポート 443/tcp Outbound) • オンボードには、適切な資格情報が必要 • トークン / デバイスコード / サービスプリンシパル(シークレット) • オンボードにより Azure 側で Arc リソースが作成され、管理対 象として取り扱い可能となる

14.

エージェントのアーキテクチャー Azure 管理インタフェース Azure Arc Jumpstart Gems より引用 + 独自翻訳 管理者 Azure Arc Connected Machine Agent エージェントに提供される構成情報 : • サブスクリプションとリソースグループ • メタデータを保存する Azure リージョン • ネットワーク接続方式に関する情報(直接接続か Proxy 経由か Private Link 利用か) • オンボードのための資格情報(デバイス ログイン、Entra ID トークン、SPN) Microsoft Entra ID Azure Resource Manager (ARM) Hybrid Instance Metadata Service (HIMDS) 認証 & 認可 マネージド ID とメタデータの同期をコントロール HTTPS 443 Guest Configuration Azure portal Azure CLI / PowerShell Azure SDK REST API Hybrid Compute リソースプロバイダー ポリシーの要件にマシン(OS 環境)が準拠しているかどうかの確認を行うなど、 ゲスト内(OS 上)を対象とするポリシーとマシン構成に関する機能を提供 Hybrid Connectivity Extension Manager Guest Configuration リソースプロバイダー リソースプロバイダー 拡張機能のインストールや削除、アップグレードなど、拡張機能の管理を実施 Custom Script Microsoft Defender for Endpoint (MDE) Azure Monitor Agent (AMA) Azure Monitor 複数のリソースプロバイダー

15.

エージェントの主なコンポーネント • Hybrid Instance Metadata Service (HIMDS) • ハイブリッド インスタンス メタデータサービス • Connected Machine エージェントのコア コンポーネント • Azure への接続、接続済みマシンのマネージド ID 管理、メタデータの管理と同期、接続状態の確認な どを実施 • Guest Configuration Agent • マシン構成エージェント • Azure のマシン構成により要求された、事前に定義されたあるべき状態を認識し、現在の状態との比較 や設定の変更(是正)を実施 • Extension Agent • 拡張機能エージェント • 拡張機能の管理(インストールや削除、アップデートなど)を実施 • Azure Arc Proxy • 上記のサービス・エージェントが Azure と通信を行う際の経路をコントロール

16.

Windows エージェント • 対象のサーバーを Azure 上のリソースへ写像 • 対象のサーバーにエージェントをインストール • Azure Connected Machine エージェント • 対象のサーバーを表すリソースオブジェクトを生成 • Azure の各種管理サービスからは写像されたリソース に対して管理操作を実施

17.

Windows エージェント 名前 himds 表示名 スタートアップの種類 ログオン Azure Hybrid Instance Metadata Service 自動(遅延開始) NT SERVICE¥himds "C:¥Program Files¥AzureConnectedMachineAgent¥himds.exe" Guest Configuration Arc Service GCArcService ArcProxy SYSTEM "C:¥Program Files¥AzureConnectedMachineAgent¥GCArcService2¥GC¥gc_arc_service.exe" -k netsvcs Guest Configuration Extension Service ExtensionService 自動(遅延開始) 自動(遅延開始) SYSTEM "C:¥Program Files¥AzureConnectedMachineAgent¥ExtensionService2¥GC¥gc_extension_service.exe" -k netsvcs Azure Arc Proxy 手動 ※直接接続時 NETWORK SERVICE "C:¥Program Files¥AzureConnectedMachineAgent¥arcproxy.exe"

18.

Windows エージェント

19.

Linux エージェント Unit himdsd.service gcad.service extd.service Discription Status User Group Azure Connected Machine Agent Service enabled; active himds himds After=network-online.target Wants=network-online.target /opt/azcmagent/bin/himds GC Arc Service enabled; active root Root /opt/GC_Service/GC/gc_linux_service After=network.target Extension Service root enabled; active /opt/GC_Ext/GC/gc_linux_service root After=network.target User: himds 及び Group: himds の UID / GID は環境により異なる可能性があるため注意

20.

Linux エージェント

21.

Linux エージェント

22.

Azure Arc 対応サーバーを安全に使う • アクセスコントロールを適切に実施 • エージェントを適切に管理

23.

よりセキュアに利用するための Tips ① Connected Machine エージェントのアップデート ② Arc リソースに対する Azure RBAC 設定 ③ サービスプリンシパルの資格情報管理 ④ エージェントの設定による機能のロックダウン ⑤ リソース リミットの調整

24.

エージェントのバージョン • Connected Machine エージェント • 原則、毎月新しいバージョンが公開される • 新機能、機能強化、バグ修正、セキュリティ修正 • 基本的には、新しいバージョンの利用が推奨 • サポート期間は 1 年間 • 1 年を待たず、可能な限り新しいバージョンへバージョンアップ することが推奨

25.

エージェントの更新内容確認 • Microsoft Learn のエージェントの新機能 (What’s New)のページを定期的にチェック • 日本語版は情報が遅れることが多いので、できれば英 語版を確認

26.

(補足)計画されている破壊的な変更 • 2026年1月以降、証明書のシリアル番号が負の値 となっている証明書は利用できなくなる • そもそも RFC 5280 違反

27.

エージェントのバージョンアップ • エージェント自体に自動更新機能は無い(今は) • 各プラットフォームの更新管理機構を利用 • Windows • Windows Update で他の Microsoft 製品の更新を有効化 • Update Catalog 等からダウンロードしてインストール • Linux • ディストリビューションのパッケージ管理システムでアップデート • dnf / yum / apt / zypper

28.

エージェントのバージョンアップ

29.

リソースに対する適切な RBAC の設定 • 適切なアクセスコントロールは全ての基礎 • Azure Arc 対応サーバーの場合、役割は大きく3種類 • 最初に、Azure へオンボードして Arc リソースを登録する • Azure 上の Arc リソースを管理する • 管理対象サーバーの OS へアクセスし、OS の中身を管理 する(データアクセス)

30.

Arc 対応サーバー リソース関連のロール • オンボードに関する組み込みロール • Azure に接続されたマシンのオンボード • リソース管理に関する組み込みロール • Azure に接続されたマシンのリソース管理者 • 所有者 / 共同作成者(特権管理者ロール) • 管理対象の OS へのアクセスを制御する組み込みロール • 仮想マシンの管理者ログイン • 仮想マシンのユーザーログイン • Windows Admin Center Administrator Login • ( Virtual Machine Data Access Administrator (preview) )

31.

Azure Arc 対応サーバー 職務ロール

32.

オンボードに必要な権限

33.

データアクセスの制御を行うためのロール

34.

オンボードに使用する資格情報の保護 • オンボードに利用可能な資格情報 • 対話型ログオン(Web 又はデバイスコード) • サービスプリンシパル(シークレット) • アクセス トークン • シークレットの適切な管理は特に重要

35.

エージェントのロックダウン • Connected Machine Agent は設定で機能をロッ ク(利用不可に設定)することが可能 • 特に、リモートアクセスやリモートからの構成変 更が不要な環境であれば、機能をロックするとよ り安全

36.

エージェントが利用可能なリソース • Connected Machine エージェントは利用可能なリソースが制限 されている(利用可能なリソースの上限が設定されている) • 管理対象マシンの全てのリソースを使用できるわけではない • 本来提供すべきサービスへ影響を与えないようにするため • 概ね、CPU 使用率 5% 程度(処理により異なる) • エージェントのリソース リミットは設定で変更可能 • 特に、少ないコアのマシンで重い処理をする場合に有効 • 例えば Windows Admin Center 拡張機能をインストールする時など

37.

エージェントが利用可能なリソース

38.

リソース制限の変更 • azcmagent config set で cpulimit を設定(%) azcmagent config set guestconfiguration.agent.cpulimit <Num> azcmagent config set extensions.agent.cpulimit <Num>

39.

Demo

40.

まとめ • Azure Connected Machine エージェントは可能 な限り最新版を利用しましょう • 最小特権の原則を守りましょう • 必要なら、 Connected Machine エージェントを ロックダウンしましょう