【教程】使用 Cloudflare Zero Trust 限制访问

简介

零信任网络访问(ZTNA)

用户通过客户端或 Web 浏览器连接到企业资源,无需使用 VPN。当请求通过我们的网络进行路由和加速时,它们将被根据 Zero Trust 规则进行评估,这些规则集成了来自身份提供者、设备和其他上下文的信号。

过去,RDP 软件、SMB 文件查看器和其他胖客户端程序需要 VPN 来连接到专用网络连接。如今,团队可以通过 Cloudflare 的网络私密地路由任何 TCP 或 UDP 流量,并一次性对流量进行加速、验证和过滤,获得最佳性能和安全性。。

说人话就是你可以限制用户需要进行登录后才能访问你的业务

添加应用(以 web 应用举例)

你需要首先绑定并且解析此域名,例如 xxx.example.com

官方文档

提示

应用类型选择 Self-hosted

设置 App

session duration 建议选择 24 小时,避免过多重定向

Subdomain

填入 xxx

Domain

选择 example.com

添加策略

名称可随便填写,Action 不变选择 Allow

Include

左边选择 Emails,右边填入 Cloudflare 账户邮箱用于登录。

Require

左边选择 Login Methods,右边选择 One-time PIN

体验

此时,打开 xxx.example.com 将会要求你进行邮件认证,输入 Cloudflare 账户邮箱登录即可。

使用程序进行访问

官方文档

提示

创建 Service Token

关联 Token 到应用

进入应用访问策略配置页面,添加新策略

策略名随意,Action 选择 Service Auth。

Include

左边选择 Service Token,右边选择刚才建立的 Token。

设置请求头

Client ID 和 Client Secret 创建时已提供。

1
2
CF-Access-Client-Id: <Client ID>
CF-Access-Client-Secret: <Client Secret>
1
2
3
4
5
6
7
8
from httpx import get

headers = {
"CF-Access-Client-Id": "",
"CF-Access-Client-Secret": "",
}

get("xxx.example.com", headers=headers)

【教程】使用 Cloudflare Zero Trust 限制访问
https://blog.xtao.de/373.html
作者
深海小涛
发布于
2023年1月29日
许可协议