Azure Lab Services のファイアウォール設定を決定する

この記事では、Azure Lab Services のラボで使用される特定のパブリック IP アドレスを検索する方法について説明します。 これらの IP アドレスを使用してファイアウォール設定を構成し、受信規則と送信規則を指定して、ラボ ユーザーがラボ仮想マシンに接続できるようにします。

各organizationまたは学校は、ニーズに最適な方法で独自のネットワークを構成します。 時にはそれに、所有するネットワークの外にあるマシンに対するリモート デスクトップ プロトコル (RDP) 接続や Secure Shell (SSH) 接続をブロックするファイアウォール規則の設定が含まれています。 Azure Lab Services はパブリック クラウドで実行されるため、ラボ ユーザーがローカル ネットワークから接続するときに VM にアクセスできるようにするために、追加の構成が必要な場合があります。

各ラボで、単一のパブリック IP アドレスと複数のポートを使用します。 テンプレート VM とラボ VM の両方のすべての VM で、このパブリック IP アドレスが使用されます。 ラボのパブリック IP アドレスは変更されません。 各 VM には異なるポート番号が割り当てられます。 SSH 接続のポート範囲は 4980 から 4989 と 5000 から 6999 です。 RDP 接続のポート範囲は 4990 から 4999 と 7000 から 8999 です。 パブリック IP アドレスとポート番号の組み合わせを使用して、ラボ作成者とラボ ユーザーを正しい VM に接続します。

2022 年 8 月の更新プログラムより前のバージョンの Azure Lab Services を使用している場合は、「ラボ アカウントを使用するときのラボのファイアウォール設定」を参照してください。

重要

各ラボには、異なるパブリック IP アドレスがあります。

Note

子供のインターネット保護法 (CIPA) への準拠など、organizationがコンテンツ フィルター処理を実行する必要がある場合は、サード パーティ製ソフトウェアを使用する必要があります。 詳細については、Lab Services を使用したコンテンツ フィルタリングに関するガイダンスを参照してください。

ラボのパブリック IP を見つける

カスタマイズ可能なラボを使用している場合は、ラボの作成後にいつでもパブリック IP アドレスを取得できます。 カスタマイズできないラボを使用している場合は、ラボを公開し、ラボのパブリック IP アドレスを取得するには、少なくとも 1 の容量が必要です。

PowerShell モジュールを Az.LabServices 使用して、ラボのパブリック IP アドレスを取得できます。

$ResourceGroupName = "MyResourceGroup"
$LabName = "MyLab"
$LabPublicIP = $null

$lab =  Get-AzLabServicesLab -Name $LabName -ResourceGroupName $ResourceGroupName
if (-not $lab){
    Write-Error "Could find lab $($LabName) in resource group $($ResourceGroupName)."
}

if($lab.NetworkProfilePublicIPId){
    #Lab is using advance networking
    # Get public IP from networking properties
    $LabPublicIP = Get-AzResource -ResourceId $lab.NetworkProfilePublicIPId | Get-AzPublicIpAddress | Select-Object -expand IpAddress
}else{
    #Get first VM from lab
    # If customizable lab, this is the template VM
    # If non-customizable lab, this is the first VM published.
    $vm =  $lab | Get-AzLabServicesVM | Select -First 1

    if ($vm){
        if($vm.ConnectionProfileSshAuthority){
            $connectionAuthority = $vm.ConnectionProfileSshAuthority.Split(":")[0]
        }else{
            $connectionAuthority = $vm.ConnectionProfileRdpAuthority.Split(":")[0]
        }
        $LabPublicIP = [System.Net.DNS]::GetHostByName($connectionAuthority).AddressList.IPAddressToString | Where-Object {$_} | Select -First 1

    }
}

if ($LabPublicIP){
    Write-Output "Public IP for $($lab.Name) is $LabPublicIP."
}else{
    Write-Error "Lab must be published to get public IP address."
}

PowerShell モジュールの使用 Az.LabServices 例とその使用方法の詳細については、「 クイック スタート: PowerShell と Azure モジュールを使用してラボ プランを作成 する」および 「クイック スタート: PowerShell と Azure モジュールを使用してラボを作成する」を参照してください。 Az.LabServices PowerShell モジュールで使用できるコマンドレットの詳細については、「 Az.LabServices リファレンス」を参照してください。

まとめ

ラボのパブリック IP アドレスを決定できるようになりました。 パブリック IP アドレスとポート範囲 4980 から 4989、5000 から 6999、7000 から 8999 の範囲に対して、organizationのファイアウォールの受信規則と送信規則を作成できます。 規則が更新されると、ラボ ユーザーはネットワーク ファイアウォールがアクセスをブロックせずに VM にアクセスできるようになります。