将自托管的 Web 应用程序连接到 Cloudflare,以便授权用户可以从浏览器进行访问,而无需使用 VPN。这在您需要向员工或承包商提供对公司内网、内部维基或管理面板等应用程序的安全访问时非常有用。
要探索其他访问方案,请参阅保护私有应用程序。
本指南与 Cloudflare One 仪表板 ↗中的 **Get Started(入门)**新手入门体验步骤相同。
Cloudflare Tunnel 在不开放您网络上的任何端口的情况下将您的私有网络连接到 Cloudflare。您在一个可以访问您的应用程序的设备上安装后台运行的连接器服务 cloudflared。它会从您的网络向外创建到 Cloudflare 的安全连接,因此无需更改防火墙。
Cloudflare Access 位于应用程序前方,在允许用户通过之前验证每个用户的身份。用户通过浏览器使用电子邮件一次性 PIN 或您的身份提供商进行登录。
- 具有 Zero Trust 组织的 Cloudflare 账户。如果您尚未进行此设置,请参阅快速入门。
- 您的 Cloudflare 账户上的活动域名。将在该域名上为您的应用程序创建一个公共子域名。
- 您的私有网络中能够访问该应用程序的 Linux、Windows 或 macOS 设备。这是您安装隧道的地方。
- 您的私有网络中运行的 Web 应用程序(例如
http://10.10.1.25或http://grafana.local)。
在这一步中,您需要描述您希望通过 Cloudflare 提供的内部应用程序。
- 在 Cloudflare One ↗ 中,选择 **Get Started(入门)**选项卡。
- 对于 Set up secure access to private apps from any browser(设置通过任何浏览器安全访问私有应用程序),选择 Get started(开始)。
- 对于 Connect a private web application(连接私有 Web 应用程序),选择 Continue(继续)。
- 在 **Connect and access private web applications(连接并访问私有 Web 应用程序)**屏幕上,选择 Continue(继续)。
- 输入您的应用程序的名称(例如
grafana-gcp)。 - 输入应用程序运行的主机名或 IP 地址。如果不确定,请使用 IP 地址(例如
10.10.1.25)。 - 选择您的应用程序使用的协议(HTTP 或 HTTPS)。
- 输入您的应用程序监听的端口。这通常是您在本地访问应用程序时使用的 URL 的一部分(例如
http://10.10.1.25:80中的80)。 - 选择 Continue(继续)。
您的应用程序需要一个公共 URL,以便用户可以从浏览器访问它。Cloudflare 会在您现有的某个域名上为该应用程序创建一个公共 URL。
- 从下拉菜单中选择一个域名。
- 输入一个子域名(例如
grafana)。完整 URL 的预览将随即显示(例如grafana.example.com)。 - 选择 Continue(继续)。
Access 策略控制哪些人可以访问您的应用程序。在此步骤中,您将使用基于电子邮件的一次性 PIN 创建一个简单策略。您在此处添加的用户在尝试访问应用程序时将通过电子邮件收到一次性 PIN。
- 输入您要授予访问权限的用户的电子邮件地址。
- 选择 Continue(继续)。
隧道将您的私有网络连接到 Cloudflare,以便流量可以到达您的应用程序。您可以选择现有隧道或创建新隧道。
- 在 Choose or create a Tunnel 下拉菜单中,选择现有隧道或输入名称以创建新隧道。
- 选择 Continue(继续)。
在私有网络中可以访问该应用程序的设备上安装 cloudflared。仪表板会根据您的操作系统生成相应的命令。
- 从下拉菜单中选择您的操作系统。
- 复制并运行仪表板中显示的命令。对于 Windows,请以管理员身份打开命令提示符。对于其他所有操作系统,请使用终端窗口。
- 隧道连接后,选择 Continue(继续)。
仪表板确认您的应用程序已在 Cloudflare Access 的保护下可用。
-
测试您的应用程序:
- 在成功页面上选择 Test login(测试登录)。
- 在 Access 登录页面上,输入您添加到 Access 策略中的某个电子邮件地址。
- 选择 Send me a code(向我发送验证码)。
- 输入来自电子邮件的验证码,然后选择 Sign in(登录)。
-
深入探索:在 Zero Trust > Access controls(访问控制) 下查看您的应用程序和策略,并在 Cloudflare 仪表板 ↗中的 Networking(网络) > Tunnels(隧道) 下查看您的隧道。
-
配置身份提供商:将电子邮件一次性 PIN 替换为组织的身份提供商,以获得无缝的登录体验。有关更多信息,请参阅身份提供商。
有关无客户端访问的深入指导,请参阅无客户端访问学习路径。
如果您在连接时遇到问题,请参阅以下资源: