ラボ 04 - 仮想ネットワークを実装する

ラボ概要

このラボは、仮想ネットワークに焦点を当てた 3 つのラボの 1 つ目です。 このラボでは、仮想ネットワークとサブネット化の基本について学習します。 ネットワーク セキュリティ グループとアプリケーション セキュリティ グループを使用してネットワークを保護する方法について学びます。 また、DNS ゾーンとレコードについても学びます。

このラボでは Azure サブスクリプションが必要です。 お使いのサブスクリプションの種類により、このラボの機能が使用できるかどうかに影響する可能性があります。 リージョンを変更できますが、手順は米国東部を使って作成されています。

推定時間:50 分

ラボのシナリオ

あなたのグローバル組織では、仮想ネットワークの実装を計画しています。 当面の目標は、既存のすべてのリソースに対応することです。 ただし、組織は成長段階にあり、成長のための追加の容量を確保したいと考えています。

CoreServicesVnet 仮想ネットワークに、最も多くのリソースを配置しています。 大きく成長することが見込まれるため、この仮想ネットワークには大きなアドレス空間が必要です。

ManufacturingVnet 仮想ネットワークには、製造施設の運用に使用するシステムが含まれます。 組織では、システムでのデータの取得元として、多数の内部接続デバイスを予想しています。

対話型ラボ シミュレーション

このトピックで役立つ可能性のある対話型ラボ シミュレーションがいくつか存在します。 このシミュレーションを使用すると、同様のシナリオを自分のペースでクリックしながら進めることができます。 対話型シミュレーションとこのラボには違いがありますが、主要な概念の多くは同じです。 Azure サブスクリプションは必要ありません。

アーキテクチャの図

ネットワークレイアウト

これらの仮想ネットワークとサブネットは、既存のリソースに対応しながら、予想される成長にも対応できるような構造になっています。 これらの仮想ネットワークとサブネットを作成して、ネットワーク インフラストラクチャの基盤を構築してみましょう。

ご存知でしたか?: 問題を減らしてトラブルシューティングを簡略化するために、IP アドレス範囲が重複しないようにすることをお勧めします。 重複は、クラウドかオンプレミスかを問わず、ネットワーク全体の懸念事項です。 多くの組織では、重複を回避し、将来の成長に備えて計画をするために、エンタープライズ全体の IP アドレス指定スキームを設計しています。

職務スキル

  • タスク 1:ポータルを使用してサブネットを含む仮想ネットワークを作成する。
  • タスク 2:テンプレートを使用して仮想ネットワークとサブネットを作成する。
  • タスク 3:アプリケーション セキュリティ グループとネットワーク セキュリティ グループの間の通信を作成して構成する。
  • タスク 4:パブリックとプライベートの Azure DNS ゾーンを構成する。

タスク 1:ポータルを使用してサブネットを含む仮想ネットワークを作成する

この組織では、中核サービスの大幅な成長を計画しています。 このタスクでは、既存のリソースと計画された成長に対応するように仮想ネットワークおよび関連するサブネットを作成します。 このタスクでは、Azure portal を使用します。

  1. Azure portal - https://portal.azure.com にサインインします。

  2. Virtual Networks を検索して選択します。

  3. 仮想ネットワーク ページで、[作成] を選択します。

  4. CoreServicesVnet の [基本] タブに入力します。

    オプション Value
    リソース グループ az104-rg4 (必要に応じて、新規作成)
    名前 CoreServicesVnet
    リージョン (米国) 米国東部
  5. [IP アドレス] タブに移動します。

    オプション Value
    IPv4 アドレス空間 事前設定された IPv4 アドレス空間を 10.20.0.0/16 に置き換えます (エントリを区切ります)
  6. + サブネットの追加 を選択します。 各サブネットの名前とアドレスの情報を入力します。 必ず新しいサブネットごとに [追加] を選択します。 他のサブネットを作成する前または作成後に、既定のサブネットを削除することを忘れないでください。

    サブネット オプション Value
    SharedServicesSubnet サブネット名 SharedServicesSubnet
      開始アドレス 10.20.10.0
      サイズ /24
    DatabaseSubnet サブネット名 DatabaseSubnet
      開始アドレス 10.20.20.0
      サイズ /24

    注: どの仮想ネットワークにも少なくとも 1 つのサブネットが定義されている必要があります。 注意点として、5 つの IP アドレスが常に予約されるので、計画の際はそのことを考慮してください。

  7. CoreServicesVnet とその関連サブネットの作成を終えるには、[確認および作成] を選択します。

  8. 構成が検証に合格したことを確認して、[作成] を選択します。

  9. 仮想ネットワークのデプロイを待ってから、[リソースに移動] を選択します。

  10. 少し時間を取って、アドレス空間サブネットを確認します。 [設定] ブレードにある他の選択肢に注目してください。

  11. [Automation] セクションで、[テンプレートのエクスポート] を選択し、テンプレートが生成されるまで待ちます。

  12. テンプレートをダウンロードします。

  13. ローカル コンピューター上で、ダウンロード フォルダーに移動し、ダウンロードした ZIP ファイル内のファイルをすべて展開します。

  14. 先に進む前に、template.json ファイルがあることを確認してください。 このテンプレートを使用して、次のタスクで ManufacturingVnet を作成します。

タスク 2:テンプレートを使用して仮想ネットワークとサブネットを作成する

このタスクでは、ManufacturingVnet 仮想ネットワークと、関連付けられているサブネットを作成します。 組織は製造オフィスの増加を予測しているため、サブネットのサイズは予想される成長に合わせて調整されます。 このタスクでは、テンプレートを使用してリソースを作成します。

  1. 前のタスクで エクスポートした template.json ファイルを見つけます。 ダウンロード フォルダーにあるはずです。

  2. 任意のエディターを使用してファイルを編集します。 多くのエディターには、”すべての出現箇所を変更する” 機能があります。** Visual Studio Code を使用している場合は、制限モードではなく、信頼済みウィンドウ内で作業していることを確認します。 詳細を確認するには、アーキテクチャ図を参照してください。

ManufacturingVnet 仮想ネットワークを作成する

  1. CoreServicesVnet の出現箇所をすべて ManufacturingVnet に置換します。

  2. 10.20.0.0 の出現箇所をすべて 10.30.0.0 に置換します。

ManufacturingVnet のサブネット用の変更を行う

  1. SharedServicesSubnet の出現箇所をすべて SensorSubnet1 に置換します。

  2. 10.20.10.0/24 の出現箇所をすべて 10.30.20.0/24 に置換します。

  3. DatabaseSubnet の出現箇所をすべて SensorSubnet2 に置換します。

  4. 10.20.20.0/24 の出現箇所をすべて 10.30.21.0/24 に置換します。

  5. ファイルを読み返して、すべてが正しいことを確認します。

  6. 変更を必ず保存してください。

注: ラボ ファイル ディレクトリに完成したテンプレート ファイルがあります。

パラメーター ファイルに対して変更を行う

  1. 前のタスクでエクスポートした parameters.json ファイルを見つけます。 ダウンロード フォルダーにあるはずです。

  2. 任意のエディターを使用してファイルを編集します。

  3. 1 つある CoreServicesVnet の出現箇所を ManufacturingVnet に置換します。

  4. 変更内容を保存します。

カスタム テンプレートをデプロイする

  1. ポータルで、「カスタム テンプレートのデプロイ」を検索して選択します。

  2. [エディターで独自のテンプレートをビルド][ファイルの読み込み] の順に選択します。

  3. 製造に関する変更を含む templates.json ファイルを選択し、[保存] を選択します。

  4. [確認および作成][作成] の順に選択します。

  5. テンプレートがデプロイされるまで待ってから、Manufacturing 仮想ネットワークとサブネットが作成されたことを (ポータルで) 確認します。

注: 複数回デプロイする必要がある場合、一部のリソースが正常に完了していて、デプロイが失敗していることが判明することがあります。 そのようなリソースを手動で削除して、もう一度試すことができます。

タスク 3:アプリケーション セキュリティ グループとネットワーク セキュリティ グループの間の通信を作成して構成する

このタスクでは、アプリケーション セキュリティ グループとネットワーク セキュリティ グループを作成します。 NSG には、ASG からのトラフィックを許可する受信セキュリティ規則を適用します。 また、NSG には、インターネットへのアクセスを拒否するアウトバウンド規則も適用します。

アプリケーション セキュリティ グループ (ASG) を作成する

  1. Azure portal で、Application security groups を検索して選択します。

  2. [作成] をクリックし、基本情報を入力します。

    設定
    サブスクリプション 該当するサブスクリプション
    リソース グループ az104-rg4
    名前 asg-web
    リージョン 米国東部
  3. [確認と作成] をクリックし、検証後、[作成] をクリックします。

ネットワーク セキュリティ グループを作成して ASG サブネットに関連付ける

  1. Azure portal で、Network security groups を検索して選択します。

  2. [+ 作成] を選択し、[基本] タブに情報を入力します。

    設定
    サブスクリプション 該当するサブスクリプション
    リソース グループ az104-rg4
    名前 myNSGSecure
    リージョン 米国東部
  3. [確認と作成] をクリックし、検証後、[作成] をクリックします。

  4. NSG がデプロイされたら、[リソースに移動] をクリックします。

  5. [設定][サブネット]、次に [+ サブネット] をクリックします。

    設定
    仮想ネットワーク CoreServicesVnet (az104-rg4)
    Subnet SharedServicesSubnet
  6. [OK] をクリックして関連付けを保存します。

ASG トラフィックを許可する受信セキュリティ規則を構成する

  1. NSG の作業を続行します。 [設定] 領域で、[受信セキュリティ規則] を選択します。

  2. 既定の受信規則を確認します。 他の仮想ネットワークとロード バランサーのみがアクセスを許可されていることに注意してください。

  3. [+ 追加] を選択します。

  4. [受信セキュリティ規則の追加] ブレードで、次の情報を使用して受信ポート規則を追加します。 この規則では、ASG トラフィックが許可されます。 終わったら、[追加] を選択します。

    設定
    ソース アプリケーション セキュリティ グループ
    ソース アプリケーションのセキュリティ グループ asg-web
    ソース ポート範囲 *
    宛先 [任意]
    サービス カスタム (他の選択肢に注目してください)
    宛先ポート範囲 80,443
    Protocol TCP
    アクション 許可
    優先度 100
    名前 AllowASG

インターネット アクセスを拒否する送信 NSG 規則を構成する

  1. 受信 NSG 規則を作成後、[送信セキュリティ規則] を選択します。

  2. AllowInternetOutboundRule 規則に注目してください。 また、この規則は削除できず、優先度が 65001 であることにも注意してください。

  3. [+ 追加] を選択し、インターネットへのアクセスを拒否するアウトバウンド規則を構成します。 終わったら、[追加] を選択します。

    設定
    source [任意]
    ソース ポート範囲 *
    到着地 サービス タグ
    宛先サービス タグ Internet
    サービス カスタム
    宛先ポート範囲 8080
    Protocol [任意]
    アクション Deny
    優先順位 4096
    名前 DenyAnyCustom8080Outbound

タスク 4:パブリックとプライベートの Azure DNS ゾーンを構成する

このタスクでは、パブリックとプライベートの DNS ゾーンを作成して構成します。

パブリック DNS ゾーンを構成する

パブリック ドメイン内のホスト名を解決するように Azure DNS を構成できます。 たとえば、contoso.xyz というドメイン名をドメイン名レジストラーから購入した場合、contoso.com ドメインをホストし、www.contoso.xyz を Web サーバーまたは Web アプリの IP アドレスに解決するように Azure DNS を構成できます。

  1. ポータルで、DNS zones を検索して選択します。

  2. [+ 作成] を選択します。

  3. [基本] タブを構成します。

    プロパティ
    サブスクリプション サブスクリプションを選択します
    リソース グループ az-104-rg4
    名前 contoso.com (予約されている場合は名前を調整します)
    リージョン 米国東部 (情報アイコンを確認します)
  4. [確認および作成][作成] の順に選択します。

  5. DNS ゾーンのデプロイを待ってから、[リソースに移動] を選択します。

  6. [概要] ブレードで、ゾーンに割り当てられている 4 つの Azure DNS ネーム サーバーの名前を確認します。 ネーム サーバーのアドレスのいずれかをコピーします。 後の手順で必要になります。

  7. [+ レコード セット] を選択します。 プライベート名前解決のサポートが必要な仮想ネットワークごとに、仮想ネットワーク リンク レコードを追加します。

    プロパティ
    名前 www
    Type A
    TTL 1
    IP アドレス 10.1.1.4

注: 実際のシナリオでは、Web サーバーのパブリック IP アドレスを入力します。

  1. [OK] を選択し、contoso.comwww という名前の A レコード セットがあることを確認します。

  2. コマンド プロンプトを開いて、次のコマンドを実行します。

    nslookup www.contoso.com <name server name>
    
  3. ホスト名 www.contoso.com が指定した IP アドレスに解決されることを確認します。 これにより、名前解決が正常に機能していることを確認します。

プライベート DNS ゾーンを構成する

プライベート DNS ゾーンは、仮想ネットワーク内の名前解決サービスを提供します。 プライベート DNS ゾーンは、リンクされている仮想ネットワークからのみアクセスでき、インターネットからアクセスすることはできません。

  1. ポータルで、Private dns zones を検索して選択します。

  2. [+ 作成] を選択します。

  3. [プライベート DNS ゾーンの作成] の [基本] タブで、次の表に示すように情報を入力します。

    プロパティ
    サブスクリプション サブスクリプションを選択します
    リソース グループ az-104-rg4
    名前 private.contoso.com (名前を変更する必要がある場合は調整します)
    リージョン 米国東部
  4. [確認および作成][作成] の順に選択します。

  5. DNS ゾーンのデプロイを待ってから、[リソースに移動] を選択します。

  6. [概要] ブレードにネーム サーバー レコードがないことに注意してください。

  7. [設定][DNS の管理] の順に選択します。

  8. [仮想ネットワーク リンク] を選択し、リンクを構成します。

    プロパティ
    リンク名 manufacturing-link
    仮想ネットワーク ManufacturingVnet
  9. [作成] を選択し、リンクが作成されるまで待ちます。

  10. [概要] ブレードで、[+ レコード セット] を選択します。 ここで、プライベート名前解決のサポートが必要な仮想マシンごとにレコードを追加します。

    プロパティ
    名前 sensorvm
    Type A
    TTL 1
    IP アドレス 10.1.1.4

注: 実際のシナリオでは、特定の製造用仮想マシンの IP アドレスを入力します。

リソースのクリーンアップ

自分のサブスクリプションで作業している場合は、お手数ですが、ラボ リソースを削除してください。 これにより、リソースが確実に解放されるため、コストが最小限に抑えられます。 ラボ リソースを削除する最も簡単な方法は、ラボ リソース グループを削除することです。

  • Azure portal で、リソース グループを選び、[リソース グループの削除][リソース グループ名を入力してください] の順に選び、[削除] をクリックします。
  • Azure PowerShell を使用する場合は、「Remove-AzResourceGroup -Name resourceGroupName」と入力します。
  • CLI を使用する場合は、「az group delete --name resourceGroupName」と入力します。

Copilot を使用して学習を拡張する

Copilot は、Azure スクリプト ツールの使用方法を学習するのに役立ちます。 Copilot は、ラボでは対象外の、またはさらに詳しい情報が必要な領域でも役立ちます。 Edge ブラウザーを開き、Copilot (右上) を選択するか、copilot.microsoft.com に移動します。 これらのプロンプトを試すには数分かかります。

  • Azure に仮想ネットワークをデプロイして構成する際のベスト プラクティス トップ 10 を共有します。
  • Azure PowerShell と Azure CLI コマンドを使用して、パブリック IP アドレスと 1 つのサブネットを持つ仮想ネットワークを作成するにはどうすればよいですか。
  • Azure ネットワーク セキュリティ グループの受信および送信規則とその使用方法について説明します。
  • Azure ネットワーク セキュリティ グループと Azure アプリケーション セキュリティ グループの違いは何ですか? これらの各グループを使用する場合の例を共有します。
  • Azure にネットワークをデプロイするときに直面するネットワークの問題をトラブルシューティングする方法の詳細なガイドを提供します。 また、トラブルシューティングのすべての手順で使用される思考プロセスも共有します。

自習トレーニングでさらに学習する

要点

以上でラボは完了です。 このラボの要点は次のとおりです。

  • 仮想ネットワークとは、クラウド内のユーザー独自のネットワークを表したものです。
  • 仮想ネットワークを設計するときは、IP アドレス範囲が重複しないようにすることをお勧めします。 そうすることで問題が減り、トラブルシューティングが簡略化されます。
  • サブネットとは、仮想ネットワーク内の IP アドレスの範囲です。 仮想ネットワークは、整理とセキュリティのために複数のサブネットに分割できます。
  • ネットワーク セキュリティ グループには、ネットワーク トラフィックを許可または拒否するセキュリティ規則が含まれています。 受信と送信の既定の規則があり、ニーズに合わせてカスタマイズできます。
  • アプリケーション セキュリティ グループは、Web サーバーやデータベース サーバーなど、共通の機能を持つサーバーのグループを保護するために使用されます。
  • Azure DNS は DNS ドメインのホスティング サービスであり、名前解決を提供します。 パブリック ドメイン内のホスト名を解決するように Azure DNS を構成できます。 また、プライベート DNS ゾーンを使用して、Azure 仮想ネットワーク内の仮想マシン (VM) に DNS 名を割り当てることもできます。