套 Cloudflare 如何保护好源 IP 地址?
V2 的大神们,萌新请教。
目前,我是在防火墙上设置白名单,只允许 Cloudflare 的访问,这样是否就足够安全了?
还需要什么其他的手段或注意事项吗?正确的姿势是什么呢?
感谢大佬们的指导,我也找到了官方的指导手册:https://developers.cloudflare.com/fundamentals/get-started/task-guides/origin-health/free/
1
ovoo 2023-04-17 18:18:11 +08:00 3
抛砖引玉:证书会被全网扫 IP 的引擎扫到,所以需要设置默认站点的证书,不能和 cloudflare 解析的域名一样。
|
2
0o0O0o0O0o 2023-04-17 18:33:32 +08:00
1. 因素太多,历史解析、证书等,chatgpt 应该能告诉你更多
2. 我认为官方也不觉得这种操作足够安全 https://blog.cloudflare.com/cloudflare-aegis/ |
3
0o0O0o0O0o 2023-04-17 18:36:15 +08:00
分享下我用于 vaultwarden 的免费方案供参考和指正:
AWS EC2 和国外一些 VPS 会给你默认分配一个 public dns ,相当于一个域名,这是公开不可隐藏的; 配置 AWS 的防火墙、EC2 自身的 iptables 、Nginx ,仅允许 cloudflare ips ; 在 Cloudflare workers 里中转请求到 public dns ,并且在 worker 里给这个请求添加一个秘密的 header ; Cloudflare 上在 page rules 将一个无法爆破的路径设定到这个 worker ; EC2 上 Nginx 用这个 header 鉴权通过,请求才会 proxy pass 到 vaultwarden ; Nginx 除了鉴权通过,别的都伪造成 404 之类的相同响应防止猜测。 个人觉得这样不需要在 Cloudflare 直接解析到 EC2 ,可以防止各种已知或者未知的 bypass 方式,并且也不像 cloudflared tunnel 那样依赖 VPS 的稳定性。 |
4
Lentin 2023-04-17 21:39:10 +08:00 2
端口全关,用 cloudflare tunnel 映射出去 (手动狗头
|
5
ZE3kr 2023-04-17 22:02:25 +08:00 via iPhone
干脆不要 IPv4 了,来个随机的 IPv6 ,看谁能全网扫到。此外需要注意机器不要去请求别人的 API 啥的,不然也会暴露 IP
|
7
Aoang 2023-04-18 08:24:12 +08:00 via iPhone
@hronro 遇到过一个问题,在机子上部署了 GitLab/ES/Runner 三大件,每当 Runner 起多了,cloudflared 就……,日志显示网络断开,得调整它的调度优先级才能解决这个问题
|
8
renfei OP 感谢上方大佬的建议,我试用了一下 Cloudflare Tunnel 隧道,似乎不太适合我。
因为我是通过 CNAME 接入 SaaS 的,所以在设置零信任的 Cloudflare Tunnel 隧道时,查询不到我的域名。 目前我只能通过四层防火墙来给 Cloudflare ips 设置白名单的方式。 |
9
mmdsun 2023-04-18 12:34:38 +08:00 via iPhone
我之前套 cf 也被 CC 了,都不知道是怎么看到我 IP 的,现在想起来可能是解析历史记录。
|
10
ayconanw 2023-05-11 03:22:48 +08:00
最好的方法是,服务器防火墙开白名单,只允许 cf 的 ip 段
cf 的 ip 段他们自己有维护一个列表 |