Pangolin是一款基于WireGuard、开源、可自托管的 SASE 零信任访问平台,核心设计思路一句话概括:Deny-by-Default,以资源为中心,而不是以网段 / 节点为中心。
能不能防近期 PHP 高危漏洞?这是很多运维同学最关心的问题,结论先说清楚:
✅ Pangolin不能虚拟补丁、不能识别并拦截漏洞 Payload,本身不带 WAF 能力。
✅ 但它可以极大收缩攻击面,把公网无鉴权裸暴露,收敛到零信任准入模型。
❌ 如果攻击者拿到合法 Pangolin 账号,在授权隧道内发送漏洞请求,PHP 服务依旧会被触发RCE。
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 本文看点 01 8 月底它加了个 AI 网关:Claude Code、Codex、Gemini CLI 都能直接连,真实的厂商 Key 留在服务器上,按人按角色卡预算。 02 9 月底它加了出口路由:本来只走内网,开了出口节点才把全部流量导去站点,多个站点按延迟自动挑一个。 03 这两件事加上原来的内网接入,走的是同一套「资源 + 角色」。所以要理解它,不是理解三个功能,是理解一个模型怎么被复用了三次 |
01 定位
Pangolin 是一个开源的 SASE 平台,SASE(Secure Access Service Edge,安全访问服务边缘)这个词这几年被厂商用得很泛。Pangolin官方给的定位比较坦率:思路和 Cloudflare One、Zscaler、Prisma Access 是一致的,区别在于它开源、可自托管,并且刻意保持轻量。++(这里要说一个题外话,这是我能找到为数不多支持中文、部署简单、功能较多的零信任开源项目。)++
它要解决的问题,官方仓库的描述里写得很清楚:给应用、基础设施、以及 AI 负载提供安全的访问与连通。这三样东西听起来不搭,但在这套平台里它们是同一种东西------都是一个「资源」,都挂一套「角色」。
它由三块组成,理解了这三块,后面所有功能都能找到归属:
· 服务端:控制面,管身份、策略和协调,就是你登录的那个后台
· 站点连接器:跑在内网的一个小进程,负责把内网「接」进来
· 客户端:用户设备上的 Olm 客户端,访问私有资源时用
自托管时,「服务端」其实是四样东西:Traefik(加一个叫 Badger 的插件)、Pangolin 主程序、隧道入口 Gerbil、以及数据库。下面这张图是它跑起来的真实形状------左边是人,中间是你的服务器,右边是想护住的内网。

图 2 部署拓扑:用户侧、控制面、内网站点三方的关系,以及云厂商 API 的位置
图里三件事先记住:只有服务器要公网 IP ,内网站点不用;连接是从内网往外拨的 ,不用开入站端口;厂商 Key 只存在服务器上,用户拿的是虚拟 Key。这三条后面反复出现。
大多数人第一次听说它,会把它当成「带 Web 界面的 WireGuard」。这个理解不算错,但会漏掉两件事。第一,权限是按资源粒度做的,不是按网段:VPN 的默认逻辑是「拨通了就能进整个内网」,它反过来,先登录,再按资源逐条授权。第二,它没有停在内网访问这一格------最近两个月,它往前走了两步,把 AI 模型调用和公网出口也收了进来。
为什么现在值得看:仓库 2024 年 9 月建,2.09 年涨到 23,284 star ,年均 11,116;近 90 天仍有 100 次以上提交 (这是接口返回的上限,实际更多)。发布节奏几乎一天一版:1.22.0 在 8 月 27 日,1.24.0 在 9 月 30 日,最新 1.25.3 在 10 月 23 日。两个月跨了三个小版本,每个版本都塞进了新能力,而不是修修补补。
一个必须提前说明的事:这个仓库在 GitHub 上的许可标识是 NOASSERTION,不是常见的单一 AGPL。这不是配置错误,是它真的把代码按文件分了三种许可。不建议拿这个项目做二开或者项目集成,这个项目目前还在快速迭代,且官方有企业版本有侵权风险,但作为薅羊毛部署使用还是不错的,毕竟有企业版做兜底。
02 场景
下面举例常用的三个场景:
场景一:内网一堆 Web 后台,现在靠端口映射或 VPN 顶着
如果你正在这样的处境------手里有堡垒机、监控面板、Jenkins、Grafana、几台 NAS 的管理页面,每个都想让相关同事随时能打开。
传统做法是两种都不舒服:开端口映射,等于把管理后台直接挂到公网,靠一个密码挡着;用 VPN,一拨通就进了整个网段,谁能访问哪台机器,全凭自觉,访问记录要靠另建一套堡垒机去补。
用它之后变成:每个后台登记成一个「资源」,一个人只看到授权给他的那几个。公开资源直接用浏览器打开,不用装客户端;私有资源走客户端,连登录页都不对外暴露。关键在于授权单位是资源,不是网段。

图 2 无客户端资源访问:这里会在正常的业务系统加一层账户密码或PIN密码的验证流程
顺带一句:把 SSH、RDP、VNC 也当成公开资源、直接在浏览器里开会话,这个能力在 8 月底的 1.22.0 里下放到了社区版。以前是要钱的。
场景二:给外包或临时人员开权限
如果你经常要给外包、驻场、临时项目组开权限------做完就收。
传统做法:发一个 VPN 账号,改一遍防火墙规则,项目结束再改回来。麻烦的不是开通,是回收:人走了、项目黄了,规则经常没人记得删,半年后审计一查,一堆僵尸账号。
用它之后:账号本身就是权限载体,停用账号即失效,不需要再动网络设备。角色可以批量管人。
这里有个必须说清的限制:「给一个人分配多个角色」是企业版功能,据官方文档,社区版一个用户只能挂一个角色。如果你的场景是「一个人既是运维又是审计」,免费版会卡住,得靠拆账号绕,体验会差。
场景三:团队要用 Claude Code、Codex,但不想把 OpenAI 和 Anthropic 的 Key 发给每个人
如果你已经在给团队配 AI 编码工具,这段应该眼熟:要么每个人自己去买账号,公司拿不到任何用量;要么把公司账号的 Key 发给所有人,出事了不知道是谁用的,人一走还得挨个电脑去换。
用它之后:在后台配好 provider,建一个「AI 网关」资源,员工拿自己的身份换一个虚拟 Key,填进 Claude Code 的配置里。真实 Key 一直在服务器上,人走了停他账号就行,每天的预算是按角色卡的。
这个能力是 1.22.0 才有的,8 月底,很新。这个功能我目前还没有用过,但是看着还是比较实用的。

三个场景的共同点:它们都是从「谁可以访问什么」出发的,而不是从「网络怎么通」出发。这也是判断你适不适合用它的最快方法------如果你的痛点是「网怎么通」,它有点重;如果痛点是「谁能进哪」,它正中靶心。
03 功能与亮点
这一章按能力分组,不按价格分组。每组后面标了付费边界,标记来自官方文档 2026 年 11 月的抓取,并逐项对到了源码。
第一组:接入
| 功能 | 付费边界 |
|---|---|
| 反向代理与隧道接入 | 免费 |
| 站点连接器,把内网接入平台 | 免费 |
| 公开资源:HTTPS、SSH、RDP、VNC | 免费 |
| 私有资源:主机、网段、SSH、私有 HTTP | 免费 |
| 基础蓝图(Blueprint),把一组资源配置成模板 | 免费 |
| 通配符资源 | 企业版 |
| 资源策略(按路径、方法、地理、IP 细化) | 企业版 |
这一组是它的地基,免费版最实在的部分就在这。「把内网服务安全地开给指定的人」这件事,靠这一组就能做完。要注意倒数两项:路径级、方法级的细粒度策略是企业版的------免费版能授权到「这个人能用这个资源」,不能授权到「这个人只能用这个资源里的 /api 路径」。
第二组:AI 网关------这一组是新的,也是最有意思的
| 功能 | 付费边界 |
|---|---|
| AI 网关资源,支持公开和私有两种部署 | 免费 |
| 接入 OpenAI、Anthropic、Gemini、Vertex AI、Bedrock、Microsoft Foundry、OpenRouter、Vercel AI Gateway | 免费 |
| 接入自建端点:Ollama、vLLM、Bifrost 等自定义服务 | 免费 |
| 虚拟 API Key:每人有身份 Key,管理员可另发手动 Key | 免费 |
| 模型路由:允许/屏蔽列表、通配符、按资源收窄 | 免费 |
| 预算:按厂商、模型、资源、角色、Key 五处设上限 | 免费 |
| 用量分析:成本、token、请求量按维度切 | 免费 |
| 会话日志:存每次调用的提问和回答原文 | 企业版 |
| 客户端配置向导:Claude Code、Codex、Gemini CLI 等 7 种客户端 | 免费 |
它不是做了个 LiteLLM。这些能力挂在「资源」上,意味着「张三是运维,能用 gpt-4o,每天 5 美元」这句话写在同一个权限系统里,不用另建账号。官方对比页的说法是「identity-aware gateway」,不是模型路由器。
三个设计值得单独拎出来:
一是虚拟 Key 替代真实 Key 。客户端发出去的是 pangolin-key-<id>.<secret>,Pangolin 校验后换成上游真 Key 转发,并把它从请求里剥掉。Key 泄了,吊销一个人的虚拟 Key 就行,不用动厂商那边的真 Key------这是「一人一 Key」能成立的前提。
二是私有网关不需要 Key。资源建成私有,只能从已连上的客户端访问,身份来自连接本身。自建模型跑在 Ollama 或 vLLM 上,可以直接挂进同一个网关,和对云的调用一起统计。
三是预算能卡到角色 。作用域六种------厂商、模型、两种资源、角色、虚拟 Key,同时生效,超一个就返回 429。官方很诚实地写了:这是估算不是账单,判定用的是「此前用量」,所以能小幅超支。
第三组:出口路由------9 月底刚加的那块,补上了 VPN 的另一半
默认是分流的:它只管内网和站点之间的流量,公网流量不碰。这符合大多数人的需要。
出口节点反过来用:把某个站点设成出口,其他设备通过一个「Exit Node」私有资源把流量全指过去,走默认路由 0.0.0.0/0,TCP、UDP、ICMP 全放行。
| 功能 | 付费边界 |
|---|---|
| 出口节点资源,把流量导到指定站点出网 | 免费 |
| 一个资源挂多个站点,客户端按延迟自动挑 | 免费 |
| 出口优先模式:开了之后其他资源全部失效,全量走出口 | 免费 |
| 网络连接日志 | 企业版 |
它解决的场景很具体:出差在酒店 Wi-Fi 上,或者人在境外要访问只对本国开放的服务。传统做法是再装一个商业 VPN,现在不用了。
它有个明确的坑要先讲 :目前只支持 IPv4,IPv6 流量不经过出口节点。官方说 IPv6 覆盖层在做,什么时候好没日子。如果你的网络是 IPv6 为主的,这块现在还指望不上。
最后别和子网路由搞混:那个是让没装客户端的设备访问内网,出口节点是把装了客户端的设备的公网流量导去站点。名字都带「路由」,方向相反。
第四组:治理------整组都在企业版
| 功能 | 付费边界 |
|---|---|
| 审计三件套:认证日志、网络日志、管理员操作日志 | 企业版 |
| 事件流:把日志推给外部系统,支持 HTTP Webhook 和 S3 | 企业版 |
| 告警规则、任意自定义健康检查 | 企业版 |
| 多人多角色、Google / Azure 单点登录 | 企业版 |
| 设备审批、客户端指纹与终端态势 | 企业版 |
| 多节点集群、远程节点、域名与 DNS 托管 | 企业版 |
| 品牌定制、维护页、标签管理 | 企业版 |
四组放一起看,分界线很清楚:免费版给完整的「接入」,包括最新加进来的 AI 接入和出口接入;企业版卖「治理」------多角色、审计、集群、白标,都是「几个人用」变成「一个公司在用」才需要的东西。
深挖一个:它没有自己做 SIEM,这是克制的选择
第四组里最值得说的是事件流。三种日志通过 HTTP Webhook 或写入 S3,推给外部系统。
这件事放在产品设计上很难得。一个接入网关天然能看到所有人的所有访问,最容易顺手做的事就是内置一个日志面板,再加个告警引擎,最后变成一个半成品 SIEM。Pangolin 没走这条路:它把日志结构定义好、把出口做好,分析交给外部。
对做安全的人这是加分项------数据直接进你现有的 SIEM 或数据湖,不用再维护一个孤岛。代价是它自己的告警做得比较浅。这是产品边界,不是能力缺陷。
04 怎么做到
一次访问走完全程要经过六层,四处设计值得说。

图 4 一次访问经过的六层,从用户设备到内网资源
第一处:站点连接器是「反向」的
传统做法是让内网开一个入站端口,把流量放进来------这就需要公网 IP、防火墙开口子,以及随之而来的暴露面。
Pangolin 反过来:内网那个连接器进程主动向外建立持久连接,隧道通了之后才开始转发。这意味着内网侧不需要公网 IP,也不需要任何入站规则。官方把这项能力叫 NAT 穿透,文档里明确写了连接器维持的是「持久出向连接」。
这是它能「半天上手」的技术前提------你不需要先跟网络管理员扯皮开端口。
第二处:身份和策略在中间,不在两端
第 03、04 层(身份与策略、反向代理)是整个系统的中枢。用户登录后,服务端算出「这个人能访问哪些资源」的清单,再交给反向代理去路由。
仓库里那套权限动作枚举定义了 213 个动作,其中 203 个生效(另外 10 个被注释掉了,包括删除组织)。这个数字说明它的权限模型不是「管理员 / 普通用户」两级,而是细化到「能不能改某个资源的某条策略」这种粒度。
代价也在这里:粒度细,配置就复杂。它的学习曲线不在部署,在配权限。
第三处:AI 网关为什么能当资源用
这是它最巧妙的一步。做 AI 网关常规路子是单独起一个服务,自己管一套账号、一套配额,然后你就有两套权限要维护。
Pangolin 的做法是:AI 网关就是一种资源类型,和 HTTPS 资源、SSH 资源并列。它之所以能成立,是因为它本来就是协议感知的反向代理------它已经能看懂 HTTPS 请求,现在再多看懂一层 LLM 的请求格式,就能把每次调用归到具体的人、算出 token 和钱、按角色卡额度。
代码上能看出来这个设计有多彻底:server/lib/aiProviderSelection.ts 管选哪家厂商,server/lib/aiBudgetEnforcement.ts 管预算,server/routers/aiBudget/ 下有 14 个文件专门处理六种作用域的预算。这些全在公开代码侧,没有藏进私有目录。
顺带验证了它的分版逻辑:私有目录里跟 AI 相关的文件只命中 11 个,其中最关键的一个是 server/private/routers/aiGateway/logAiSession.ts------会话日志。也就是说,网关的壳和核心能力是开源的,只有「把每次对话原文存下来」这一件事闭源。这和文档里只给「会话日志」标付费,完全对得上。
第四处:同一份代码怎么卖两个价
这部分讲的是它怎么卖,不是它有什么用,可以当架构参考看。
大多数人做 open-core 的做法是:社区版删掉一段代码,企业版留着,靠 if 判断。后果是两条代码路径、两套测试、每次合并都冲突。
Pangolin 用了两层:一是路径别名 ,#dynamic/* 在开源版的 tsconfig 里指向 ./server/*,在企业版里指向 ./server/private/*,业务代码写 import from "#dynamic/license",编译时自动落到对应实现,全仓 164 处;二是许可失效而不是功能删除 ,#dynamic/license 开源版 72 行、check() 硬编码返回无效,企业版 728 行做 JWT 签发和配额,于是社区版所有依赖许可的能力自然关闭,业务代码一个 if 都不用写。
有个坑值得记一下:仓库里还有一张 tierMatrix 表,列了每个功能在哪档套餐可用,看起来像权威。但它只被「降级时关掉哪个功能」引用,是善后表不是门禁。真正的门禁只有一条:代码在不在 `server/private/`。
05 上手
先说最关键的:它的 README 里没有启动命令。
安装说明全部放在官方文档的快速安装页:https://docs.pangolin.net/self-host/quick-install。
演示环境
它没有免登录的在线演示站。官方提供的是注册试用 :https://app.pangolin.net/auth/signup,需要注册账号才能进。这一点要说清楚------很多人看到「Cloud」就以为是点开就能玩,实际要注册,注册以后可以免费使用一个月。
你要准备什么
官方给出的自托管前提很明确:++一台服务器、一个公网 IP、一个域名、几个监听端口++。剩下的更新、备份、证书、可用性,全部由你自己负责。
这里面有几个坑,IP要开放80、443端口(虽然可以通过修改配置为其它端口,但是配置和使用都比较麻烦。),需要SSL证书(证书需要80、443端口验证,但可以使用自签发证书,需要折腾),需要域名(服务器在国内的话可能会要求备案)。
控制面由三个组件组成:Pangolin 服务端、Traefik(反向代理)、Gerbil(入口网关)。数据库二选一,SQLite 或 PostgreSQL,仓库里对应两套依赖。内网侧再跑一个站点连接器容器,用户端装 Olm 客户端。
首次配置的三步
按官方文档的 Basic Steps,顺序是这样的:
1. 建站点:把要接入的内网登记成一个站点,拿到站点 ID 和密钥,在那边跑连接器容器
2. 定义资源:在站点下面建资源,每个资源选一种类型------HTTPS、SSH、RDP、AI 网关、出口节点
3. 建用户与角色:把资源授权给角色,角色挂到人身上
第三步是免费版和企业版分叉的地方,前面说过:一人一角色是免费的,一人多角色要企业版。
内网侧那个容器怎么配
连接器用的是 fosrl/pangolin-cli 镜像,官方给了三种传参方式:命令行参数、环境变量、配置文件挂载。最省事的是环境变量:
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| services: pangolin-site: image: fosrl/pangolin-cli restart: unless-stopped environment: - PANGOLIN_ENDPOINT=https://<你的控制面地址> - SITE_ID=<控制台生成的站点 ID> - SITE_SECRET=<控制台生成的密钥> |
三个变量,两个来自控制台。这段配置是从官方文档抄的,唯一改动是把真实的 ID 和密钥换成了占位符------这两个值等于内网的钥匙,不要跟配置一起提交到仓库。官方也给了 Docker secret 的挂载方式,生产环境建议用那种。
接一个 AI 网关,实际要做什么
比想象中短,四步,都在 Web 后台里:
**1.**后台左侧 AI Gateway → Providers → 建一个厂商,贴进真实 API Key
**2.**Resources → 建资源,类型选 AI Gateway,绑一个域名,把上面的厂商挂上
**3.**把用户或角色授权到这个资源上
**4.**用户浏览器打开这个域名,登录,拿到自己的虚拟 Key
然后把 Key 填进客户端。官方给了 7 种客户端的配置向导,也有一条命令直接写配置:pangolin configure <client>。如果你接的是私有网关,Key 那一栏填字面量 none,删掉这栏反而会让客户端报错。
一个容易踩的细节:升级到 1.22 时,AI 网关要求 Badger(Traefik 插件)到 v1.6.0 以上,私有网关还要求 Gerbil 到 1.5.0。官方明说 Gerbil 那一步迁移不会自动做,得手动改容器版本号。
已知的坑
· 文档没有版本化 。整个文档站没有 /v1/、/latest/ 这类版本路径,内容永远跟着主分支。你装的是 1.25.3,看到的文档可能已经是主分支上还没发版的内容。查到某个功能不存在时,先怀疑版本,别怀疑自己。
· 新功能对客户端版本很挑 。出口节点要求站点连接器到 CLI v0.18.0 / Newt v1.18.0 以上,客户端必须是 2026-09-29 之后发布的版本;私有 AI 网关同理,客户端得是 8 月 19 日之后的版本。这两个功能都是「服务端升了、客户端也得升」才能用,只升一边会出现「后台有、客户端没有」的怪现象。
· 升级要跟紧 。最新版 1.25.3 修了一个 CVE(CVE-2026-111497,CVSS 9.8)。但要说清楚它是什么:NVD 的描述指向 Google Brotli 解码器的缓冲区溢出,是依赖链上的漏洞,不是 Pangolin 自己代码的缺陷。看到 9.8 就写「Pangolin 有严重漏洞」是误读,但「依赖要及时升」这个结论是成立的。
· Issue 不算多但不算少。124 个 open issue,相对 2.3 万 star 属于正常区间,但意味着遇到怪问题大概率要自己 debug。
06 开源边界
许可证:三种,不是一个
这是最容易被写错的一点。它的根 LICENSE 不是一个标准协议,而是一段分流说明:
**·**文件头写着 Fossorial 商业许可的 → 按商业许可走,未经授权不得使用、复制、修改、分发
**·**文件头写着 AGPL-3 的 → 按 AGPL-3 走,同时也可另签商业许可
· 没有许可头的文件 → 默认按 AGPL-3
实测结果是:1832 个源文件里,215 个带商业许可头(11.7%),其余按 AGPL-3。
对你有三个直接结论:
1. 能免费用,1832 个文件里 1617 个在 AGPL 侧,占比约 88%
2. 改了要开源------AGPL-3 有网络条款,你把它改成 SaaS 对外提供服务,也要提供源码
3. 不能把 `server/private/` 的代码搬进自己产品,那是 215 个明确的商业许可文件
如果你的打算是「拿它二开做个商业产品卖」,必须单独评估,不能按「开源软件随便改」处理。
免费版的天花板在哪
三个地方卡得最实:审计日志一条没有 、多角色分配没有 、SSO 只能接自建的 OIDC,Google 和 Azure 要企业版。再加一条:集群没有,只能单点。
AI 网关和出口路由这两块的新功能,本体都在免费侧,卡的是会话日志和网络连接日志------也就是说,功能能跑,出了事查不了。
换句话说,单人用、小团队用、自己玩,免费版完全够。但凡有合规要求、要接企业目录、要多人分权、要事后审计,就得上企业版。
一个容易被忽略的好消息
据官方文档,企业版对个人使用、以及年营收低于 10 万美元的组织免费(我就是这么干的),只是仍然需要申请一个许可密钥。这个政策写在文档的提示框里,不在定价页的对比表上,很容易漏。
如果你只是想在自己公司内部试试完整功能,先去申请密钥,别急着掏钱。
07 取舍
适合谁
· 手里有一堆内网服务要开给指定的人:资源级授权正好对上,不用再维护跳板机
· 在给团队配 AI 编码工具,但管不住 Key 和花费:AI 网关这块目前是同类里少见的「免费且能卡到角色」
· 出差多、或者有跨境访问需求:出口节点能替掉一部分商业 VPN
· 要自托管、数据不出自己机房:全功能可离线部署,中文语言包现成(仓库里有 zh-CN 和 zh-TW)
不适合谁
· 只需要把几个端口暴露出去:配置成本明显高于一条 FRP 或一个 Nginx 反代,杀鸡用牛刀
· 纯 IPv6 环境还想用出口节点:这条现在走不通
· 必须买可开发票的商业支持、要有原厂 SLA:它背后是一家小公司,中文支持基本靠自己
· 团队里没人愿意维护证书和升级:自托管的运维责任是完整的,官方文档写得很直白
替代方案
· Tailscale:组网体验更顺,偏「把设备连成一张网」。出口节点这块两家都有,Pangolin 的差异在于权限是按资源授权,Tailscale 更偏设备
· Cloudflare Tunnel:不开源但免费额度够用,配置更简单,代价是流量过第三方
· LiteLLM / Bifrost :如果你只需要 AI 网关,这两个更专业------LiteLLM 的虚拟 Key 和花费追踪更成熟,Bifrost 的路由规则更复杂。选 Pangolin 的理由不是它做得更好,是你已经打算用它管内网访问了,那 AI 网关就是白送的同一套权限
一个判断方法:如果你需要「谁能访问哪个资源」的清晰答案,选 Pangolin;如果只需要「我的设备能互通」,Tailscale 更省事;如果只想要个 LLM 网关,直接上 LiteLLM。
最后看一组数字:23,284 star、131 个贡献者、星人比 177.7。这个比值偏高------通常开源项目的星人比在几十到一百之间,177 说明用的人远多于写的人。好处是它被大量真实部署验证过;风险是遇到深层 bug 时,能修的人不多,你大概率要自己动手或者等官方。
08 收尾
回到开头那个判断:Pangolin 不是一个「更好看的 WireGuard 面板」。它在两个月里做了三件事------把内网接进来、把大模型调用接进来、把公网出口接出去------而这三件事在它这里共用一套资源模型和一套角色。这才是它值得看的点,不是功能列表有多长。
如果你只记一件事,记这个:免费的边界画在「接入」上,付费的边界画在「治理」上。 AI 网关和出口路由这两个最新功能,本体都在免费侧,卡的是日志和审计。选型时不用猜。
本文数据来自 2026-11-01 的公开仓库与官方文档,功能与版本可能变化,以官方为准。