次の方法で共有


Azure PowerShell を使用してハイブリッド ネットワークに Azure Firewall をデプロイして構成する

オンプレミス ネットワークを Azure 仮想ネットワークに接続してハイブリッド ネットワークを作成する場合、ご利用の Azure ネットワーク リソースへのアクセスを制御する機能が、全体的なセキュリティ プランの中で重要な役割を果たします。

Azure Firewall を使用すれば、許可および拒否するそれぞれのネットワーク トラフィックを定義するルールを使って、ハイブリッド ネットワークにおけるネットワーク アクセスを制御できます。

この記事では、3 つの仮想ネットワークを作成します。

  • VNet-Hub: ファイアウォールは、この仮想ネットワーク内に存在します。
  • VNet-Spoke: スポーク仮想ネットワークは Azure 上のワークロードを表します。
  • VNet-Onprem: オンプレミス仮想ネットワークはオンプレミス ネットワークを表します。 実際のデプロイでは、仮想プライベート ネットワーク (VPN) 接続または Azure ExpressRoute 接続を使用してそこに接続できます。 わかりやすくするため、この記事では VPN ゲートウェイ接続を使用し、Azure に配置された仮想ネットワークがオンプレミスのネットワークを表します。

ハイブリッド ネットワーク内のファイアウォールを示す図。

代わりに Azure portal を使用してこの記事の手順を完了する場合は、「Azure portal を使用してハイブリッド ネットワークに Azure Firewall をデプロイして構成する」を参照してください。

注意

Azure を操作するには、Azure Az PowerShell モジュールを使用することをお勧めします。 作業を始めるには、「Azure PowerShell をインストールする」を参照してください。 Az PowerShell モジュールに移行する方法については、「AzureRM から Az への Azure PowerShell の移行」を参照してください。

前提条件

この記事では、PowerShell をローカルで実行する必要があります。 Azure PowerShell モジュールをインストールしておく必要があります。 バージョンを確認するには、Get-Module -ListAvailable Az を実行します。 アップグレードする必要がある場合は、Azure PowerShell モジュールのインストールに関するページを参照してください。 PowerShell のバージョンを確認した後、Connect-AzAccount を実行して Azure との接続を作成します。

3 つの重要な要件により、このシナリオが正しく動作します。

  • スポーク サブネット上のユーザー定義ルート (UDR) は、既定のゲートウェイとして Azure Firewall IP アドレスを指します。 このルート テーブルでは、仮想ネットワーク ゲートウェイ のルート伝達を 無効にする 必要があります。

  • ハブ ゲートウェイ サブネット上の UDR は、スポーク ネットワークへの次ホップとしてファイアウォール IP アドレスを指します。

  • Azure Firewall サブネット上に UDR は必要ありません。Border Gateway Protocol (BGP) からルートを学習するためです。

  • AllowGatewayTransit にピアリングするときにを設定しますVNet-HubVNet-Spoke にピアリングする場合は、UseRemoteGateways を設定します。

この記事の「ルートを作成する」セクションでは、これらのルートを作成する方法を示します。

注意

Azure Firewall には、インターネットへの直接接続が必要です。 AzureFirewallSubnet サブネットによってオンプレミス ネットワークへの BGP を介した既定のルートが学習される場合は、Azure Firewall を強制トンネリング モードで構成する必要があります。 これが強制トンネリング モードで再構成できない既存の Azure Firewall インスタンスの場合は、値が NextHopType に設定された 0.0.0.0/0 UDR を Internet サブネットに追加して、インターネットへの直接接続を維持します。

詳細については、「Azure Firewall 強制トンネリング」を参照してください。

直接ピアリングされた仮想ネットワーク間のトラフィックは、UDR が既定のゲートウェイとして Azure Firewall をポイントしている場合でも、直接ルーティングされます。 このシナリオでサブネット間トラフィックをファイアウォールに送信するには、UDR に両方のサブネットのターゲットのサブネット ネットワーク プレフィックスを明示的に含める必要があります。

New-AzFirewall をプライマリ コマンドレットとして使用して、この記事全体を通じてファイアウォールをデプロイおよび構成します。

Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。

変数を宣言する

以下の例では、この記事の値を使って変数を宣言します。 場合によっては、サブスクリプションで機能するために、一部の値を独自の値に置き換える必要があります。 変数を必要に応じて変更したうえでコピーし、PowerShell コンソールに貼り付けます。

$RG1 = "FW-Hybrid-Test"
$Location1 = "East US"

# Variables for the firewall hub virtual network

$VNetnameHub = "VNet-Hub"
$SNnameHub = "AzureFirewallSubnet"
$VNetHubPrefix = "10.5.0.0/16"
$SNHubPrefix = "10.5.0.0/24"
$SNGWHubPrefix = "10.5.1.0/24"
$GWHubName = "GW-hub"
$GWHubpipName = "VNet-Hub-GW-pip"
$GWIPconfNameHub = "GW-ipconf-hub"
$ConnectionNameHub = "hub-to-Onprem"

# Variables for the spoke virtual network

$VnetNameSpoke = "VNet-Spoke"
$SNnameSpoke = "SN-Workload"
$VNetSpokePrefix = "10.6.0.0/16"
$SNSpokePrefix = "10.6.0.0/24"
$SNSpokeGWPrefix = "10.6.1.0/24"

# Variables for the on-premises virtual network

$VNetnameOnprem = "Vnet-Onprem"
$SNNameOnprem = "SN-Corp"
$VNetOnpremPrefix = "192.168.0.0/16"
$SNOnpremPrefix = "192.168.1.0/24"
$SNGWOnpremPrefix = "192.168.2.0/24"
$GWOnpremName = "GW-Onprem"
$GWIPconfNameOnprem = "GW-ipconf-Onprem"
$ConnectionNameOnprem = "Onprem-to-hub"
$GWOnprempipName = "VNet-Onprem-GW-pip"

$SNnameGW = "GatewaySubnet"

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

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

New-AzResourceGroup を使用して、この記事のリソース グループを作成します。

New-AzResourceGroup `
    -Name $RG1 `
    -Location $Location1

New-AzVirtualNetworkSubnetConfigNew-AzVirtualNetwork を使用してサブネットを定義し、ハブ仮想ネットワークを作成します。

$FWsub = New-AzVirtualNetworkSubnetConfig `
    -Name $SNnameHub `
    -AddressPrefix $SNHubPrefix

$GWsub = New-AzVirtualNetworkSubnetConfig `
    -Name $SNnameGW `
    -AddressPrefix $SNGWHubPrefix

$VNetHub = New-AzVirtualNetwork `
    -Name $VNetnameHub `
    -ResourceGroupName $RG1 `
    -Location $Location1 `
    -AddressPrefix $VNetHubPrefix `
    -Subnet $FWsub,$GWsub

New-AzPublicIpAddress を使用して、VPN ゲートウェイのパブリック IP アドレスを要求します。 AllocationMethod値を Dynamic に設定します。これは、Azure がアドレスを動的に割り当てることを意味します。

$gwpip1 = New-AzPublicIpAddress `
    -Name $GWHubpipName `
    -ResourceGroupName $RG1 `
    -Location $Location1 `
    -AllocationMethod Dynamic

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

New-AzVirtualNetworkSubnetConfigNew-AzVirtualNetwork を使用してサブネットを定義し、スポーク仮想ネットワークを作成します。

$Spokesub = New-AzVirtualNetworkSubnetConfig `
    -Name $SNnameSpoke `
    -AddressPrefix $SNSpokePrefix
$GWsubSpoke = New-AzVirtualNetworkSubnetConfig `
    -Name $SNnameGW `
    -AddressPrefix $SNSpokeGWPrefix
$VNetSpoke = New-AzVirtualNetwork `
    -Name $VnetNameSpoke `
    -ResourceGroupName $RG1 `
    -Location $Location1 `
    -AddressPrefix $VNetSpokePrefix `
    -Subnet $Spokesub,$GWsubSpoke

オンプレミス仮想ネットワークを作成する

New-AzVirtualNetworkSubnetConfigNew-AzVirtualNetwork を使用してサブネットを定義し、オンプレミスの仮想ネットワークを作成します。

$Onpremsub = New-AzVirtualNetworkSubnetConfig `
    -Name $SNNameOnprem `
    -AddressPrefix $SNOnpremPrefix
$GWOnpremsub = New-AzVirtualNetworkSubnetConfig `
    -Name $SNnameGW `
    -AddressPrefix $SNGWOnpremPrefix
$VNetOnprem = New-AzVirtualNetwork `
    -Name $VNetnameOnprem `
    -ResourceGroupName $RG1 `
    -Location $Location1 `
    -AddressPrefix $VNetOnpremPrefix `
    -Subnet $Onpremsub,$GWOnpremsub

New-AzPublicIpAddress を使用して、オンプレミスの仮想ネットワーク ゲートウェイのパブリック IP アドレスを要求します。

$gwOnprempip = New-AzPublicIpAddress `
    -Name $GWOnprempipName `
    -ResourceGroupName $RG1 `
    -Location $Location1 `
    -AllocationMethod Dynamic

ファイアウォールを構成してデプロイする

New-AzPublicIpAddressNew-AzFirewall を使用して、ハブ仮想ネットワークにファイアウォールをデプロイします。

# Get a public IP for the firewall
$FWpip = New-AzPublicIpAddress `
    -Name "fw-pip" `
    -ResourceGroupName $RG1 `
    -Location $Location1 `
    -AllocationMethod Static `
    -Sku Standard
# Create the firewall
$Azfw = New-AzFirewall `
    -Name AzFW01 `
    -ResourceGroupName $RG1 `
    -Location $Location1 `
    -VirtualNetworkName $VNetnameHub `
    -PublicIpName fw-pip

# Save the firewall private IP address for future use
$AzfwPrivateIP = $Azfw.IpConfigurations.privateipaddress
$AzfwPrivateIP

New-AzFirewallNetworkRuleNew-AzFirewallNetworkRuleCollection を使用して、ネットワーク ルールを構成します。 次に、 Set-AzFirewall を使用して適用します。

$Rule1 = New-AzFirewallNetworkRule `
    -Name "AllowWeb" `
    -Protocol TCP `
    -SourceAddress $SNOnpremPrefix `
    -DestinationAddress $VNetSpokePrefix `
    -DestinationPort 80

$Rule2 = New-AzFirewallNetworkRule `
    -Name "AllowRDP" `
    -Protocol TCP `
    -SourceAddress $SNOnpremPrefix `
    -DestinationAddress $VNetSpokePrefix `
    -DestinationPort 3389

$Rule3 = New-AzFirewallNetworkRule `
    -Name "AllowPing" `
    -Protocol ICMP `
    -SourceAddress $SNOnpremPrefix `
    -DestinationAddress $VNetSpokePrefix `
    -DestinationPort *

$NetRuleCollection = New-AzFirewallNetworkRuleCollection `
    -Name RCNet01 `
    -Priority 100 `
    -Rule $Rule1,$Rule2,$Rule3 `
    -ActionType "Allow"
$Azfw.NetworkRuleCollections = $NetRuleCollection
Set-AzFirewall -AzureFirewall $Azfw

VPN ゲートウェイを作成して接続する

ハブとオンプレミスの仮想ネットワークは、VPN ゲートウェイ経由で接続します。

ハブ仮想ネットワークの VPN ゲートウェイを作成する

New-AzVirtualNetworkGatewayIpConfig を使用して、ハブ仮想ネットワークの VPN ゲートウェイ構成を作成します。 この構成では、使用するサブネットとパブリック IP アドレスを定義します。

$vnet1 = Get-AzVirtualNetwork `
    -Name $VNetnameHub `
    -ResourceGroupName $RG1
$subnet1 = Get-AzVirtualNetworkSubnetConfig `
    -Name "GatewaySubnet" `
    -VirtualNetwork $vnet1
$gwipconf1 = New-AzVirtualNetworkGatewayIpConfig `
    -Name $GWIPconfNameHub `
    -Subnet $subnet1 `
    -PublicIpAddress $gwpip1

New-AzVirtualNetworkGateway を使用して、ハブ仮想ネットワークの VPN ゲートウェイを作成します。 ネットワーク間構成には、VpnTypeRouteBased 値が必要です。 選択した SKU によっては、VPN ゲートウェイの作成に 45 分以上かかることがあります。

New-AzVirtualNetworkGateway `
    -Name $GWHubName `
    -ResourceGroupName $RG1 `
    -Location $Location1 `
    -IpConfigurations $gwipconf1 `
    -GatewayType Vpn `
    -VpnType RouteBased `
    -GatewaySku basic

オンプレミス仮想ネットワークの VPN ゲートウェイを作成する

New-AzVirtualNetworkGatewayIpConfig を使用して、オンプレミス仮想ネットワークの VPN ゲートウェイ構成を作成します。 この構成では、使用するサブネットとパブリック IP アドレスを定義します。

$vnet2 = Get-AzVirtualNetwork `
    -Name $VNetnameOnprem `
    -ResourceGroupName $RG1
$subnet2 = Get-AzVirtualNetworkSubnetConfig `
    -Name "GatewaySubnet" `
    -VirtualNetwork $vnet2
$gwipconf2 = New-AzVirtualNetworkGatewayIpConfig `
    -Name $GWIPconfNameOnprem `
    -Subnet $subnet2 `
    -PublicIpAddress $gwOnprempip

New-AzVirtualNetworkGateway を使用して、オンプレミス仮想ネットワークの VPN ゲートウェイを作成します。

New-AzVirtualNetworkGateway `
    -Name $GWOnpremName `
    -ResourceGroupName $RG1 `
    -Location $Location1 `
    -IpConfigurations $gwipconf2 `
    -GatewayType Vpn `
    -VpnType RouteBased `
    -GatewaySku basic

VPN 接続を作成する

ハブおよびオンプレミスそれぞれのゲートウェイの間に VPN 接続を作成します。

接続を作成する

Get-AzVirtualNetworkGateway を使用してゲートウェイ オブジェクトを取得し、New-AzVirtualNetworkGatewayConnection を使用して接続を作成します。 この例では共有キーを示していますが、独自の値を使用できます。 重要なのは、共有キーが両方の接続に一致することです。 接続の作成完了までしばらくかかります。

$vnetHubgw = Get-AzVirtualNetworkGateway `
    -Name $GWHubName `
    -ResourceGroupName $RG1
$vnetOnpremgw = Get-AzVirtualNetworkGateway `
    -Name $GWOnpremName `
    -ResourceGroupName $RG1
New-AzVirtualNetworkGatewayConnection `
    -Name $ConnectionNameHub `
    -ResourceGroupName $RG1 `
    -VirtualNetworkGateway1 $vnetHubgw `
    -VirtualNetworkGateway2 $vnetOnpremgw `
    -Location $Location1 `
    -ConnectionType Vnet2Vnet `
    -SharedKey 'AzureA1b2C3'

オンプレミスからハブへの仮想ネットワーク接続を作成します。 この手順は前のものと似ていますが、VNet-Onprem から VNet-Hub への接続を作成する点が異なります。 共有キーが一致することを確認してください。 数分後に接続が確立されます。

New-AzVirtualNetworkGatewayConnection `
    -Name $ConnectionNameOnprem `
    -ResourceGroupName $RG1 `
    -VirtualNetworkGateway1 $vnetOnpremgw `
    -VirtualNetworkGateway2 $vnetHubgw `
    -Location $Location1 `
    -ConnectionType Vnet2Vnet `
    -SharedKey 'AzureA1b2C3'

接続を確認する

接続に成功したことを確認するには、Get-AzVirtualNetworkGatewayConnection コマンドレットを使用します。-Debug は指定しても指定しなくてもかまいません。

次のコマンドレット例を使用します。ただし、値は実際の値に置き換えてください。 メッセージが表示されたら、"A" を選択して "All" を実行します。 この例では、テストする接続の名前が "-Name" で示されています。

Get-AzVirtualNetworkGatewayConnection `
    -Name $ConnectionNameHub `
    -ResourceGroupName $RG1

コマンドレットの完了後、値を確認します。 次の例は、接続状態 Connected と、イングレスおよびエグレスのバイトを示しています。

"connectionStatus": "Connected",
"ingressBytesTransferred": 33509044,
"egressBytesTransferred": 4142431

ハブとスポークの仮想ネットワークをピアリングする

Add-AzVirtualNetworkPeering を使用して、ハブとスポークの仮想ネットワークをピアリングします。

# Peer hub to spoke
Add-AzVirtualNetworkPeering `
    -Name HubtoSpoke `
    -VirtualNetwork $VNetHub `
    -RemoteVirtualNetworkId $VNetSpoke.Id `
    -AllowGatewayTransit

# Peer spoke to hub
Add-AzVirtualNetworkPeering `
    -Name SpoketoHub `
    -VirtualNetwork $VNetSpoke `
    -RemoteVirtualNetworkId $VNetHub.Id `
    -AllowForwardedTraffic `
    -UseRemoteGateways

ルートを作成する

以下のコマンドを使用してこれらのルートを作成します。

  • ファイアウォール ハブ IP アドレスを介したハブ ゲートウェイ サブネットからスポーク サブネットへのルート
  • スポークサブネットからファイアウォール IP アドレスを通る既定ルート

New-AzRouteTableAdd-AzRouteConfig を使用して、ハブ ゲートウェイ サブネットのルート テーブルとルートを作成します。 次に、 Set-AzVirtualNetworkSubnetConfigSet-AzVirtualNetwork を使用してサブネットに関連付けます。

$routeTableHubSpoke = New-AzRouteTable `
    -Name 'UDR-Hub-Spoke' `
    -ResourceGroupName $RG1 `
    -Location $Location1

Get-AzRouteTable `
    -ResourceGroupName $RG1 `
    -Name UDR-Hub-Spoke `
    | Add-AzRouteConfig `
    -Name "ToSpoke" `
    -AddressPrefix $VNetSpokePrefix `
    -NextHopType "VirtualAppliance" `
    -NextHopIpAddress $AzfwPrivateIP `
    | Set-AzRouteTable

Set-AzVirtualNetworkSubnetConfig `
    -VirtualNetwork $VNetHub `
    -Name $SNnameGW `
    -AddressPrefix $SNGWHubPrefix `
    -RouteTable $routeTableHubSpoke `
    | Set-AzVirtualNetwork

New-AzRouteTableAdd-AzRouteConfig を使用して、スポーク サブネットの既定のルート テーブルを作成します。 -DisableBgpRoutePropagation パラメーターは、このルート テーブルの仮想ネットワーク ゲートウェイ ルート伝達を無効にします。 次に、 Set-AzVirtualNetworkSubnetConfigSet-AzVirtualNetwork を使用してサブネットに関連付けます。

$routeTableSpokeDG = New-AzRouteTable `
    -Name 'UDR-DG' `
    -ResourceGroupName $RG1 `
    -Location $Location1 `
    -DisableBgpRoutePropagation

Get-AzRouteTable `
    -ResourceGroupName $RG1 `
    -Name UDR-DG `
    | Add-AzRouteConfig `
    -Name "ToFirewall" `
    -AddressPrefix 0.0.0.0/0 `
    -NextHopType "VirtualAppliance" `
    -NextHopIpAddress $AzfwPrivateIP `
    | Set-AzRouteTable

Set-AzVirtualNetworkSubnetConfig `
    -VirtualNetwork $VNetSpoke `
    -Name $SNnameSpoke `
    -AddressPrefix $SNSpokePrefix `
    -RouteTable $routeTableSpokeDG `
    | Set-AzVirtualNetwork

仮想マシンを作成する

スポーク ワークロードとオンプレミスの仮想マシンを作成し、適切なサブネットに配置します。

ワークロード仮想マシンを作成する

インターネット インフォメーション サービス (IIS) を実行し、パブリック IP アドレスを持たず、ping の受信を許可する仮想マシンをスポーク仮想ネットワークに作成します。 求められたら、仮想マシンのユーザー名とパスワードを入力します。

New-AzNetworkSecurityRuleConfigNew-AzNetworkSecurityGroup を使用して、受信規則とセキュリティ グループを作成します。

# Create inbound network security group rules for ports 3389 and 80
$nsgRuleRDP = New-AzNetworkSecurityRuleConfig `
    -Name Allow-RDP `
    -Protocol Tcp `
    -Direction Inbound `
    -Priority 200 `
    -SourceAddressPrefix * `
    -SourcePortRange * `
    -DestinationAddressPrefix $SNSpokePrefix `
    -DestinationPortRange 3389 `
    -Access Allow
$nsgRuleWeb = New-AzNetworkSecurityRuleConfig `
    -Name Allow-web `
    -Protocol Tcp `
    -Direction Inbound `
    -Priority 202 `
    -SourceAddressPrefix * `
    -SourcePortRange * `
    -DestinationAddressPrefix $SNSpokePrefix `
    -DestinationPortRange 80 `
    -Access Allow

# Create the network security group
$nsg = New-AzNetworkSecurityGroup `
    -ResourceGroupName $RG1 `
    -Location $Location1 `
    -Name NSG-Spoke02 `
    -SecurityRules $nsgRuleRDP,$nsgRuleWeb

New-AzNetworkInterface を使用して NIC を作成し、セキュリティ グループにアタッチします。

$NIC = New-AzNetworkInterface `
    -Name spoke-01 `
    -ResourceGroupName $RG1 `
    -Location $Location1 `
    -SubnetId $VnetSpoke.Subnets[0].Id `
    -NetworkSecurityGroupId $nsg.Id

New-AzVMConfigSet-AzVMOperatingSystemAdd-AzVMNetworkInterface を使用して仮想マシンの構成を定義し、New-AzVM を使用して仮想マシンを作成します。

$VirtualMachine = New-AzVMConfig `
    -VMName VM-Spoke-01 `
    -VMSize "Standard_DS2"
$VirtualMachine = Set-AzVMOperatingSystem `
    -VM $VirtualMachine `
    -Windows `
    -ComputerName Spoke-01 `
    -ProvisionVMAgent `
    -EnableAutoUpdate
$VirtualMachine = Add-AzVMNetworkInterface `
    -VM $VirtualMachine `
    -Id $NIC.Id
$VirtualMachine = Set-AzVMSourceImage `
    -VM $VirtualMachine `
    -PublisherName 'MicrosoftWindowsServer' `
    -Offer 'WindowsServer' `
    -Skus '2016-Datacenter' `
    -Version latest

New-AzVM `
    -ResourceGroupName $RG1 `
    -Location $Location1 `
    -VM $VirtualMachine `
    -Verbose

Set-AzVMExtension を使用して IIS をインストールし、ping を許可する Windows ファイアウォール規則を作成します。

# Install IIS
Set-AzVMExtension `
    -ResourceGroupName $RG1 `
    -ExtensionName IIS `
    -VMName VM-Spoke-01 `
    -Publisher Microsoft.Compute `
    -ExtensionType CustomScriptExtension `
    -TypeHandlerVersion 1.4 `
    -SettingString '{"commandToExecute":"powershell Add-WindowsFeature Web-Server"}' `
    -Location $Location1

# Create a Windows Firewall rule to allow pings
Set-AzVMExtension `
    -ResourceGroupName $RG1 `
    -ExtensionName AllowPing `
    -VMName VM-Spoke-01 `
    -Publisher Microsoft.Compute `
    -ExtensionType CustomScriptExtension `
    -TypeHandlerVersion 1.4 `
    -SettingString '{"commandToExecute":"powershell New-NetFirewallRule -DisplayName \"Allow ICMPv4-In\" -Protocol ICMPv4"}' `
    -Location $Location1

オンプレミス仮想マシンを作成する

New-AzVm を使用して、パブリック IP アドレスへのリモート アクセスを介して接続できる単純な仮想マシンを作成します。 そこから、ファイアウォールを介してオンプレミス サーバーに接続できます。 メッセージが表示されたら、仮想マシンのユーザー名とパスワードを入力します。

New-AzVm `
    -ResourceGroupName $RG1 `
    -Name "VM-Onprem" `
    -Location $Location1 `
    -VirtualNetworkName $VNetnameOnprem `
    -SubnetName $SNNameOnprem `
    -OpenPorts 3389 `
    -Size "Standard_DS2"

注意

パブリック IP が割り当てられていない VM、または内部の Basic Azure Load Balancer のバックエンド プール内にある VM に対しては、Azure によって既定のアウトバウンド アクセス IP が提供されます。 デフォルト送信アクセス IP メカニズムは、構成できないアウトバウンド IP アドレスを提供します。

次のいずれかのイベントが発生すると、既定のアウトバウンド アクセス IP は無効になります。

  • パブリック IP アドレスが VM に割り当てられます。
  • アウトバウンド規則の有無にかかわらず、VM は標準ロード バランサーのバックエンド プール内に配置されます。
  • Azure NAT Gateway リソースが VM のサブネットに割り当てられている。

フレキシブル オーケストレーション モードの仮想マシン スケール セットによって作成された VM には、既定のアウトバウンド アクセスがありません。

Azure のアウトバウンド接続の詳細については、「Azure での既定の送信アクセス」および「送信接続での送信元ネットワーク アドレス変換 (SNAT)を使用する」を参照してください。

ファイアウォールをテストする

  1. VM-spoke-01 仮想マシンのプライベート IP アドレスを取得してメモします。

    $NIC.IpConfigurations.privateipaddress
    
  2. Azure portal から、VM-Onprem 仮想マシンに接続します。

  3. VM-Onprem 上で Windows PowerShell コマンド プロンプトを開き、VM-spoke-01 のプライベート IP に対して ping を実行します。 返信が届く。

  4. VM-Onprem 上で Web ブラウザーを開き、http://<VM-spoke-01 private IP> にアクセスします。 IIS の既定ページが開きます。

  5. VM-Onprem で、プライベート IP アドレスにある VM-spoke-01 へのリモート アクセス接続を開きます。 接続が成功すると、選択したユーザー名とパスワードを使用してサインインできます。

ファイアウォール規則が機能していることを確認したら、次のことができます。

  • スポーク仮想ネットワーク上のサーバーに ping を行う。
  • スポーク仮想ネットワーク上の Web サーバーにブラウザーでアクセスします。
  • RDP を使用してスポーク仮想ネットワーク上のサーバーに接続する。

次に、次のスクリプトを実行して、ファイアウォール ネットワーク ルールのコレクションのアクションを Deny に変更します。

$rcNet = $Azfw.GetNetworkRuleCollectionByName("RCNet01")
$rcNet.action.type = "Deny"

Set-AzFirewall -AzureFirewall $Azfw

既存のリモート アクセス接続をすべて閉じます。 変更されたルールをテストするには、もう一度テストを実行します。 このとき、すべてが失敗するはずです。

リソースをクリーンアップする

次のチュートリアルのためにファイアウォール リソースを保持しておくことができます。 不要になった場合は、FW-Hybrid-Test リソース グループを削除して、ファイアウォール関連のすべてのリソースを削除します。

次のステップ

Azure Firewall のログを監視する