青いセーターを着た人がコンピュータで作業している
Microsoft Base ロゴ

技術ブログ

Azureに関する技術情報

Azure Stack HCI を使用したマイクロセグメンテーション

Azure

本ポストは以下の記事の翻訳です。

Azure Stack HCI を使用したマイクロセグメンテーション – Microsoft Tech Community

 AnirbanPaul

2021 年 4 28 日、午後 4 24 分発行  

HCI クラスターに複数のアプリケーションをデプロイした経験はありますか? インターネットへのアクセスが必要なアプリケーション ワークロードがクラスター内にありますか? HCI クラスター内のアプリケーション ワークロードにアクセスするリモート ユーザーはいますか? これらのいずれかの質問に対する答えが「はい」の場合、この記事を読んで、不正アクセスやサイバー攻撃 (内部または外部) からワークロードを保護する方法について理解してください。

問題: ネットワーク セキュリティの必要性と従来のアプローチの問題点

現在、ネットワーク セキュリティは組織にとって最大の関心事です。私たちは、増大する侵害、脅威、サイバー リスクに直面しています。サイバー犯罪者は、境界コントロールを迂回できるように設計された高度な攻撃を使用して、ビジネスに大きく影響するデータを攻撃目標にします。攻撃者が企業ネットワークに侵入してしまうと、彼らはシステム間を自由に移動して、機密情報や個人を特定できる情報を探します。このような侵害に長期間気付かないこともあります。

重要度が高いデータおよびシステムを分離するために、ネットワークのセグメント化が長い間行われてきました。従来のネットワークでは、セキュリティはエッジで設定されていました。エッジとは、ノースとサウスの間の通信が行われるところ (データセンターとの通信が出入りするところ) です。これにより、外部の世界からイントラネットが保護されます。ただしこのやり方では、モダンなハイブリッド クラウドを保護することはほとんどできません。モダンなハイブリッド クラウドでは、境界というものがほとんど消失しており、多くのトラフィックがイーストとウェストの間、サーバー間、アプリケーション間で流れていきます。

下記のトポロジでは、ファイアウォールの内側の VLAN またはサブネット内でエンド ポイントは相互に自由に通信できます。これらのサーバーのいずれかが感染した場合、その感染は封じ込められず、他のサーバーに容易に広がります。

ネットワーク境界イメージ

物理的なファイアウォールを使用してイーストとウェストの間のトラフィックを保護することは可能です。だだし、これには欠点があります。物理的なファイアウォールを介してイーストとウェストの間の通信を送信する場合、ネットワーク リソースの使用率に関して大きなボトルネックが発生します。ファイアウォールの処理能力が限界に達した場合は、より大規模なファイアウォールに置き換えるか、または物理的なファイアウォールをさらに追加することでセキュリティをスケーリングできますが、これは煩雑で費用がかかります。

さらに、物理的なファイアウォールを使用すると、特定のアプリケーションに対して余分な遅延が発生する場合もあります。セグメント化されたすべてのトラフィックは、それがたとえ同じ物理サーバー上でやり取りされる場合でも、物理的なファイアウォールを通過する必要があります。

解決策: Azure Stack HCI 内でのマイクロセグメンテーション

完全に保護するための理想的な解決策は、ファイアウォールを使用してデータ センター内のすべてのトラフィック フローを保護し、アプリケーションが機能するために必要なフローのみを許可することです。これがゼロ トラスト モデルです。

マイクロセグメンテーションの考え方では、アプリケーション間およびサービス間できめ細かいネットワーク ポリシーを作成します。これにより、それぞれのアプリケーションまたは仮想マシンを取り囲むセキュリティ境界が実質的に縮小します。このフェンスによって、アプリケーション層の間、または他の論理境界の間で必要な通信のみを許可できます。これによって、サイバー脅威がシステムからシステムへと横方向に広がっていくのが極めて難しくなります。論理境界は完全にカスタマイズできます。論理境界として、開発、テスト、実稼働など、さまざまな環境を使用できます。また、アプリケーションのさまざまなタイプや、アプリケーション内のさまざまな層も使用できます。これによって、ネットワークが安全に分離され、ネットワーク セキュリティ インシデントの攻撃対象領域が総合的に縮小します。

Azure Stack HCI を使用すると、アプリケーションとワークロードのきめ細かいセグメンテーションを定義でき、外部と内部の両方の攻撃からそれらを保護できます。これは分散ファイアウォールを通じて実現されます。管理者はアクセス制御リストを定義して、従来の VLAN ネットワークおよびオーバーレイ ネットワークに接続されたワークロードへのアクセスを制限できます。これはネットワーク レイヤーのファイアウォールであり、ソースと宛先の IP アドレス、ソースと宛先のポート、ネットワーク プロトコルに基づいてアクセスを許可または制限できます。詳細については、こちらを参照してください。

重要: マイクロセグメンテーション ポリシーは、従来の VLAN ネットワークに接続されたすべての Azure Stack HCI ワークロードに適用できます。

ファイアウォール ポリシーは、管理プレーンを使用して構成します。構成には複数のオプションを使用できます。それらは、標準の REST インターフェイス、PowershellWindows Admin Center (WAC)System Center Virtual Machine Manager (SCVMM) です。管理プレーンは、中央コントロール プレーンであるネットワーク コントローラーにポリシーを送信します。これは Azure Stack HCI OS にサーバー ロールとして含まれます。ネットワーク コントローラーは該当するすべての Hyper-V ホストにポリシーをプッシュします。このポリシーは、仮想マシンの vSwitch ポートで調べられます。また、ネットワーク コントローラーは、ポリシーの同期が維持されているか、ドリフトが修正されているかを確認します。

Azure Stack HCI イメージ

Azure Stack HCI でのマイクロセグメンテーションの構成と管理

HCI でマイクロセグメンテーションを構成する場合、大きく分けて 2 つのステップがあります。最初にネットワーク コントローラーを設定する必要があり、次にマイクロセグメンテーション ポリシーを構成する必要があります。

ネットワーク コントローラーの設定

ネットワーク コントローラーは、SDN Express Powershell スクリプトまたは Windows Admin Center (WAC) を使用して、あるいは System Center Virtual Machine Manager (SCVMM) を通じて設定できます。

Windows Admin Center

HCI を初めてデプロイする場合、Windows Admin Center のデプロイメント ウィザードを使用してネットワーク コントローラーを設定できます。SDN デプロイメントは、このウィザードのステップ 5 です。これにより、SDN のネットワーク コントローラー コンポーネントがデプロイされます。ウィザードの起動、HCI クラスターの設定、およびネットワーク コントローラーの設定について詳しくは、こちらを参照してください。既定では、入力する必要がある項目は次の 2 つだけです。

  1. Azure Stack HCI OS vhdx ファイルへのパス。これは、ネットワーク コントローラー VM をデプロイするために使用されます。
  2. ネットワーク コントローラー VM をドメインに参加させるための資格情報、およびローカル管理者の資格情報。

管理ネットワークで DHCP が構成されていない場合、ネットワーク コントローラー VM の静的 IP アドレスを指定する必要があります。SDN の設定の実例を以下に示します。

SDN Express スクリプト

既存の HCI クラスターが既にある場合、現時点では Windows Admin Center を通じて SDN をデプロイすることはできません。このサポートは近々行われる予定です。

この場合、SDN Express スクリプトを使用して、SDN のネットワーク コントローラー (NC) コンポーネントをデプロイできます。これらのスクリプトは、公式の Microsoft SDN github リポジトリで入手できます。これらのスクリプトは、HCI クラスター管理ネットワークにアクセスできるマシンにダウンロードし、実行する必要があります。スクリプトの実行について詳しくは、こちらを参照してください。

スクリプトは、入力として構成ファイルを受け取ります。こちら github リポジトリにテンプレート ファイルがあります。従来の HCI VLAN ネットワークで、マイクロセグメンテーションのためにネットワーク コントローラーを設定するには、次のパラメーターを指定または変更する必要があります。

  1. VHDPath: NC VM で使用される VHDX ファイルのパス。スクリプトはこのファイル パスにアクセスできる必要があります。
  2. VHDFile: NC VM で使用される VHDX ファイルの名前。
  3. JoinDomain: NC VM が参加するドメイン。
  4. 管理ネットワークの詳細 (ManagementSubnetManagementGatewayManagementDNSManagementVLANID): これは HCI クラスターの管理ネットワークです。
  5. DomainJoinUsername: NC VM をドメインに参加させる際のユーザー名
  6. LocalAdminDomainUser: NC VM のドメイン ユーザー。このユーザーは NC VM のローカル管理者でもあります。
  7. RestName: 管理クライアント (Windows Admin Center など) NC と通信するために使用する DNS
  8. NC VM の詳細 (ComputerNameHostNameManagementIPMACAddress): NC VM の名前、NC VM が配置されるサーバーのホスト名、NC VM の管理ネットワーク IP アドレス、NC VM MAC アドレス
  9. HyperVhosts: HCI クラスター内のホスト サーバーの名前
  10. NCUserName: NC 管理者アカウント。NC の管理で必要なすべてのことを実行できるアクセス許可が必要です (主に構成とリモート処理)。通常、これは LocalAdminDomainUser アカウントと同じでかまいません。

その他の重要なポイント:

  1. パラメーター VMLocationSDNMacPoolStartSDNMacPoolEnd は、既定値を使用してかまいません。
  2. 次のセクションは空白にする必要があります: MuxesGateways (Muxes = @())
  3. VLAN ネットワークのマイクロセグメンテーションをデプロイする場合、PA ネットワークの詳細セクションは空白のままにしておく必要があります。それ以外の場合で、オーバーレイ ネットワークをデプロイする場合は、このセクションに入力してください。
  4. PA ネットワーク セクションより下の残りのパラメーターはコメント アウトしてかまいません。

以下にサンプル ファイルを示します。

マイクロセグメンテーション ポリシーの構成画像

マイクロセグメンテーション ポリシーの構成

ネットワーク コントローラーを設定したら、マイクロセグメンテーション ポリシーをデプロイできます。

  1. 最初の手順は、VLAN ネットワークでホストされるワークロード用の論理ネットワークを作成することです。詳しくは、こちらを参照してください。
  2. 次に、ワークロードに適用するセキュリティ ACL ルールを作成する必要があります。詳しくは、こちらを参照してください。
  3. ACL ルールを作成したら、それらをネットワークまたはネットワーク インターフェイスに適用できます。
    1. 従来の VLAN ネットワークへの ACL の適用について詳しくは、こちらを参照してください。
    2. 仮想ネットワークへの ACL の適用について詳しくは、こちらを参照してください。
    3. ネットワーク インターフェイスへの ACL の適用について詳しくは、こちらを参照してください。

ACL ルールがネットワークに適用されると、そのネットワーク内のすべての仮想マシンはポリシーを取得し、ルールに基づいてアクセスを制限します。ACL ルールがネットワーク インターフェイスに適用されると、そのネットワーク インターフェイスはポリシーを取得し、ルールに基づいてアクセスを制限します。

以上のように、マイクロセグメンテーションを使用すると、HCI クラスター内のすべてのトラフィック フローを保護でき、アプリケーションが機能するのに必要なフローだけを許可できます。これを実際に行い、sdn_feedback@microsoft.com にフィードバックをお寄せください。ご質問も遠慮なくお寄せください。

< 前の記事

> 次の記事

ページの先頭へ戻る