Skip to content
  • Cloudflare 进阶防护与端口转发指南

    一、 🛡️ 进阶防护:仅允许 Cloudflare 回源

    适用场景: 建议纯建站用途的 VPS 使用。通过此配置,可以强制要求所有 443 端口的流量必须经过 Cloudflare 节点,从而隐藏服务器真实 IP,防止攻击者通过 IP 直连绕过 CDN 进行扫描和攻击。

    📌 前提条件

    1. 域名接入: 服务器已绑定域名,且域名已托管至 Cloudflare (CF)。
    2. DNS 纯净: 域名注册商处配置的 DNS 服务器仅为 Cloudflare 提供的地址。
    3. 模式开启: Cloudflare 后台解析记录的“代理状态”为 已开启(橙色小云朵)
    4. ⚠️ 注意事项: 如果您的 VPS 同时兼做 代理节点 或其他非 CF 业务,请谨慎操作,否则会导致非 CF 来源的连接被防火墙直接屏蔽。

    ⚙️ 配置 Cloudflare IP 白名单 (UFW)

    Bash

    # 1. 先删除之前允许所有 IP 访问 443 的规则
    sudo ufw delete allow 443/tcp
    
    # 2. 批量允许 Cloudflare IPv4 地址段访问 443
    for ip in $(curl -s https://www.cloudflare.com/ips-v4); do 
        sudo ufw allow from $ip to any port 443; 
    done
    
    # 3. 批量允许 Cloudflare IPv6 地址段访问 443 (如果服务器支持 IPv6)
    for ip in $(curl -s https://www.cloudflare.com/ips-v6); do 
        sudo ufw allow from $ip to any port 443; 
    done
    
    # 4. 重新加载防火墙使规则生效
    sudo ufw reload

    二、 🌐 Cloudflare 代理模式支持的端口

    当开启“橙色云朵”代理后,Cloudflare 仅支持转发以下特定端口的流量。如果您的服务运行在其他非标准端口,请求将被 CF 边缘节点直接丢弃。

    1. HTTP 协议支持端口 (未加密)

    • 80 (默认)
    • 8080, 8880
    • 2052, 2082, 2086, 2095

    2. HTTPS 协议支持端口 (加密)

    • 443 (默认)
    • 2053, 2083, 2087, 2096
    • 8443

    三、 💡 重要补充与限制

    • 端口匹配原则: 流量是成对匹配的。例如,用户通过 8443 端口访问您的域名,Cloudflare 默认也会尝试连接您源服务器的 8443 端口。
    • 非 Web 协议限制:
      • 标准的 CF 代理不支持 SSH (22)、FTP、SMTP 等非 Web 协议。
      • 若需转发此类端口,必须关闭云朵(改为仅限 DNS),或购买 Cloudflare Spectrum 服务。
    • WAF 边缘拦截: 任何不在上述列表中的端口请求,都会在 Cloudflare 边缘节点被拦截,不会到达您的服务器。