流量不是很多,每天 12000 ip 32000pv,但是这几天有些坏人一直在发动并发访问,对方找到网站上的所有 post 之后,利用几个 ip 不断访问 post 页面,一秒钟 3000-5000 次,添加了验证码,但是验证码好像失效了,这样没达到攻击级别,但是却让 cpu 长期 100%,导致网站很卡。
这种情况怎么办?
这种情况怎么办?
|
xiaowu365Jul 13, 2017
1
百度云加速
|
|
2
@xiaowu365 是英文站,用了 cloudflare 的 pro 版,
|
|
alex321Jul 13, 2017
3
Nginx 负载均衡下。。。自动脚本分析每秒超过 5 次 post 的 IP 添加到 Nginx 的 black list。
|
|
sydraJul 13, 2017
4
全局增加一个根据 ip 的访问时间间隔限制不就好了.
|
|
hoseaJul 13, 2017
5
属于被攻击防御范畴的问题了吧。。建议先封 ip。。然后配置 server 层面的访问拦截
|
|
nullenJul 13, 2017
6
nginx 有 rate limit 模块,可以试试看先?
|
|
andrewDDCJul 13, 2017
7
nginx +lua + iptable 设置一下规则,超过的直接 drop 掉
|
|
yghackJul 13, 2017
8
waf
|
|
wwekJul 13, 2017
9
继续挂在 cloudflare 下
自己用 nginx +lua 做二次清洗 |
|
we3613040Jul 13, 2017
10
按照 ip 做限制,对方换代理也需要成本的
|
|
jinfeng333Jul 13, 2017
11
这个属于被 CC 了 用 Nginx 限制一下
|
|
yylzcomJul 13, 2017
12
之前遇到过
nginx+fail2ban 禁用 ip24 小时 |
|
windfarerJul 13, 2017
13
打回去。。
|
|
towserJul 13, 2017
14
去搜防 CC 脚本,一抓一大把 ,调试好了后台跑在服务器上,其他什么都不用管。
|
|
garyalenJul 13, 2017 via Android
15
redis cache 静态化 php7
|
|
jellyboolJul 13, 2017 via iPhone
16
这种情况跟我之前遇到的好像....nginx + lua 可以的,基本就是分析特征,匹配(不管是 ip 或者 agent 或者 header ),然后处理掉就好……
|
|
cst4youJul 13, 2017
17
cc 还是好防的, 针对对方攻击的方式做限制就好
|
|
a570295535Jul 13, 2017
18
虽然我不懂啥技术,但是我的评论框提交评论后会有 15 秒的等待时间,
还有就是对页面刷新时间进行限制,这样清净不少。。。 |
|
ddouJul 13, 2017 via iPhone
19
|
|
oldgunJul 13, 2017
20
干掉就好
|
|
GG668v26Fd55CP5WJul 13, 2017 via iPhone
21
@a570295535 这种前端的限制只能防君子防不了小人……
|
|
yylzcomJul 14, 2017
23
@xiaoz #22 我只做了 http 的,原理是自建 fail2ban 的 filter 来读取 nginx 的日志,建议要从 nginx 的日志入手看看吧。如果确定 fail2ban 的 filter 能对应到 nginx 日志里的条目但是无效,那就是玄学了……
|
|
BetacoefficientJul 14, 2017
25
@glouhao 你说的对,有些人就是这样坏。
|
|
msg7086Jul 14, 2017
26
rate limit 配合 fail2ban 真的够用了。
|
|
yylzcomJul 14, 2017
28
@xiaoz #27 检查你的 fail2ban 的自定义 filter 里的 action 等号后面
[iptables[name=xxx, port=http, protocol=tcp] 看看修改 port 为 https 试试看? |
|
leekafaiJul 14, 2017 via Android
29
web server 直接斩 ip 吧,增大 d 站成本说不定别人觉得没好处就收了。
|