You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Serverless Framework部署接入VPN的Azure Functions

Azure Functions 接入VNET/VPN访问本地私有环境方案

1. 函数接入已配置VPN的VNET实现方式

首先明确:Azure Functions不需要完全部署到VNET内部,通过VNet集成能力就能访问VNET内(包括VNET关联的VPN本地网段)的所有资源,具体操作根据你选的函数托管计划有区别:

  • 如果你用弹性高级计划、专用App Service计划:这两类计划对VNet集成的支持最完善,提前给VNET划一个单独的子网,委派给Microsoft.Web/serverFarms服务,确保这个子网没被其他资源占用;之后在函数实例的「网络」面板找到「VNet集成」选项,选择目标VNET和刚划好的子网绑定即可。绑定完成后函数的出站流量就会发往VNET,直接走VNET关联的VPN通道访问本地资源。
  • 如果你用消费计划:目前仅支持同区域VNet集成的预览能力,生产环境不建议用,要么换高级/专用计划,要么选后面提到的混合连接方案。
  • 如果你用独立App Service环境(ASE):本身就部署在VNET内部,只要VNET配好了VPN连接,函数默认就能访问本地资源,不需要额外做集成配置。

2. Serverless Framework 配置支持

完全可以实现,不需要部署完手动去Azure门户改配置,直接在serverless.yml里定义网络关联规则即可,参考配置片段:

service: func-vpn-access
provider:
  name: azure
  region: 你部署的目标区域
  functionAppName: 你的函数应用名称
  # 可选:开启后所有出站流量都走VNET转发,不需要强制走VNET公网出口可以设为false
  siteConfig:
    vnetRouteAllEnabled: true
  # 绑定VNET集成的ARM资源定义
  resources:
    resources:
      - type: Microsoft.Web/sites/networkConfig
        apiVersion: 2022-03-01
        name: ${self:provider.functionAppName}/virtualNetwork
        properties:
          subnetResourceId: /subscriptions/你的订阅ID/resourceGroups/你的资源组名称/providers/Microsoft.Network/virtualNetworks/你的VNET名称/subnets/你提前委派好的集成子网名称
          swiftSupported: true

配置完成后直接执行sls deploy就会自动完成VNet集成绑定,注意执行部署的账号/服务主体需要拥有目标子网的写入权限,否则会报权限错误。

3. 本地环境接入的可选方案对比

你最初规划的「VNET配S2S VPN+函数VNet集成」是通用方案,但不是所有场景下的最优解,可以根据实际需求选:

  • S2S VPN + VNet集成(你当前的方案):适合本地有大量内网服务需要被多个Azure资源(函数、云服务器、云数据库等)访问的场景,一次配置所有接入VNET的云资源都能复用VPN通道,稳定性高,符合企业网络的常规运维规范。缺点是需要本地侧有兼容的VPN网关设备,前期配置成本稍高。
  • Azure混合连接:如果你的函数只需要访问本地少数几个固定端口的服务,完全不用折腾VNET和VPN网关:直接在函数的「网络」面板添加混合连接,填上本地服务的IP、端口,再在本地对应网络里的服务器上装一个轻量的混合连接代理就行,代理只需要能出站访问443端口,不需要改本地防火墙的入站规则,10分钟左右就能配通。缺点是单条混合连接只能对应一个服务的一个端口,不适合需要访问整个本地网段的场景。
  • P2S点到站点VPN:仅适合临时测试场景,相当于给函数实例单独拨号连本地VPN,证书配置繁琐,稳定性差,生产环境不推荐。

避坑提醒:不管选哪种方案,都要记得放通两侧的防火墙规则:本地侧要允许Azure侧/VPN网段的地址访问对应端口;如果本地服务用内网域名解析,要给函数配置自定义DNS,指向VNET内的DNS服务或者本地内网DNS,否则域名会被解析到公网地址导致连接失败。

内容的提问来源于stack exchange,提问作者DenCowboy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.01 23:39:36