cloudflare
zero-trust
access
tunnel
vpn
segurança

Cloudflare 零信任:无需 VPN 即可访问内部应用程序

Cloudflare Zero Trust 如何取代 VPN 进行内部应用程序访问 — 访问、隧道、WARP、架构、成本以及运营方面的变化。

Cloudflare 零信任:无需 VPN 即可访问内部应用程序

企业 VPN 的失败并不是因为实施不当。它失败了,因为它建立在一个不再正确的前提之上:在公司网络内就足以信任某人。当员工从家里、酒店网络或咖啡馆使用与办公室团队相同的 VPN 进行连接时,网络边界作为安全概念就不再存在。剩下的就是由操作惯性维持的控制幻觉。

Cloudflare 零信任从不同的前提开始:身份、设备和请求上下文决定访问权限,而不是原始 IP 地址。其具体实现涉及三个组件,它们具有不同的作用,即使那些已经将它们投入生产的人也常常会感到困惑。

访问、隧道和 WARP:各自的作用

Cloudflare Access 是应用程序的身份网关。当请求到达通过 Cloudflare 发布的内部域时,Access 会在请求到达源之前拦截它。用户使用配置的身份提供商进行身份验证 - Okta、Azure AD、Google Workspace 或任何 SAML 2.0 和 OIDC 提供商。只有在身份验证和策略评估之后,流量才会继续到达源站。应用程序永远不会收到未经身份验证的请求。

Cloudflare Tunnel 由 0 守护进程运行,在服务器端运行。它创建从服务器到 Cloudflare 边缘的加密出站连接,而无需打开入站防火墙端口。完整流程:用户通过 Access 进行身份验证 → Cloudflare 边缘验证 → 流量通过隧道到达内部服务。内部服务器不需要公网IP,不需要安全组条目规则,不直接暴露在互联网上。

WARP 是设备客户端。在零信任模式下,它通过 WireGuard 协议通过 Cloudflare 边缘路由设备流量。这可以实现状态检查——磁盘加密、操作系统版本、安装的安全代理——并允许访问策略将设备状态作为条件。对于通过浏览器访问的 Web 应用程序,WARP 通常不是必需的。对于通过隧道路由的非 HTTP 协议(​​例如 SSH 和 RDP),这是强制性的。

身份验证流程如何工作

开发者访问内部服务的具体顺序:用户访问1。 Access 检测到没有有效会话并重定向到身份提供程序。用户进行身份验证 - 如果策略需要,则使用 MFA。 IdP 返回 Access 并确认身份和组属性。 Access 评估策略:此用户是否属于拥有此应用程序权限的组?如果获得批准,它会发出一个会话 JWT,请求会发送到边缘,沿着隧道到达内部网络上的服务。

对于非 HTTP 协议(​​例如 SSH),流会通过 WARP。客户建立 WireGuard 隧道,检查状态策略,并且 SSH 流量通过 Cloudflare 通过隧道路由到目的地。

身份和支持的提供商

Access 支持同一组织中同时存在多个身份提供商。应用程序可以允许员工通过 Google Workspace 进行身份验证,并允许外部协作者通过 GitHub 进行身份验证。另一种可能专门要求 Okta 具有强制性 MFA。同步的 IdP 组(工程团队、特定小组、部门)直接提供访问策略,无需手动同步列表。

除了人类之外,Access 还通过服务令牌管理机器对机器的访问。需要到达经过身份验证的内部端点的 CI/CD 管道会被分配一个客户端 ID 和密钥,以取代人工 SSO 流程。每次访问(无论是人为还是自动)都会生成一个审核事件,其中包含身份、时间戳、IP、设备和决策 - 可通过 Logpush 导出到 SIEM、Splunk 或 Datadog。

零信任不做什么

Cloudflare 零信任控制谁可以访问什么,但它不是对应用程序内传输的数据进行加密的解决方案 - 这仍然是应用程序本身通过 HTTPS 的责任。 Access 也不会取代数据中心或 VPC 内服务之间的东西向流量的防火墙。对于微服务之间的内部通信,mTLS 或服务网格仍然是合适的机制。

初始实现中忽略了一点:隧道保护 Cloudflare 边缘和源服务器之间的路径,但服务器仍然只需要信任来自 2 的连接。如果端口 443 对隧道外的互联网开放,则可以绕过访问。正确的做法是阻止所有传入服务器的流量(本地隧道守护程序生成的流量除外)。

采用后操作会发生哪些变化

最重要的变化不是技术上的——而是管理访问权限的人的思维模式。通过VPN,网络团队配置路由和分割隧道;通过零信任,身份团队可以为每个应用程序配置策略。访问管理离开网络层,进入身份层。对于拥有独立网络和安全团队的组织来说,这涉及到责任协商。

免费套餐 — 最多 50 个用户,具有访问、隧道、WARP 和基本网关 — 足以进行生产验证。团队计划的费用为每个用户每月 7 美元,并添加了审核日志和具有 HTTP 过滤功能的网关。 Enterprise 添加了浏览器隔离、DLP 和电子邮件安全性,并具有协商定价。对于拥有超过 50 个用户并已整合 Okta 或 Azure AD 的团队来说,部署工作很少会超过 4 周的实际工作时间。

迁移前要评估什么

转向零信任的决定与技术无关,而是与当今最大的安全风险所在有关。如果您当前的 VPN 在身份验证后授予广泛的网络访问权限,则泄露的凭据会暴露整个内部网络。零信任限制了传播半径:受损的访问仅到达明确允许该身份的应用程序集,并以设备状态作为附加控制。

从泄漏风险最高且泄漏成本最高的应用开始。首先通过组限制策略和强制设备状态进行迁移,以可控的影响在生产中验证完整的模型。那里测试的模式也适用于投资组合的其余部分。

另请阅读

  • [Cloudflare Access 与 Tunnel:哪个在零信任中执行什么操作3?
  • [WARP:Cloudflare 的零信任客户端及其真正用途4
  • [使用 SSO 的 Cloudflare Access:与 Okta 和 Azure AD 集成5
  • [零信任 vs VPN:变革的真正成本6
  • [Cloudflare WAF:超越基础的 Web 应用程序保护7