教程:使用 Azure 专用终结点连接到存储帐户

Azure 专用终结点是 Azure 中专用链接的构建基块。 它使 Azure 资源(例如虚拟机 (VM))能够以私密且安全的方式来与 Azure 存储等专用链接资源通信。

学习教程期间所创建资源的示意图。

在本教程中,你将了解如何执行以下操作:

  • 创建虚拟网络和 Bastion 主机。
  • 创建存储帐户,并禁用公共访问。
  • 创建存储帐户的专用终结点。
  • 创建虚拟机。
  • 测试到存储帐户专用终结点的连接。

先决条件

  • Azure 订阅。 如果没有 Azure 订阅,请在开始前创建一个试用版订阅

登录 Azure

登录 Azure 门户

创建虚拟网络和 Azure Bastion 主机

以下过程创建包含资源子网、Azure Bastion 子网和 Bastion 主机的虚拟网络:

  1. 在门户中,搜索并选择“虚拟网络”。

  2. 在“虚拟网络”页面上,选择“+ 创建”。

  3. 创建虚拟网络基本信息选项卡上输入或选择以下信息:

    设置
    项目详细信息
    订阅 选择订阅。
    资源组 选择“新建”。
    输入 test-rg 作为名称
    选择“确定”
    实例详细信息
    名称 输入“vnet-1”。
    区域 选择“(亚太)中国东部 2”。

    用于在 Azure 门户中创建虚拟网络的“基本信息”选项卡的屏幕截图。

  4. 选择“下一步”,转到“安全性”选项卡。

  5. 在“Azure Bastion”部分,选择“启用 Bastion”

    Bastion 使用浏览器通过安全外壳 (SSH) 或远程桌面协议 (RDP),通过使用其专用 IP 地址连接虚拟网络中的虚拟机。 虚拟机不需要公共 IP 地址、客户端软件或特殊配置。 有关详细信息,请参阅什么是 Azure Bastion?

    注意

    每小时定价从部署 Bastion 的时刻开始计算,无论出站数据的使用情况如何。 有关详细信息,请参阅定价SKU。 如果要将 Bastion 部署为教程或测试的一部分,建议在使用完此资源后将其删除。

  6. 在“Azure Bastion”中,输入或选择以下信息:

    设置
    Azure Bastion 主机名 输入“堡垒”。
    Azure Bastion 公共 IP 地址 选择“创建公共 IP 地址”。
    在“名称”中输入 public-ip-bastion
    选择“确定”

    用于在 Azure 门户中创建虚拟网络时启用 Azure Bastion 主机的选项的屏幕截图。

  7. 选择下一步,转到IP 地址选项卡。

  8. 在“子网”的地址空间框中,选择“默认”子网。

  9. 编辑子网中,输入或选择以下信息:

    设置
    子网详细信息
    子网模板 保留默认值“默认”。
    名称 输入“subnet-1”。
    开始地址 保留默认值“10.0.0.0”。
    子网大小 保留默认值“/24 (256 个地址)”。

    子网配置详细信息的屏幕截图。

  10. 选择 添加

  11. 在窗口底部选择“查看 + 创建”。 验证通过后,选择“创建”。

创建存储帐户

为本文中的步骤创建 Azure 存储帐户。 如果已有存储帐户,可以改为使用它。

  1. 在门户顶部的搜索框中,输入“存储帐户”。 在搜索结果中选择“存储帐户”。

  2. 选择“+ 新建”。

  3. 在“创建存储帐户”的“基本信息”选项卡中,输入或选择以下信息:

    设置
    项目详细信息
    订阅 选择 Azure 订阅。
    资源组 选择“test-rg”。
    实例详细信息
    存储帐户名称 输入 storage1。 如果该名称不可用,请输入一个唯一的名称。
    位置 选择“(亚太)中国北部 3”。
    性能 保留默认值“标准”。
    冗余 选择“本地冗余存储(LRS)”。
  4. 选择“查看”。

  5. 选择“创建” 。

禁用存储帐户的公共访问

在创建专用终结点之前,建议禁用对存储帐户的公共访问。 使用以下步骤禁用对存储帐户的公共访问。

  1. 在门户顶部的搜索框中,输入“存储帐户”。 在搜索结果中选择“存储帐户”。

  2. 选择 storage1 或现有存储帐户的名称。

  3. 在“安全性 + 网络”中,选择“网络”。

  4. 在“公用网络访问”的“防火墙和虚拟网络”选项卡中,选择“已禁用”。

  5. 选择“保存” 。

创建专用终结点

  1. 在门户顶部的搜索框中,输入“专用终结点”。 选择“专用终结点”。

  2. 在“专用终结点”中选择“+ 创建”。

  3. 在“创建专用终结点”的“基本信息”选项卡中,输入或选择以下信息。

    设置
    项目详细信息
    订阅 选择订阅。
    资源组 选择 test-rg
    实例详细信息
    名称 输入 private-endpoint
    网络接口名称 保留默认值 private-endpoint-nic
    区域 选择“中国东部 2”。
  4. 在完成时选择“下一步:资源”。

  5. 在“资源”窗格中,输入或选择以下信息。

    设置
    连接方法 保留默认设置“连接到我的目录中的 Azure 资源”。
    订阅 选择订阅。
    资源类型 选择“Microsoft.Storage/storageAccounts”。
    资源 选择 storage-1 或存储帐户。
    目标子资源 选择 Blob
  6. 选择“下一步: 虚拟网络”。

  7. 在“虚拟网络”中,输入或选择以下信息。

    设置
    联网
    虚拟网络 选择 vnet-1 (test-rg)
    子网 选择 subnet-1
    专用终结点的网络策略 选择“编辑”,为专用终结点应用网络策略。
    在“编辑子网网络策略”中,在此子网中所有专用终结点的网络策略设置下拉菜单中选择“网络安全组”和“路由表”旁边的复选框。
    选择“保存”。

    有关详细信息,请参阅管理专用终结点的网络策略
    设置 Value
    专用 IP 配置 选择“动态分配 IP 地址”。
  8. 选择“下一步: DNS”。

  9. 在“DNS”中保留默认值。 依次选择“下一步: 标记”、“下一步: 查看 + 创建” 。

  10. 选择“创建”。

创建测试虚拟机

以下过程会在虚拟网络中创建一个名为 vm-1 的测试虚拟机 (VM)。

  1. 在门户中,搜索并选择“虚拟机”。

  2. 在“虚拟机”中,选择“+ 创建”。

  3. 在“创建虚拟机”的“基本信息”选项卡上,输入或选择以下信息:

    设置
    项目详细信息
    订阅 选择订阅。
    资源组 选择“test-rg”。
    实例详细信息
    虚拟机名称 输入“vm-1”。
    区域 选择“中国东部 2”。
    可用性选项 选择“无需基础结构冗余”。
    安全类型 保留默认值标准
    映像 选择Windows Server 2022 Datacenter - x64 Gen2
    VM 架构 保留默认值“x64”。
    大小 选择一个大小。
    管理员帐户
    身份验证类型 选择密码
    用户名 输入“azureuser”。
    Password 输入密码。
    确认密码 重新输入密码。
    入站端口规则
    公共入站端口 选择“无”。
  4. 选择页面顶部的“网络”选项卡。

  5. 在“网络”选项卡中,输入或选择以下信息:

    设置
    网络接口
    虚拟网络 选择“vnet-1”。
    子网 选择“subnet-1 (10.0.0.0/24)”。
    公共 IP 选择
    NIC 网络安全组 选择“高级”。
    配置网络安全组 选择“新建”。
    在“名称”中输入“nsg-1”。
    将其余字段保留默认设置,然后选择“确定”。
  6. 将其余设置保留为默认值,然后选择“查看 + 创建”。

  7. 检查设置,然后选择“创建”。

    注意

    虚拟网络中具有堡垒主机的虚拟机不需要公共 IP 地址。 Bastion 提供公共 IP,虚拟机使用专用 IP 在网络中进行通信。 可以从堡垒托管的虚拟网络的任何虚拟机中删除公共 IP。 有关详细信息,请参阅 将公共 IP 地址与 Azure VM 取消关联

    注意

    Azure 会为未分配公共 IP 地址的 VM 或位于内部基本 Azure 负载均衡器的后端池中的 VM 提供默认出站访问 IP。 默认出站访问 IP 机制会提供不可配置的出站 IP 地址。

    发生以下事件之一时,将禁用默认出站访问 IP:

    • 将公共 IP 地址分配给 VM。
    • 虚拟机被放置在标准负载平衡器的后端池中,有无出站规则均可。
    • 向 VM 的子网分配了 Azure NAT 网关资源。

    在灵活业务流程模式下通过使用虚拟机规模集创建的 VM 没有默认的出站访问权限。

    有关 Azure 中的出站连接的详细信息,请参阅 Azure 中的默认出站访问权限使用用于出站连接的源网络地址转换 (SNAT)

存储访问密钥

后续步骤需要存储访问密钥。 我们将转到之前创建的存储帐户,并复制包含存储帐户访问密钥的连接字符串。

  1. 在门户顶部的搜索框中,输入“存储帐户”。 在搜索结果中选择“存储帐户”。

  2. 选择在前面步骤中创建的存储帐户或现有的存储帐户。

  3. 在存储帐户的“安全性 + 网络”部分,选择“访问密钥”。

  4. 选择“显示”,然后选择复制“key1”的“连接字符串”。

添加 blob 容器

  1. 在门户顶部的搜索框中,输入“存储帐户”。 在搜索结果中选择“存储帐户”。

  2. 选择你在之前的步骤中创建的存储帐户。

  3. 在“数据存储”部分中,选择“容器”。

  4. 选择“+ 容器”来新建容器。

  5. 在“名称”中输入“container”,然后在“公共访问级别”下选择“专用 (非匿名访问)”。

  6. 选择“创建”。

测试到专用终结点的连接

在本部分,你将在 Azure 存储资源管理器中使用在上一步骤中创建的虚拟机通过专用终结点连接到存储帐户。

  1. 在门户顶部的搜索框中,输入“虚拟机”。 在搜索结果中,选择“虚拟机”。

  2. 选择 vm-1

  3. 在“连接”中,选择“Bastion”

  4. 输入在创建虚拟机期间输入的用户名和密码。

  5. 选择“连接”。

  6. 连接后,在服务器上打开 Windows PowerShell。

  7. 输入 nslookup <storage-account-name>.blob.core.chinacloudapi.cn。 将 <storage-account-name> 替换为你在前面步骤中创建的存储帐户的名称。 以下示例显示命令输出。

    Server:  UnKnown
    Address:  168.63.129.16
    
    Non-authoritative answer:
    Name:    storage1.privatelink.blob.core.chinacloudapi.cn
    Address:  10.0.0.10
    Aliases:  mystorageaccount.blob.core.chinacloudapi.cn
    

    将为存储帐户名称返回专用 IP 地址 10.0.0.10。 此地址位于前面创建的 vnet-1 虚拟网络的 subnet-1 子网中。

  8. 在虚拟机上安装 Microsoft Azure 存储资源管理器

  9. 安装“Azure 存储资源管理器”后选择“完成”。 保持选中此复选框以打开应用程序。

  10. 选择“电源插头”符号以在左侧工具栏打开“选择资源”对话框。

  11. 在“选择资源”中选择“存储帐户或服务”,以将“Azure 存储资源管理器”中的连接添加到在前面步骤中创建的存储帐户。

  12. 在“选择连接方法”屏幕中,依次选择“连接字符串”、“下一步”。

  13. 在“连接字符串”下的框中,粘贴在前面步骤中复制的存储帐户的连接字符串。 存储帐户名称将自动填充在“显示名称”下的框中。

  14. 选择“下一页”。

  15. 在“摘要”中验证设置是否正确。

  16. 选择“连接”

  17. 从资源管理器菜单的“存储帐户”中选择存储帐户。

  18. 展开该存储帐户,然后展开“Blob 容器”。

  19. 此时会显示之前创建的 container

  20. 关闭到 vm-1 的连接。

清理资源

使用创建的资源之后,可以删除资源组及其所有资源:

  1. 在 Azure 门户中,搜索并选择“资源组”。

  2. 在“资源组”页上,选择“test-rg”资源组。

  3. 在“test-rg”页上,选择“删除资源组”。

  4. 在“输入资源组名称以确认删除”中输入“test-rg”,然后选择“删除”

后续步骤

在本教程中,你已了解如何创建:

  • 虚拟网络和堡垒主机。

  • 虚拟机。

  • 存储帐户和容器。

了解如何通过 Azure 专用终结点连接到 Azure Cosmos DB 帐户: