【DDoS】优化Cloudflare的方案

前言

注意:本篇文章不是面向建站小白的,主要是面向想要优化使用Cloudflare的网站访问速度的站长,如果你没有此需求可以忽略此文章,这篇文章并不会对一些基础的操作进行讲解! Cloudflare在国内的访问速度极慢,所以我们需要一些方案去优化一下 本篇文章就教大家如何优化Cloudflare(已备案的可以直接使用国内的CDN服务)

需要什么?

  • 1.你要确保你的源站是服务器而不是虚拟主机,本篇文章是使用宝塔面板进行讲解的,但是实际上并不需要宝塔面板,如果你熟悉修改Nginx配置文件和反向代理相关之类的操作,你可以忽略
  • 2.你需要购买一个在国内访问速度快的服务器作为反向代理的加速服务器(当然是要境外的,如果你买大陆的服务器那就要备案了,如果你有能力备案的还折腾什么Cloudflare呀!)
加速服务器推荐使用腾讯云的香港轻量应用服务器,最低配24元的就好,延迟很低!
  • 3.一个Cloudflare的账号,没有的去花几分钟注册就好
  • 4.把域名接入DNSPod,如果是腾讯云注册的域名默认就是DNSPod的,如果是其它地方注册的或者更改过了DNS服务器请把DNS服务器修改成DNSPod的
  • 耐心

思路讲解

有一定经验的站长大佬看完这个思路就能自己动手了,如果看了还是不懂的不用慌,我会一步步教
  • 1.把域名接入到Cloudflare(通过第三方合作伙伴)并配置好源站IP
  • 2.然后加速服务器配置反向代理,源站服务器配置上游服务器
  • 3.然后到DNSPod里面修改解析记录
    • 一个是默认线路,CNAME,填写第三方合作伙伴提供的CNAME地址
    • 一个是境内线路,直接A记录解析到你的加速服务器
  • 4.接入D监控,配置下不能访问的时候自动切换解析记录就好了

教程

接入Cloudflare

浏览器打开:https://cdn.ranfu.net/
进入到这样的界面,填写你的Cloudflare(不想打了,以下简称CF)账号密码就好了
点击添加域名
输入你的域名
进入到这样的界面,点击添加新记录
记录名填写你网站的主机记录 记录类型选CNAME 记录内容填写:
你的源站IP.sslip.io
其它的不用更改,直接点击提交 然后,你可以试着访问你刚刚填写的记录内容,看看访问之后是不是出现了你那个IP地址对应的网站/网页(你可以在宝塔面板里面设置下默认页来看看效果),如果出现了提示不安全的不用管,直接坚持访问就好了,如果出现的是正确的页面那就可以进入下一步了
把CNAME接入下的CNAME整个复制下来,待会会用到

Nginx配置文件修改

源站的配置

进入到你源站的宝塔面板,在软件商店里面点击Nginx版本右边的配置,然后点击配置修改
(别问我为啥全部打码,因为我也不知道会不会被有心人看见)
把下面给的代码全部复制到http下
        set_real_ip_from 173.245.48.0/20;
        set_real_ip_from 103.22.200.0/22;
        set_real_ip_from 103.31.4.0/22;
        set_real_ip_from 141.101.64.0/18;
        set_real_ip_from 108.162.192.0/18;
        set_real_ip_from 190.93.240.0/20;
        set_real_ip_from 188.114.96.0/20;
        set_real_ip_from 197.234.240.0/22;
        set_real_ip_from 198.41.128.0/17;
        set_real_ip_from 162.158.0.0/15;
        set_real_ip_from 172.64.0.0/13;
        set_real_ip_from 131.0.72.0/22;
        set_real_ip_from 104.16.0.0/13;
        set_real_ip_from 104.24.0.0/14;
        set_real_ip_from 2400:cb00::/32;
        set_real_ip_from 2606:4700::/32;
        set_real_ip_from 2803:f800::/32;
        set_real_ip_from 2405:b500::/32;
        set_real_ip_from 2405:8100::/32;
        set_real_ip_from 2c0f:f248::/32;
        set_real_ip_from 2a06:98c0::/29;
        set_real_ip_from 127.0.0.1;
        set_real_ip_from 这里面填你的加速服务器IP;
        real_ip_recursive on;
        real_ip_header X-Forwarded-For;
注意不要复制错地方,要复制到http下 如果你没有修改过配置文件,你要添加到的位置应该是60行左右 然后点击保存

加速服务器的配置

进入到加速服务器的宝塔面板,同样是: 在软件商店里面点击Nginx版本右边的配置,然后点击配置修改 把下面给的代码全部复制到http下
upstream 自己给规则起一个名字 {
    server 刚刚保存下来的CNAME地址:443 max_fails=5 fail_timeout=10s;
    keepalive 256;
    keepalive_timeout 120s;
    keepalive_requests 100;  
}
注意:如果CF的节点更新,需要手动到源站服务器的配置更新下节点( “set_real_ip_from 127.0.0.1;” 上面的就是Cloudflare的节点IP,全部换成新的就好,如果节点更新,Cloudflare会发邮件给你的) 只要源站不换,节点无更新,源站就不需要再修改 但如果要给新的网站加CF,就要在加速服务器里面再添加一次那个规则

添加网站

在加速服务器中添加网站,PHP选择静态,域名填你网站的域名就好了 新建完之后,给这个网站添加一个反向代理,代理名称自己随便填,目标URL填自己刚刚新建的规则的名字(就是upstream后面的)但是,要伪装的像个URL一样,在前面加个https://,比如这样:
https://cloudflare_www_rsnocsi_cn
把发送域名填为你的网站域名 添加完之后在反向代理配置文件中expires 12h;的下面添加以下内容: proxy_ssl_name 你的网站域名; proxy_ssl_server_name on; (在add_header Cache-Control no-cache;的下面也要添加)

测试可用性并添加解析

此时,你可以修改host文件,将你的网站指向加速服务器的IP,测试网站能否正常使用,如果网站能正常使用且ping出来是加速服务器的IP而非源站,即可在dnspod中(如果你的域名不属于腾讯云或没有更改dns为dnspod,请将域名接入到dnspod)修改解析: 一个解析线路为境内,A类型解析到加速服务器的IP 另一个解析线路为默认,CNAME类型解析到合作伙伴中CNAME接入给的CNAME地址 等待解析生效即可

添加D监控自动切换解析记录

自行在dnspod添加d监控,并设置宕机时自动切换可用解析记录即可 敬请享用吧!

后语

大家可以试试,有漏的,错误的地方欢迎留言,这篇文章是我抽空写的,最近很忙,一方面是初三学业紧,另一方面是在处理勿待炬火论坛的事情。 太久太久没有撰文了,抱歉各位!(这篇文章我从9月7日就开始写,一直写到现在,理论上是不会写那么久的,但是实在没空)

评论

  1. Abyss
    博主
    Android Chrome
    6月前
    2021-11-12 13:00:01

    终于!

  2. Windows Chrome
    6月前
    2021-11-21 15:35:43

    最简单的方法,cname那里建议cname到377.run

  3. Windows Chrome
    6月前
    2021-11-21 22:33:05

    原来早就发了|´・ω・)ノ,看来这是需要两个服务器啊,源站是Apache的怎么弄(ó﹏ò。)

    • Abyss
      博主
      逻昼
      Android Chrome
      6月前
      2021-12-04 17:39:36

      不清楚apache的

  4. 道锋潜鳞
    Windows Firefox
    5月前
    2021-12-13 22:33:20

    站长,cf的partner cname接入功能和plesk pro功能目前已经停用,此教程已经无法使用了,

  5. 测试
    Android Chrome
    4月前
    2022-1-19 22:50:13

    测试

  6. Windows Chrome
    2月前
    2022-3-29 10:56:54

    感谢分享 赞一个

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇