Skip to content

Cloudflare Access

给挂在 CF 后面的 web 服务加一道独立的身份验证,服务本身不用改。纯 CF 侧配置,配坏了删掉 application 就恢复,不影响服务器。

配置路径

Zero Trust → Access → Applications → Add an application → Self-hosted

  • Subdomain + Domain 填上,Path 留空(留空才保护整个域名)
  • 「允许通过基于浏览器的 RDP/SSH/VNC 会话进行访问」保持关闭
  • Policy:Action = Allow,Include = Emails → 填自己的邮箱
  • 其它全默认

之后访问这个域名会先弹 CF 的登录页,邮箱收验证码。

几个注意

  • 不要给 SSH 的域名加 Access。留一条无需额外认证的纯净通道当保险
  • 首次用 Zero Trust 要选套餐,免费版 50 用户,可能要绑支付方式验证身份,免费额度内不扣费
  • 走「新建隧道」的一体化向导会问内部主机名和端口,那是隧道配置。已有隧道的话退出向导走 Self-hosted 常规路径

和 IP 白名单比

反代层的 IP 白名单(如 Traefik 的 ipAllowList)只适合固定 IP。动态 IP 用了某天自己就进不去。Access 靠邮箱验证,不受 IP 变化影响,更稳妥。

锁死了的话 SSH 进去删掉白名单那行中间件即可。

个人笔记,写给未来忘事的自己。