请选择 进入手机版 | 继续访问电脑版
查看: 101|回复: 19

[经验] 使用cf的worker实现被攻击后自动切换节点的问题

[复制链接]

9

主题

139

帖子

311

积分

中级会员

Rank: 3Rank: 3

积分
311
发表于 2020-2-5 14:17:54 | 显示全部楼层 |阅读模式
本帖最后由 370 于 2020-2-5 14:20 编辑
一.需求
服务器没被攻击之前能够使用优质线路提高国内访问速度
服务器被攻击之后能迅速切换到高防节点继续提供服务
攻击停止之后立刻切换回优质线路
二.一个实现方法
小鸡被攻击前,
用户  反代小鸡  cf  后端服务器
小鸡被攻击后
用户  cf(开启验证码与自动ip屏蔽)  后端服务器
设置方法
额外服务器运行定时脚本检测小鸡http返回代码,根据返回值来判断小鸡状态.
小鸡攻击开始:使用cf的api脚本切换cname到cf,并开启cf的验证码.后端服务器运行另外一个脚本检测自己负载,达到后使用cf脚本自动在cf中添加恶意ip.
小鸡攻击停止:使用cf的api脚本切换cname到小鸡.关闭cf验证码.
缺点
需要额外的一台小鸡运行检测脚本
使用dns切换过慢.考虑到脚本检测频率,即使设置TTL为2min,被攻击后切换依然很慢.
三.使用worker的实现方法
小鸡被攻击前,
用户  cf worker  反代小鸡   cf  后端服务器
小鸡被攻击后
用户  cf worker  cf(开启验证码与自动ip屏蔽)  后端服务器
设置方法
cf worker中检测小鸡状态
小鸡攻击开始:使用worker切换访问节点为cf,并开启cf的验证码.后端服务器运行另外一个脚本检测自己负载,达到后使用cf脚本自动在cf中添加恶意ip.
小鸡攻击停止:使用worker切换访问节点到小鸡.关闭cf验证码.
优点
不在需要额外的服务器运行检测脚本.
被攻击后worker的切换效率几乎是立即,比DNS方式生效快.
可以添加在worker中设置负载均衡,实现不同地区访问不同节点.
请教大佬上面的方式是否可行或是有理解错误的地方?
是否有更好的方式和改动?

回复

使用道具 举报

17

主题

161

帖子

359

积分

中级会员

Rank: 3Rank: 3

积分
359
发表于 2020-2-5 14:27:42 | 显示全部楼层
搞的太复杂了

没攻击:要速度优先选HK机器,;
被攻击:备用机OVH就算知道IP也D不死,在OVH上套个CF;
做好MYSQL主从和网站Rsync同步,用DNSPOD做宕机切换,一般5分钟内就可以切换到备用机,当攻击停止又可以自动切换回HK。
回复

使用道具 举报

9

主题

139

帖子

311

积分

中级会员

Rank: 3Rank: 3

积分
311
 楼主| 发表于 2020-2-5 14:31:07 | 显示全部楼层
本帖最后由 370 于 2020-2-5 14:34 编辑

lonefly 发表于 2020-2-5 14:27
搞的太复杂了
没攻击:要速度优先选HK机器,;
被攻击:备用机OVH就算知道IP也D不死,在OVH上套个CF ...

明白大佬的意思,关键线路好的小鸡配置高比较贵.现在站点就放在小鸡上.跑起来配置已经不够了.
只是用作反代的话就不要那么高配置了,mysql和php这些都不用装.只要线路好就行.
成本也更低.
回复

使用道具 举报

9

主题

139

帖子

311

积分

中级会员

Rank: 3Rank: 3

积分
311
 楼主| 发表于 2020-2-5 14:27:00 | 显示全部楼层
@suantong
@ttydy
@openos
求指点
回复

使用道具 举报

17

主题

161

帖子

359

积分

中级会员

Rank: 3Rank: 3

积分
359
发表于 2020-2-5 14:32:12 | 显示全部楼层
访问量大的话你要担心的不是配置问题,是带宽

回复

使用道具 举报

9

主题

139

帖子

311

积分

中级会员

Rank: 3Rank: 3

积分
311
 楼主| 发表于 2020-2-5 14:38:53 | 显示全部楼层

lonefly 发表于 2020-2-5 14:38
访问量大的话你要担心的不是配置问题,是带宽

带宽,内存.硬盘IO的负载都非常小.
只是cpu经常负载高.经常502.
再说使用dns切换的速度的确优点慢.

回复

使用道具 举报

5

主题

165

帖子

355

积分

中级会员

Rank: 3Rank: 3

积分
355
发表于 2020-2-5 14:44:48 | 显示全部楼层
用cf-worker的话 用户请求似乎都会先到cf 速度快的小鸡就失去优势了
回复

使用道具 举报

9

主题

139

帖子

311

积分

中级会员

Rank: 3Rank: 3

积分
311
 楼主| 发表于 2020-2-5 14:38:00 | 显示全部楼层
本帖最后由 370 于 2020-2-5 14:59 编辑

wweng 发表于 2020-2-5 14:51
用cf-worker的话 用户请求似乎都会先到cf 速度快的小鸡就失去优势了

去程的话应该不要紧吧.
现在不少小鸡也是去程163.回程gia.效果还可以.
回复

使用道具 举报

5

主题

165

帖子

355

积分

中级会员

Rank: 3Rank: 3

积分
355
发表于 2020-2-5 14:51:49 | 显示全部楼层

370 发表于 2020-2-5 14:54
去程的话应该不要紧吧.
现在不少小鸡也是去程163.回程gia.效果还可以.

用户  cf worker  反代小鸡
用户端来回都是cf,gia也没用啊
回复

使用道具 举报

9

主题

139

帖子

311

积分

中级会员

Rank: 3Rank: 3

积分
311
 楼主| 发表于 2020-2-5 14:54:56 | 显示全部楼层

wweng 发表于 2020-2-5 15:07
用户  cf worker  反代小鸡
用户端来回都是cf,gia也没用啊

大佬,是我理解错了吗?
看了下
https://www.codiva.io/blog/post/custom-load-balancing-with-cloudflare-worker/
应该是直接发送请求到反代小鸡,然后由小鸡返回?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋| 主机之家 |网站地图

返回顶部