設定 Azure 檔案同步 公用和專用網端點

Azure 檔案儲存體和 Azure 檔案同步提供兩種主要類型的端點,用來存取 Azure 檔案共用:

  • 公用端點,具有公用 IP 位址,並可從全球任何地方存取。
  • 私人端點,存在於虛擬網路內,並具有該虛擬網路位址空間內的私人 IP 位址。

針對 Azure 檔案儲存體 和 Azure 檔案同步,Azure 管理物件(記憶體帳戶和記憶體同步服務)會同時控制公用和私人端點。 記憶體帳戶是一種管理建構,代表您可以部署多個檔案共用的共用記憶體集區,以及其他記憶體資源,例如 Blob 或佇列。 儲存體同步服務是一種管理建構,代表已註冊的伺服器,這是具有與 Azure 檔案同步建立的信任關係的 Windows 檔案伺服器,以及定義同步關聯性拓撲的同步群組。

本文著重於如何設定 Azure 檔案儲存體和 Azure 檔案同步的網路端點。若要深入瞭解如何設定網路端點以直接存取 Azure 檔案共用,而不是藉由 Azure 檔案同步快取內部部署,請參閱 設定 Azure 檔案儲存體網路端點

建議您先閱讀 Azure 檔案同步 網路考慮,再閱讀本操作指南。

必要條件

本文假設:

  • 您有 Azure 訂用帳戶。 如果您還沒有訂用帳戶,則先建立免費帳戶,再開始操作。
  • 您已在想要從內部部署連線的記憶體帳戶中建立 Azure 檔案共用。 若要了解如何建立 Azure 檔案共用,請參閱建立 Azure 檔案共用
  • 您允許將網域流量傳送至下列端點,請參閱 Azure 服務端點

此外:

建立私人端點

建立 Azure 資源的私人端點時,系統會部署下列資源:

  • 私人端點:一個 Azure 資源,表示用於儲存體帳戶或儲存體同步服務的私人端點。 您可以將此視為連接 Azure 資源和網路介面的資源。
  • 網路介面 (NIC):維護指定虛擬網路/子網路中私人 IP 位址的網路介面。 這是當您部署虛擬機 (VM) 時所部署的完全相同資源,但是不是指派給 VM,而是由私人端點所擁有。
  • 私人 DNS 區域:如果您之前從未對此虛擬網路部署過私人端點,系統將會為虛擬網路部署新的私人 DNS 區域。 此 DNS 區域中的 Azure 資源也會建立 DNS A 記錄。 如果您已在此虛擬網路中部署私人端點,將會在現有的 DNS 區域中新增一筆 Azure 資源記錄。 部署 DNS 區域是選擇性的,但強烈建議您簡化所需的 DNS 管理。

注意

本文使用適用於 Azure 公用區域的 DNS 尾碼、適用於儲存體帳戶的 core.windows.net,以及儲存體同步服務的 afs.azure.net。 這也適用於 Azure 主權雲端,例如 Azure US Government 雲端,只需將適當的後綴取代為您的環境即可。

建立儲存體帳戶的私人端點

瀏覽至您想要為其建立私人端點的儲存體帳戶。 在儲存體帳戶的目錄中,選取 [網路]、[私人端點連線] 和 [+ 私人端點],以建立新的私人端點。

記憶體帳戶目錄中私人端點連線項目的螢幕快照。

產生的精靈會有多個頁面需要完成。

在 [基本] 刀鋒視窗中,為您的私人端點選取所需的訂用帳戶、資源群組、名稱、網路介面名稱和區域。 您可以任意選取這些項目,而不一定要與儲存體帳戶相符,但您建立私人端點的所在區域,必須與您要在其中建立私人端點的虛擬網路相同。 然後選取 [下一步:資源]

顯示如何為新的私人端點提供項目和實例詳細數據的螢幕快照。

在 [資源] 刀鋒視窗中,選取目標子資源的 [檔案]。 然後選取 [下一步:虛擬網路]

此螢幕快照顯示如何選取您想要使用新私人端點連線到的資源。

[虛擬網路] 刀鋒視窗可讓您選取要新增私人端點的特定虛擬網路和子網路。 為新的私人端點選取動態或靜態 IP 位址配置。 若選擇靜態,則您也必須提供名稱和私人 IP 位址。 您也可以選擇性指定應用程式安全性群組。 完成後,選取 [下一步:DNS]

此螢幕快照顯示如何提供新私人端點的虛擬網路、子網和IP位址詳細數據。

[DNS] 刀鋒視窗包括整合私人端點和私人 DNS 區域的資訊。 確定訂用帳戶和資源群組正確,然後選取 [下一步:標籤]

顯示如何將私人端點與私人 DNS 區域整合的螢幕快照。

您可以選擇性地套用標籤來分類您的資源,例如將 Environment 名稱和 Test 值套用到所有測試資源。 視需要輸入名稱/值組,然後選取 [下一步:檢閱 + 建立]

此螢幕快照顯示如何選擇性地以名稱/值組標記您的私人端點,以方便分類。

按一下 [檢閱 + 建立] 以建立私人端點。

如果您的虛擬網路內有 VM,或已如設定 Azure 檔案儲存體 的 DNS 轉送中所述設定 DNS 轉送,您可以執行 PowerShell、命令行或終端機的下列命令來測試私人端點是否已正確設定(適用於 Windows、Linux 或 macOS)。 您必須將 <storage-account-name> 取代為適當的儲存體帳戶名稱:

nslookup <storage-account-name>.file.core.windows.net

如果一切順利運作,您應該會看到下列輸出,其中 192.168.0.5 是虛擬網路中私人端點的私人IP位址(Windows 顯示的輸出):

Server:  UnKnown
Address:  10.2.4.4

Non-authoritative answer:
Name:    storageaccount.privatelink.file.core.windows.net
Address:  192.168.0.5
Aliases:  storageaccount.file.core.windows.net

建立儲存體同步服務私人端點

在 Azure 入口網站頂端的搜尋列中輸入 Private Link,瀏覽至 Private Link 中心。 在 Private Link 中心的目錄中,選取 [私人端點],然後 [+ 新增] 以建立新的私人端點。

私人連結中心的螢幕快照

產生的精靈會有多個頁面需要完成。

在 [基本] 刀鋒視窗中,為您的私人端點選取所需的資源群組、名稱和區域。 這些可以是您想要的任何內容,而不一定要與儲存體同步服務相符,但您建立私人端點的所在區域,必須與您要在其中建立私人端點的虛擬網路相同。

建立私人端點區段 [基本] 區段的螢幕快照

在 [資源] 索引標籤上,選取 [連線到我目錄中的 Azure 資源] 的選項按鈕。 在 [資源類型] 下,針對資源類型選取 [Microsoft.StorageSync/storageSyncServices]

[設定] 刀鋒視窗可讓您選取要新增私人端點的特定虛擬網路和子網路。 選取與您在上述儲存體帳戶中使用的相同虛擬網路。 [設定] 刀鋒視窗也包含用來建立/更新私人 DNS 區域的資訊。

選取 [檢閱 + 建立] 以建立私人端點。

您可以執行下列 PowerShell 命令,測試您的私人端點是否已正確設定。

$privateEndpointResourceGroupName = "<your-private-endpoint-resource-group>"
$privateEndpointName = "<your-private-endpoint-name>"

Get-AzPrivateEndpoint `
        -ResourceGroupName $privateEndpointResourceGroupName `
        -Name $privateEndpointName `
        -ErrorAction Stop | `
    Select-Object -ExpandProperty NetworkInterfaces | `
    Select-Object -ExpandProperty Id | `
    ForEach-Object { Get-AzNetworkInterface -ResourceId $_ } | `
    Select-Object -ExpandProperty IpConfigurations | `
    Select-Object -ExpandProperty PrivateLinkConnectionProperties | `
    Select-Object -ExpandProperty Fqdns | `
    ForEach-Object { Resolve-DnsName -Name $_ } | `
    Format-List

如果一切正常運作,您應該會看到下列輸出,其中 192.168.1.4192.168.1.5192.168.1.6192.168.1.7 是指派給私人端點的私人IP位址:

Name     : mysssmanagement.westus2.afs.azure.net
Type     : CNAME
TTL      : 60
Section  : Answer
NameHost : mysssmanagement.westus2.privatelink.afs.azure.net


Name       : mysssmanagement.westus2.privatelink.afs.azure.net
QueryType  : A
TTL        : 60
Section    : Answer
IP4Address : 192.168.1.4

Name     : myssssyncp.westus2.afs.azure.net
Type     : CNAME
TTL      : 60
Section  : Answer
NameHost : myssssyncp.westus2.privatelink.afs.azure.net


Name       : myssssyncp.westus2.privatelink.afs.azure.net
QueryType  : A
TTL        : 60
Section    : Answer
IP4Address : 192.168.1.5

Name     : myssssyncs.westus2.afs.azure.net
Type     : CNAME
TTL      : 60
Section  : Answer
NameHost : myssssyncs.westus2.privatelink.afs.azure.net


Name       : myssssyncs.westus2.privatelink.afs.azure.net
QueryType  : A
TTL        : 60
Section    : Answer
IP4Address : 192.168.1.6

Name     : mysssmonitoring.westus2.afs.azure.net
Type     : CNAME
TTL      : 60
Section  : Answer
NameHost : mysssmonitoring.westus2.privatelink.afs.azure.net


Name       : mysssmonitoring.westus2.privatelink.afs.azure.net
QueryType  : A
TTL        : 60
Section    : Answer
IP4Address : 192.168.1.7

限制公用端點的存取

您可以限制對儲存體帳戶和儲存體同步服務的公用端點的存取。 藉由確保只接受來自已核准位置的網路封包,限制對公用端點的存取可提供額外的安全性。

限制對儲存體帳戶公用端點的存取

公用端點的存取限制是使用儲存體帳戶防火牆設定來完成。 一般而言,大部分的儲存體帳戶防火牆原則都會將網路存取限制在一或多個虛擬網路內。 有兩種方法可以將對於儲存體帳戶的存取限制在虛擬網路內:

  • 建立儲存體帳戶的一或多個私人端點 並停用公用端點的存取權。 這可確保只有來自所要虛擬網路內的流量,才能存取儲存體帳戶內的 Azure 檔案共用。
  • 將公用端點限制在一或多個虛擬網路內。 其運作方式是使用稱為「服務端點」的虛擬網路功能。 當您透過服務端點限制記憶體帳戶的流量時,您仍會透過公用IP位址存取記憶體帳戶。

注意

您必須在儲存體帳戶上選取 [允許受信任服務清單上的 Azure 服務存取此儲存體帳戶] 例外狀況,以允許信任的第一方 Microsoft 服務 (例如 Azure 檔案同步) 來存取儲存體帳戶。 若要深入瞭解,請參閱 [授與受信任 Azure 服務的存取權]

授與受信任 Azure 服務的存取權,並停用對儲存體帳戶公用端點的存取權

當公用端點的存取權停用時,仍然可以透過其私人端點來存取儲存體帳戶。 否則,以儲存體帳戶公用端點為目標的有效要求將會遭到拒絕。

瀏覽至您想要對其限制所有公用端點存取的儲存體帳戶。 在儲存體帳戶的目錄中,選取 [網路]

在頁面頂端,選取 [已從選取的虛擬網路和 IP 位址啟用] 選項按鈕。 這會將一些設定取消隱藏,以控制公用端點的限制。 請選取 [允許受信任服務清單上的 Azure 服務存取此儲存體帳戶],允許受信任的第一方 Microsoft 服務 (例如 Azure 檔案同步) 存取儲存體帳戶。

[網络] 刀鋒視窗的螢幕快照,其中包含停用記憶體帳戶公用端點存取權的必要設定。

將存取權授與受信任的 Azure 服務,並將儲存體帳戶公用端點的存取權限制為特定虛擬網路

當您將記憶體帳戶限制為特定虛擬網路時,您會允許來自指定虛擬網路內的公用端點要求。 其運作方式是使用稱為「服務端點」的虛擬網路功能。 這可以搭配使用或不搭配使用私人端點。

瀏覽至您想要將其公用端點限制為特定虛擬網路的儲存體帳戶。 在儲存體帳戶的目錄中,選取 [網路]

在頁面頂端,選取 [已從選取的虛擬網路和 IP 位址啟用] 選項按鈕。 這會將一些設定取消隱藏,以控制公用端點的限制。 選取 [+ 新增現有的虛擬網路],選取應允許透過公用端點存取儲存體帳戶的特定虛擬網路。 選取虛擬網路和該虛擬網路的子網路,然後選取 [啟用]

請選取 [允許受信任服務清單上的 Azure 服務存取此儲存體帳戶],允許受信任的第一方 Microsoft 服務 (例如 Azure 檔案同步) 存取儲存體帳戶。

[網络] 刀鋒視窗的螢幕快照,其中包含允許透過公用端點存取記憶體帳戶的特定虛擬網路。

停用儲存體同步服務公用端點的存取權

Azure 檔案同步可讓您僅透過私人端點來限制對特定虛擬網路的存取權;Azure 檔案同步不支援服務端點,以限制對特定虛擬網路的公用端點的存取權。 這表示儲存體同步服務的公用端點的兩個狀態分別為 [已啟用] 和 [已停用]

重要

您必須先建立私人端點,才能停用公用端點的存取權。 如果公用端點已停用且未設定私人端點,則同步無法運作。

若要停用對儲存體同步服務公用端點的存取權,請遵循下列步驟:

  1. 登入 Azure 入口網站
  2. 瀏覽至儲存體同步服務,然後從左側導覽列中選取 [設定] > [網路]
  3. 在 [允許存取來源] 下,選取 [僅限私人端點]
  4. 從 [私人端點連線] 清單中選取私人端點。

Azure 原則

Azure 原則可協助您強制執行組織標準,並針對這些標準大規模評估合規性。 Azure 檔案儲存體和 Azure 檔案同步會公開幾個實用的稽核與補救網路原則,以協助您監視和自動化部署。

原則會稽核您的環境,並在您的儲存體帳戶或儲存體同步服務與所定義的行為不同時發出警示。 例如,當您的原則設定為停用公用端點時公用端點已啟用。 修改/部署原則會採取進一步的步驟,並主動修改資源(例如記憶體同步服務)或部署資源(例如私人端點)以配合原則。

下列預先定義的原則適用於 Azure 檔案儲存體和 Azure 檔案同步:

動作 服務 Condition 原則名稱
Audit Azure 檔案 儲存體帳戶的公用端點已啟用。 如需詳細資訊,請參閱授與受信任 Azure 服務的存取權,並停用對儲存體帳戶公用端點的存取權 儲存體帳戶應限制網路存取
Audit Azure 檔案同步 儲存體同步服務的公用端點已啟用。 如需詳細資訊,請參閱停用對儲存體同步服務公用端點的存取 應為 Azure 檔案同步停用公用網路存取
Audit Azure 檔案 儲存體帳戶需要至少一個私人端點。 如需詳細資訊,請參閱建立儲存體帳戶私人端點 儲存體帳戶應使用私人連結連線
Audit Azure 檔案同步 儲存體同步服務需要至少一個私人端點。 如需詳細資訊,請參閱建立儲存體同步服務私人端點 Azure 檔案同步應使用私人連結
Modify Azure 檔案同步 停用儲存體同步服務的公用端點。 修改 - 設定 Azure 檔案同步以停用公用網路存取
部署 Azure 檔案同步 部署儲存體同步服務的私人端點。 使用私人端點設定 Azure 檔案同步
部署 Azure 檔案同步 將 A 記錄部署至 privatelink.afs.azure.net DNS 區域。 設定 Azure 檔案同步以使用私人 DNS 區域

設定私人端點部署原則

若要設定私人端點部署原則,請移至 Azure 入口網站,並搜尋 原則。 Azure 原則中心應該是頂層結果。 瀏覽至原則中心目錄中的 [製作 > 定義]。 產生的 [定義] 窗格包含所有 Azure 服務中的預先定義原則。 若要尋找特定的原則,請選取 [類別] 篩選條件中的 [儲存體] 類別,或搜尋設定具有私人端點的 Azure 檔案同步。 選取 [...],然後選取 [指派] 以從定義建立新的原則。

指派原則精靈的 [基本] 刀鋒視窗可讓您設定範圍、資源或資源群組排除清單,以及為您的原則提供易記名稱,以協助您加以區別。 您不需要修改這些原則,原則就能運作,但如果您想要進行修改,也可以這麼做。 選取 [下一步] 以前進至 [參數] 頁面。

在 [參數] 刀鋒視窗上,選取 [privateEndpointSubnetId] 下拉式清單旁的 [...],以選取要為儲存體同步服務資源部署私人端點的虛擬網路和子網路。 產生的精靈可能需要幾秒鐘才能在您的訂用帳戶中載入可用的虛擬網路。 為您的環境選取適當的虛擬網路/子網路,然後按一下 [選取]。 選取 [下一步] 以前進至 [補救] 刀鋒視窗。

若要在找到不含私人端點的儲存體同步服務時部署私人端點,您必須在 [補救] 頁面上選取 [建立補救工作]。 最後,選取 [檢閱 + 建立] 以檢查原則指派,然後選取 [建立] 來建立工作。

產生的原則指派會定期執行,而且在建立之後可能不會立即執行。

另請參閱