共用方式為


決定 Azure Lab Services 的防火牆設定

重要

Azure 實驗室服務將於 2027 年 6 月 28 日淘汰。 如需詳細資訊,請參閱淘汰指南

本文將討論如何在 Azure Lab Services 中尋找實驗室所使用的特定公用 IP 位址。 您可以使用這些 IP 位址來設定防火牆設定,並指定輸入和輸出規則,讓實驗室使用者能夠連線到其實驗室虛擬機器。

每個組織或學校都會以最符合其需求的方式設定網路。 有時,這會包括設定防火牆規則,封鎖對自己網路外機器的遠端桌面通訊協定 (RDP) 或安全殼層 (SSH) 連線。 因為 Azure Lab Services 會在公用雲端中執行,所以可能需要另外進行一些設定,才能讓實驗室使用者在從區域網路連線時存取其虛擬機器。

每個實驗室都會使用單一的公用 IP 位址和多個連接埠。 每個實驗室的公用 IP 位址不同。 所有虛擬機器 (範本虛擬機器和實驗室虛擬機器) 都會使用此公用 IP 位址。 實驗室的公用 IP 位址不會變更。 每個虛擬機器都會被指派不同的連接埠號碼。 SSH 連線的連接埠範圍是 4980-4989 和 5000-6999。 RDP 連線的連接埠範圍是 4990-4999 和 7000-8999。 公用 IP 位址和連接埠號碼的組合,可用來將實驗室建立者和實驗室使用者連線到正確的虛擬機器。

如果您使用實驗室帳戶,請參閱使用實驗室帳戶時的實驗室防火牆設定

注意

如果貴組織需要篩選內容,例如為了遵循兒童網際網路保護法案 (CIPA),您必須使用第三方軟體。 如需詳細資訊,請參閱使用實驗室服務進行內容篩選的指引。

尋找實驗室的公用 IP

如果使用可自訂的實驗室,則可在實驗室建立後隨時取得公用 IP 位址。 如果使用不可自訂的實驗室,則實驗室必須已發佈,且容量至少為 1,才能取得實驗室的公用 IP 位址。

您可以使用 Az.LabServices PowerShell 模組來取得實驗室的公用 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."
}

如需使用 Az.LabServices PowerShell 模組的更多範例及其使用方式,請參閱快速入門:使用 PowerShell 和 Azure 模組建立實驗室方案快速入門:使用 PowerShell 和 Azure 模組建立實驗室。 若要進一步瞭解 Az.LabServices PowerShell 模組中的可用 Cmdlet,請參閱 Az.LabServices 參考

推論

您現在可以判斷實驗室的公用 IP 位址。 針對組織的防火牆,您可以建立公用 IP 位址以及連接埠範圍 4980-4989、5000-6999 與 7000-8999 的輸入和輸出規則。 規則更新之後,實驗室使用者就可以存取其虛擬機器,而不會遭到網路防火牆封鎖存取。