宝塔面板怎么防御cc攻击

老被cc的福利来了,群里一些朋友天天被攻击,老夫也遭殃,坐不住了,直接上教程。

 

本教程只防CC攻击,不能防DDOS,防DDOS请麻溜买高防秒解。

 

实测:1核1G内存撑住700多代理IP持续攻击,屹立不倒,且CPU在45%左右徘徊。

 

本教程借助根据CPU/内存大小 优化LNMP环境配置,且使用了类似cfCDN的防CC攻击特点并做了一些优化

 

什么是CC攻击

 

以为我要跟你讲?自己不会百度搜索

 

你是否受到了CC攻击

 

1.网站访问缓慢,报503错误(nginx拒绝连接),502错误(php挂逼)

 

2.服务器CPU 100%;

 

基本上确诊被C了。

 

LNMP环境优化

 

1.nginx优化:nginx没有过多的优化,一般nginx都死被php拖死的。简称:扶不起来

 

2.宝塔中nginx的过滤器测试效果并不理想,如果各位不打算回复的话(不打算看接下来的核心内容)可以开启“防CC攻击模块”并设置为频率100,周期60。能有效防止一些恶意访问,比如小学生找不到代理,就几个代理。如果打算支持一下,请直接关掉它。

 

3.php优化:服务器挂壁基本都是php进程太多导致的了。nginx是个传菜的,php就是真正花时间吃饭的。

 

 

4.如图:简单理解,最少15个人在厂里,最多50个人同时干活,如果有35个人以上没干活就开除掉。

 

5.根据CPU核数设定起始进程数和最小空闲,这样可以发挥正常状态的最大优势,加快处理速度 设置为15*核数 ,即1核15进程,双核30进程。

 

6.根据内存设置最大进程,防止出现内存爆炸,导致fpm挂起或者mysql等其他服务挂逼。设置为1G*(40-50),即1G内存40-50,2G内存80-100。

 

7.设置上面两项可以更有效率的使用服务器。

 

8.如上设置并不能防止CC攻击,但是为我接下来需要说的提供了前提。

 

redis + 验证码 + 策略 防CC

 

采用redis高性能数据库,合理的访问策略验证并在超大攻击时开启验证码访问。让网站远离CC

 

1.安装redis,在宝塔软件管理找到,安装;

 

2.安装php redis扩展,你用哪个php就安装哪个php的扩展,别装错了;

 

3.在网站入口,如emlog的index.php 头部加入如下代码:

 

 

到这里就完成了,试试吧