Azure Private Link を使用して、サーバーを Azure Arc に安全に接続する
Azure Private Link を使用すると、プライベート エンドポイントを使用して Azure PaaS サービスを仮想ネットワークに安全に接続できます。 多くのサービスでは、リソースごとにエンドポイントを設定するだけです。 つまり、オンプレミスまたはマルチクラウド サーバーを Azure Arc に接続し、パブリック ネットワークを使用する代わりに、Azure ExpressRoute またはサイト間 VPN 接続経由ですべてのトラフィックを送信できます。
Azure Arc 対応サーバー以降では、プライベート リンク スコープ モデルを使用して、複数のサーバーまたはマシンで 1 つのプライベート エンドポイントを使用して Azure Arc リソースと通信できるようにすることができます。
この記事では、Azure Arc プライベート リンク スコープを使用する場面とその設定方法について説明します。
利点
Private Link を使用すると、次のことができます。
- パブリック ネットワーク アクセスを開かずに Azure Arc にプライベートに接続する。
- Azure Arc 対応のマシンまたはサーバーからのデータが、認可されたプライベート ネットワーク経由でのみアクセスされるようにする。 これには、マシンまたはサーバーにインストールされている VM 拡張機能からのデータも含まれます。これにより、デプロイ後の管理と監視のサポートが提供されます。
- プライベート エンドポイント経由で接続される特定の Azure Arc 対応サーバーおよびその他の Azure サービス リソース (Azure Monitor など) を定義することで、プライベート ネットワークからのデータ流出を防止する。
- ExpressRoute と Private Link を使用して、オンプレミスのプライベート ネットワークを Azure Arc に安全に接続する。
- すべてのトラフィックを Microsoft Azure のバックボーン ネットワーク内に収める。
詳細については、Azure Private Link の主な利点を参照してください。
しくみ
Azure Arc プライベート リンク スコープによって、プライベート エンドポイント (およびそれが含まれている仮想ネットワーク) が Azure リソース (この場合は Azure Arc 対応サーバー) に接続されます。 Azure Arc 対応サーバーでサポートされる VM 拡張機能 (Azure Monitor など) のいずれかを有効にすると、それらのリソースが他の Azure リソースに接続されます。 例:
- Log Analytics ワークスペース。Azure Automation 変更履歴とインベントリ、Azure Monitor の VM 分析情報、Azure Monitor エージェントを使用した Azure Monitor ログ収集で必要となります。
- Azure Automation アカウント。Update Management と変更履歴とインベントリで必要となります。
- Azure Key Vault
- Azure Blob Storage。カスタム スクリプト拡張機能で必要となります。
Azure Arc 対応サーバーから他の Azure リソースに接続するには、サービスごとに Private Link を構成する必要があります。これは省略可能ですが、推奨されています。 Azure Private Link では、サービスごとに個別の構成が必要です。
Azure のサービス用の Private Link の構成の詳細については、Azure Automation、Azure Monitor、Azure Key Vault、または Azure Blob Storage に関する記事を参照してください。
重要
Azure Private Link は、現在、一般提供されています。 プライベート エンドポイントと Private Link サービス (Standard ロード バランサーの背後にあるサービス) の両方が一般提供されています。 さまざまな Azure PaaS がさまざまなスケジュールに従って Azure Private Link にオンボードされます。 Private Link 上の Azure PaaS の更新された状態については、プライベート リンクの可用性に関する記事を参照してください。 既知の制約については、プライベート エンドポイントと Private Link サービスの説明を参照してください。
VNet でプライベート エンドポイントを使用すると、Azure Arc 対応サーバーのエンドポイントのパブリック IP を使用するのではなく、ネットワークのプールのプライベート IP を介してそれらのエンドポイントに接続することができます。 これにより、要求されていない送信トラフィックに対して VNet を開くことなく、Azure Arc 対応サーバーのリソースを使用し続けることができます。
プライベート エンドポイントからリソースへのトラフィックは、パブリック ネットワークにはルーティングされず、Microsoft Azure のバックボーンを経由します。
パブリック ネットワークからの取り込みとクエリを許可または拒否するように、各コンポーネントを構成できます。 これによりリソース レベルの保護が提供されるため、特定のリソースへのトラフィックを制御できます。
規制と制限
Azure Arc 対応サーバーのプライベート リンク スコープ オブジェクトには、Private Link の設定を計画するときに考慮に入れる必要のある制限がいくつかあります。
- 仮想ネットワークには、最大 1 つの Azure Arc プライベート リンク スコープを関連付けることができます。
- Azure Arc 対応のマシンまたはサーバーのリソースは、1 つの Azure Arc 対応サーバー プライベート リンク スコープにのみ接続できます。
- すべてのオンプレミス マシンでは、同じ DNS フォワーダーを使用して、正しいプライベート エンドポイント情報 (FQDN レコード名とプライベート IP アドレス) を解決することで、同じプライベート エンドポイントを使用する必要があります。 詳細については、「Azure プライベート エンドポイントの DNS 構成」を参照してください。
- Azure Arc 対応のサーバーと Azure Arc プライベート リンク スコープは、同じ Azure リージョンに存在する必要があります。 プライベート エンドポイントと仮想ネットワークも同じ Azure リージョンに存在する必要がありますが、このリージョンは、Azure Arc プライベート リンク スコープと Arc 対応サーバーのリージョンとは異なるリージョンにできます。
- Microsoft Entra ID と Azure Resource Manager へのネットワーク トラフィックは、Azure Arc プライベート リンク スコープを通過せず、インターネットへの既定のネットワーク ルートを引き続き使用します。 必要に応じて、Azure Resource Manager トラフィックをプライベート エンドポイントに送信するようにリソース管理のプライベート リンクを構成できます。
- 使用するその他の Azure サービス (Azure Monitor など) のために、仮想ネットワーク内に独自のプライベート エンドポイントが必要となります。
- 現時点では、Windows Admin Center または SSH を使ったサーバーへのリモート アクセスは、プライベート リンク経由ではサポートされていません。
Private Link のセットアップを計画する
プライベート リンク経由でサーバーを Azure Arc に接続するには、次のことが実現されるようにネットワークを構成する必要があります。
サイト間 VPN または ExpressRoute 回線 を使用して、オンプレミスのネットワークと Azure Virtual Network の間に接続が既に確立されている。
Azure Arc プライベート リンク スコープをデプロイする。これは、プライベート エンドポイント経由で Azure Arc と通信できるマシンまたはサーバーを制御し、プライベート エンドポイントを使用してそれを Azure の仮想ネットワークに関連付けます。
プライベート エンドポイント アドレスを解決するように、ローカル ネットワーク上の DNS 構成を更新する。
Microsoft Entra ID と Azure Resource Manager へのアクセスを許可するようにローカル ファイアウォールを構成する。
Azure Arc 対応サーバーに登録されているマシンまたはサーバーをプライベート リンク スコープに関連付ける。
必要に応じて、マシンまたはサーバーが管理されている (次のような) 他の Azure サービスのプライベート エンドポイントをデプロイする。
- Azure Monitor
- Azure Automation
- Azure Blob Storage
- Azure Key Vault
この記事では、ExpressRoute 回線またはサイト間 VPN 接続が既に設定されていることを前提としています。
ネットワーク構成
Azure Arc 対応サーバーは複数の Azure サービスと統合され、クラウドの管理とガバナンスをハイブリッド マシンまたはサーバーにもたらします。 これらのサービスのほとんどでは既にプライベート エンドポイントが提供されていますが、これらのサービスでプライベート エンドポイントが提供されるまでは、インターネット経由で Microsoft Entra ID と Azure Resource Manager にアクセスできるようにファイアウォールとルーティング規則を構成する必要があります。
これを実現する方法は 2 つあります。
インターネットに送信されるすべてのトラフィックを Azure VPN または ExpressRoute 回線経由でルーティングするようにネットワークが構成されている場合は、サービス タグを使用して Microsoft Entra ID と Azure への送信 TCP 443 (HTTPS) アクセスを許可するように、Azure のサブネットに関連付けられたネットワーク セキュリティ グループ (NSG) を構成できます。 NSG ルールは次のようになります。
設定 Microsoft Entra ID ルール Azure ルール ソース 仮想ネットワーク 仮想ネットワーク Source port ranges * * 到着地 サービス タグ サービス タグ 宛先サービス タグ AzureActiveDirectory
AzureResourceManager
宛先ポート範囲 443 443 プロトコル TCP TCP アクション 許可 Allow Priority 150 (インターネット アクセスをブロックするルールよりも低い必要があります) 151 (インターネット アクセスをブロックするルールよりも低い必要があります) Name AllowAADOutboundAccess
AllowAzOutboundAccess
ダウンロード可能なサービス タグ ファイルを使用して Microsoft Entra ID と Azure への送信 TCP 443 (HTTPS) アクセスを許可するように、ローカル ネットワーク上のファイアウォールを構成します。 この JSON ファイルには、Microsoft Entra ID と Azure で使用されるすべてのパブリック IP アドレスの範囲が含まれており、毎月更新されて変更が反映されます。 Azure AD のサービス タグは
AzureActiveDirectory
で、Azure のサービス タグはAzureResourceManager
です。 ファイアウォール規則を構成する方法については、ネットワーク管理者とネットワーク ファイアウォール ベンダーにお問い合わせください。
ネットワーク トラフィック フローの詳細について理解するには、この記事の「動作方法」セクションの中のダイアグラムを参照してください。
プライベート リンク スコープを作成する
Azure portal にサインインします。
Azure portal 内で [リソースの作成] に移動して、「Azure Arc プライベート リンク スコープ」を検索してから、[作成] を選択します。
または、ポータル内の [Azure Arc プライベート リンク スコープ] ページに直接移動してから、[Azure Arc プライベート リンク スコープの作成] を選択します。
[基本] タブ内で、[サブスクリプション] と [リソース グループ] を選択します。
Azure Arc プライベート リンク スコープの名前を入力します。 意味のある明確な名前を使用することをお勧めします。
必要に応じて、この Azure Arc プライベート リンク スコープに関連付けられているすべての Azure Arc 対応マシンまたはサーバーに、プライベート エンドポイントを介してサービスにデータを送信することを要求できます。 これを行うには、[公衆ネットワーク アクセスを許可する] のボックスをオンにして、この Azure Arc プライベート リンク スコープに関連付けられているマシンまたはサーバーが、プライベートまたは公衆ネットワークの両方を介してサービスと通信できるようにします。 この設定は、スコープの作成後に必要に応じて変更できます。
[プライベート エンドポイント] タブを選択し、次に [作成] を選択します。
[プライベート エンドポイントの作成] ペイン内で、次の手順を実行します。
エンドポイントの [名前] を入力します。
[プライベート DNS ゾーンとの統合] で [はい] を選択して、新しいプライベート DNS ゾーンを自動で作成します。
Note
[いいえ] を選択して DNS レコードを手動で管理する場合は、最初に、このプライベート エンドポイントとプライベート スコープ構成を含むプライベート リンクの設定を完了させます。 次に、「Azure プライベート エンドポイントの DNS 構成」の手順に従って、DNS を構成します。 プライベート リンクの設定の準備で、空のレコードを作成しないようにしてください。 作成する DNS レコードによって、既存の設定がオーバーライドされ、Azure Arc 対応サーバーとの接続が影響を受ける可能性があります。
プライベート リンクを使用するおよびプライベート リンクを使用しない Arc リソースの両方に対して、同じ VNET/DNS ゾーンを使用することはできません。 プライベート リンクが接続されていない Arc リソースは、パブリック エンドポイントに解決する必要があります。
[OK] を選択します。
[確認および作成] を選択します。
検証をパスしたら、[作成] を選択します。
オンプレミスの DNS 転送を構成する
オンプレミスのマシンまたはサーバーでは、プライベート リンクの DNS レコードをプライベート エンドポイントの IP アドレスに解決できる必要があります。 これを構成する方法は、Azure のプライベート DNS ゾーンを使用して DNS レコードを管理しているか、オンプレミスで独自の DNS サーバーを使用しているか、および構成しているサーバーの数によって異なります。
Azure 統合プライベート DNS ゾーンを使用した DNS 構成
プライベート エンドポイントの作成時に Azure Arc 対応サーバーとゲスト構成のプライベート DNS ゾーンを設定した場合、オンプレミスのマシンまたはサーバーでは、プライベート エンドポイントのアドレスを正しく解決するために、組み込みの Azure DNS サーバーに DNS クエリを転送できる必要があります。 Azure に DNS フォワーダー (専用の VM または DNS プロキシが有効になっている Azure Firewall インスタンス) が必要です。その後、プライベート エンドポイントの IP アドレスを解決するためにクエリを Azure に転送するように、オンプレミスの DNS サーバーを構成できます。
詳細については、「オンプレミス DNS フォワーダーを使用した Azure プライベート リゾルバー」を参照してください。
DNS サーバーの手動構成
プライベート エンドポイントの作成時に Azure プライベート DNS ゾーンの使用をオプトアウトした場合は、オンプレミスの DNS サーバーに必要な DNS レコードを作成する必要があります。
Azure portal 内で、仮想ネットワークとプライベート リンク スコープに関連付けられているプライベート エンドポイント リソースに移動します。
サービス メニューの [設定] の下で [DNS 構成] を選択し、DNS サーバー上で設定する必要がある DNS レコードと対応する IP アドレスの一覧を表示します。 FQDN と IP アドレスは、プライベート エンドポイントに対して選択したリージョンとサブネットで使用可能な IP アドレスに基づいて変更されます。
DNS サーバー ベンダーのガイダンスに従って、ポータルのテーブルと一致させるために必要な DNS ゾーンと A レコードを追加します。 ネットワークに適切にスコープ設定された DNS サーバーを選択してください。 この DNS サーバーを使用するすべてのマシンまたはサーバーでは、プライベート エンドポイントの IP アドレスを解決するようになります。これらは、Azure Arc プライベート リンク スコープに関連付けられている必要があります。そうしないと、接続が拒否されます。
単一サーバーのシナリオ
Private Link を使用していくつかのマシンまたはサーバーをサポートすることだけを計画している場合、ネットワーク全体の DNS 構成を更新したくない場合があります。 この場合、プライベート エンドポイントのホスト名と IP アドレスをオペレーティング システムの hosts ファイルに追加できます。 OS の構成によって、hosts ファイルはホスト名を IP アドレスに解決するための主要な方法または代替の方法になります。
Windows
管理者特権を持つアカウントを使用して
C:\Windows\System32\drivers\etc\hosts
を開きます。「DNS サーバーの手動構成」の中で説明されているように、[DNS 構成] の一覧からプライベート エンドポイント IP とホスト名を追加します。 hosts ファイルにはまず IP アドレスが必要であり、その後にスペースとホスト名が続きます。
変更を加えたファイルを保存します。 最初に別のディレクトリに保存し、ファイルを元のパスにコピーすることが必要な場合があります。
Linux
テキスト エディターで
/etc/hosts
ホスト ファイルを開きます。「DNS サーバーの手動構成」の中で説明されているように、[DNS 構成] の一覧からプライベート エンドポイント IP とホスト名を追加します。 hosts ファイルにはまず IP アドレスが求められており、その後にスペースとホスト名が続きます。
変更を加えたファイルを保存します。
Azure Arc 対応サーバーに接続する
Note
プライベート エンドポイントを使用するには、Azure Connected Machine Agent バージョン 1.4 以降が必要です。 ポータルで生成される Azure Arc 対応サーバー デプロイ スクリプトでは、最新バージョンがダウンロードされます。
Private Link を使用するように新しい Azure Arc 対応サーバーを構成する
マシンまたはサーバーを Azure Arc 対応サーバーに初めて接続する場合は、必要に応じて、プライベート リンク スコープに接続できます。
お使いのブラウザーで Azure portal に移動します。
[マシン - Azure Arc] に移動します。
[マシン - Azure Arc] ページで、左上にある [追加/作成] を選択し、ドロップダウン メニューから [マシンの追加] を選択します。
[Azure Arc でサーバーを追加] ページで、デプロイ シナリオに応じて [単一サーバーの追加] または [複数のサーバーの追加] を選択し、[スクリプトの生成] を選択します。
[基本] ページで、以下を設定します。
マシンの [サブスクリプション] と [リソース グループ] を選択します。
[地域] ドロップダウン リストで、マシンまたはサーバーのメタデータを格納する Azure リージョンを選択します。
[オペレーティング システム] ドロップダウン リストで、スクリプトを実行するように構成されているオペレーティング システムを選択します。
[接続方法] で、[プライベート エンドポイント] を選択し、ドロップダウン リストからパート 1 で作成した Azure Arc プライベート リンク スコープを選択します。
タグを選択します。
[複数のサーバーの追加] を選択した場合は、[認証] ページで、ドロップダウン リストから Azure Arc 対応サーバー用に作成されたサービス プリンシパルを選択します。 Azure Arc 対応サーバーのサービス プリンシパルを作成していない場合は、サービス プリンシパルを作成する方法を確認して、作成するために必要なアクセス許可と手順について把握してください。 [次: タグ] を選択して続行します。
[タグ] ページで、提案されている既定の物理的な場所のタグを確認し、値を入力するか、カスタム タグを 1 つ以上指定して標準をサポートします。
[Next:Download and run script](次: スクリプトをダウンロードして実行する) を選択します。
[Download and run script]\(次: スクリプトをダウンロードして実行する\) ページで概要情報を確認し、[ダウンロード] を選択します。
スクリプトをダウンロードしたら、特権 (管理者またはルート) アカウントを使用して、マシンまたはサーバーでそれを実行する必要があります。 ネットワーク構成によっては、インターネットにアクセスできるコンピューターからエージェントをダウンロードし、それをマシンまたはサーバーに転送してから、エージェントへのパスを使用してスクリプトを変更することが必要になる場合があります。
Windows エージェントは https://aka.ms/AzureConnectedMachineAgent から、Linux エージェントは https://packages.microsoft.com からダウンロードできます。 OS 配布ディレクトリで azcmagent の最新バージョンを見つけて、ローカルのパッケージ マネージャーを使用してインストールします。
このスクリプトでは、完了後に、オンボードが正常に完了したかどうかを通知するステータス メッセージが返されます。
ヒント
Microsoft Entra ID (login.windows.net
、login.microsoftonline.com
、pas.windows.net
) および Azure Resource Manager (management.azure.com
) へと至る、Azure Connected Machine Agent からのネットワーク トラフィックには、引き続きパブリック エンドポイントが使用されます。 サーバーがこれらのエンドポイントに到達するためにプロキシ サーバー経由で通信する必要がある場合は、Azure に接続する前に、プロキシ サーバーの URL を使用してエージェントを構成します。 プライベート エンドポイントにプロキシ サーバーからアクセスできない場合、Azure Arc サービスのプロキシ バイパスの構成も必要になることがあります。
既存の Azure Arc 対応サーバーを構成する
プライベート リンク スコープの前にセットアップされた Azure Arc 対応サーバーの場合は、次の手順を実行して、Azure Arc 対応サーバーのプライベート リンク スコープの使用を開始できるようにすることができます。
Azure portal で、Azure Arc プライベート リンク スコープ リソースに移動します。
サービス メニューの [構成] の下で、[Azure Arc リソース]、次に [+ 追加] を選択します。
プライベート リンク スコープに関連付けるサーバーを一覧から選択し、[選択] を選択して変更を保存します。
Private Link Scope で、最近関連付けられたサーバーからの接続が受け入れられるまで、最大で 15 分かかる場合があります。
トラブルシューティング
問題が発生した場合は、次の推奨事項を参考にしてください。
オンプレミスの DNS サーバーをチェックして、それが Azure DNS に転送されていること、またはプライベート リンク ゾーン内の適切な A レコードを使用して構成されていることを確認します。 次の参照コマンドでは、Azure 仮想ネットワーク内のプライベート IP アドレスが返される必要があります。 パブリック IP アドレスを解決する場合は、マシンまたはサーバーとネットワークの DNS 構成を再確認します。
nslookup gbl.his.arc.azure.com nslookup agentserviceapi.guestconfiguration.azure.com
マシンまたはサーバーのオンボードに関する問題については、Microsoft Entra ID と Azure Resource Manager のサービス タグを、ローカルのネットワーク ファイアウォールに追加したことを確認します。 これらのサービスでプライベート エンドポイントが利用可能になるまで、エージェントではインターネット経由でこれらのサービスと通信する必要があります。
トラブルシューティングのヘルプの詳細については、「Azure プライベート エンドポイント接続に関する問題のトラブルシューティング」を参照してください。
次のステップ
- Azure プライベート エンドポイントとはで、プライベート エンドポイントの詳細について学習する。
- Azure Automation、Azure Monitor、Azure Key Vault、または Azure Blob Storage 用の Private Link を構成する方法について学習する。