配置网络终结点以访问 Azure 文件共享

Azure 文件存储提供两种主要类型的终结点用于访问 Azure 文件共享:

  • 公共端点,拥有公网IP地址。 访问取决于协议和网络规则。 NFS客户端使用来自允许子网的服务端点。
  • 专用终结点存在于某个虚拟网络中,拥有该虚拟网络地址空间内的一个专用 IP 地址。

本文介绍如何配置专用终结点并限制公共终结点访问。 经典文件共享指南同样适用于与 Azure 文件同步 配合使用的存储账户,后者支持经典的 SMB 文件共享。 关于文件同步网络需求,请参见配置 Azure 文件同步 代理和防火墙设置。

在阅读本指南之前,请查看Azure 文件存储网络注意事项。

先决条件

创建和配置端点

可以通过为经典共享配置存储帐户来限制对文件共享的网络访问。 要限制对虚拟网络的访问,请采用以下方法之一:

创建专用终结点

为文件共享创建专用终结点时,请部署以下Azure资源:

  • 专用终结点:表示专用终结点的Azure资源。 可以将此资源视为目标资源与网络接口之间的连接器。
  • 网络接口(NIC):维护指定虚拟网络和子网中的专用 IP 地址的网络接口。 此资源与部署虚拟机时部署的资源相同。 不过,它不是分配给 VM,而是由专用终结点拥有。
  • 专用域名系统(DNS)区域:如果以前未为此虚拟网络部署专用终结点,则会为虚拟网络部署新的专用 DNS 区域。 此 DNS 区域中还会创建 DNS 记录。 如果已在此虚拟网络中部署专用终结点,则会向现有 DNS 区域添加新记录。 部署 DNS 区域是可选操作。 不过,强烈建议执行此操作;如果使用 AD 服务主体或 FileREST API 装载 Azure 文件共享,则必须执行此操作。

转到要在其中创建专用终结点的资源组。 选择 “+ 创建”,并搜索 专用终结点。 选择专用终结点资源,然后选择“ 创建”。

向导有多个页面要完成。

在 “基本信息 ”页中,选择专用终结点的订阅、资源组、名称、网络接口名称和区域。 必须在要在其中创建专用终结点的虚拟网络所在的同一区域中创建专用终结点。 然后选择“下一步: 资源”。

显示如何为新建专用终结点提供项目和实例详细信息的屏幕截图。 在资源页上,从资源类型的下拉菜单中选择Microsoft.Storage/storageAccounts。 在 资源中,选择你想连接的具体存储账户。 对于 目标子资源,选择 file。 然后选择“下一步: 虚拟网络”。

显示如何为新的专用终结点选择资源类型、资源和目标子资源的屏幕截图。 “虚拟网络”页允许选择要向其添加专用终结点的特定virtual network和子网。 为新的专用终结点选择动态或静态 IP 地址分配。 如果选择静态,则还需要提供名称和专用 IP 地址。

DNS 页包含用于将专用终结点与专用 DNS 区域集成的信息。 确保订阅和资源组正确,然后选择“ 下一步:标记”。

截图展示了如何为新私有端点提供虚拟网络、子网和IP地址详细信息。

可以选择性地应用标记来对资源进行分类,如将名称“环境”和值“测试”应用于所有测试资源。 输入名称/值对(如果需要),然后选择“下一步: 查看 + 创建”。

屏幕截图显示如何可选择使用名称/值对来标记私有终结点,以便于分类。

选择“创建”以创建专用终结点。

验证连接性

可以从虚拟网络中的客户端运行这些检查,或者从已配置 DNS 以解析私有终结点的连接网络中运行这些检查。 挂载共享时使用原始主机名,而不是 privatelink 名称。

在 Windows、Linux 或 macOS 上,通过 PowerShell、命令行或终端运行以下 DNS 查询。

用适当的存储帐户名称替换 <storage-account-name>:

nslookup <storage-account-name>.file.core.chinacloudapi.cn

如果成功,您将看到类似于以下内容的输出,其中 192.168.0.5 是虚拟网络中的专用终结点的专用 IP 地址(以下显示的是 Windows 上的输出)。

Server:  UnKnown
Address:  10.2.4.4

Non-authoritative answer:
Name:    storageaccount.privatelink.file.core.chinacloudapi.cn
Address:  192.168.0.5
Aliases:  storageaccount.file.core.chinacloudapi.cn

限制公共终结点访问

你可以禁用公共网络访问,或者在选定的网络上保持开放。 专用终结点继续工作。

在存储帐户上配置公共访问权限。 经典文件共享也可以使用 网络安全边界,但受到其协议限制。 在强制模式下,安全边界会阻止通过服务端点的 NFS 流量。

禁止对公共终结点的访问

当你禁用公共网络访问时,客户端无法通过公共端点进行连接,包括通过服务端点进行的连接。 客户端仍可通过专用终结点连接。 这个设置并不限制客户端的出站流量。

Note

禁用公用网络访问后,现有受信任的服务和资源实例例外仍有效。 如果您只需要通过私有端点访问,请查看这些例外。 参见 Azure 存储 网络安全限制。

若要禁用公用网络访问,请执行以下步骤:

  1. 转到要限制对公共终结点的所有入站访问的存储账户。
  2. 从服务菜单中的“安全性 + 网络”下,选择“网络”。
  3. 在 “公用网络访问”下,选择“ 禁用”。
  4. 选择“保存”。

一张显示如何在存储账户上禁用公共网络访问权限的截图。

限制对公共端点的访问,仅限特定网络

为了允许来自选定子网的客户端,保持公共网络访问为开启,在这些子网上启用服务端点,并将子网添加到资源的网络规则中。 你可以使用服务端点,也可以不带私有端点。 经典的SMB和FileRest访问也可以使用IP地址规则;NFS访问需要允许的子网。

PowerShell和CLI的示例假设公共网络访问已经被启用。 要配置该端点,请参见 “在子网启用服务端点”。

请通过这些步骤将公共终结点限制为特定网络。

  1. 转到要将公共终结点限制为仅供特定网络访问的存储帐户。
  2. 从服务菜单中的“安全性 + 网络”下,选择“网络”。
  3. 在 “公用网络访问范围”下, 从选定的虚拟网络和 IP 地址中选择“已启用”。 此选项会显示多个用于控制对公共终结点访问限制的设置。
  4. 在 虚拟网络中,选择 添加虚拟网络>添加现有虚拟网络 以选择应允许通过公共端点访问存储账户的虚拟网络。 选择虚拟网络并为该虚拟网络选择子网,然后选择“启用”。 如果你想为此创建一个新的虚拟网络,请选择 添加虚拟网络>,添加新的虚拟网络,提供详细信息,然后选择 创建。
  5. 对于SMB或FileREST访问,使用 IPv4地址 指定你希望允许的公共互联网IP地址。 IP地址规则不会授予NFS访问权。
  6. 如果服务集成需要可信服务访问,请选择“允许受信任的 Microsoft 服务访问此资源”复选框。
  7. 选择“保存”。

截图展示了如何限制存储账户的公共端点到选定的网络。

限制对特定存储帐户的出站访问

文件共享的网络规则控制入站访问。 它们不限制客户端可以访问哪些其他存储资源。 对于经典文件共享,你可以选择使用 服务端点策略 来限制子网内客户端可通过服务端点访问哪些存储帐户。 该策略对绕过 Azure 防火墙 和网络虚拟设备的流量的目标地址进行过滤。 它不会限制其他出站路径,也不会取代目的地的网络规则和授权要求。 欲了解更多信息,请参见 用服务端点策略限制出站访问。

服务端点策略为关联子网中的客户端定义了允许的存储目标。 它阻止这些客户端通过服务端点访问其他存储账户。 请记住以下几点:

  • 在将策略与子网关联之前,先添加子网中的客户端使用的所有存储账户。 该列表包括子网中其他工作负载使用的存储账户。
  • 服务端点策略必须与虚拟网络处于同一区域和订阅范围内。
  • 一个策略只能包含一个针对 Microsoft.Storage 服务的策略定义。 为了允许更多存储账户,将它们的资源ID添加到相同的策略定义中。 你也可以允许资源组或订阅中的所有存储账户。
  • 在你将策略与子网关联后,该策略适用于发往所有区域中存储帐户的流量。
  • 这些步骤假设子网没有服务端点策略。 如果已经关联了策略,请审查并更新这些策略,而不是替换这些关联关系。 PowerShell和CLI的示例如果发现已有关联就会停止。

要创建服务端点策略并将其关联到子网,请遵循以下步骤。 有关详细步骤,请参见 创建和关联服务端点策略。

  1. 在 Azure 门户顶部的搜索框中,输入服务端点策略。 在搜索结果中选择服务终结点策略。
  2. 选择 + 新建。
  3. 在 基础 标签页中,选择虚拟网络的订阅和地区。 选择资源组,输入该策略的名称。
  4. 选择下一步:策略定义。
  5. 选择 + 添加资源。 选择服务,选择Microsoft.Storage。 对于 范围,选择 单个账户,然后选择包含你的文件共享项的存储账户。 选择 并添加。 对子网中客户端使用的每个存储账户重复此步骤。
  6. 选择查看 + 创建,然后选择创建。
  7. 转到新的服务端点策略。 在服务菜单中,在 设置中选择 关联子网。
  8. 选择 + 编辑子网关联,选择虚拟网络和子网,然后选择 应用。

另请参阅