版权声明:本文由黄希彤  原创文章,转载请注明出处: 
文章原文链接:https://www.qcloud.com/community/article/651089001483090830

来源:腾云阁 https://www.qcloud.com/community

12月30日下午,宝贝回家论坛一台服务器(server4)开始出现异常的高负载情况。首先是自动触发了自动扩容机制,增加了新服务器进来分担压力,保障了服务的持续可用,给问题解决争取了时间窗口。

随后手机收到告警短信,登录腾讯云控制台,首先排除了DDOS,因为外网入带宽和出带宽都正常。异常的是内网出带宽和入带宽。难道有内网的服务器发起攻击? 登录到服务器上来看,top没有看出什么异常,没有特别高的进程,php-fpm进程确实多了一些,每个进程的cpu时间也确实长了一些,但是也不说明什么问题。看access_log也没有看到ip聚集的请求。

怀疑服务器本身有异常,把服务器重启了一下,问题没解决。

把出现问题的服务器(server4)从负载均衡中踢出,问题立刻消失。加回到负载均衡集群中,问题没有再出现了。

随后发现,另一台原来没有问题的服务器(server1)现在变成高负载了。一样从负载均衡中踢出来再加回去,这下两台都高负载了。

没有什么头绪,只好继续分析access_log。这次看出来问题了。

有一批来自世界各地的肉鸡(也可能是伪造的ip)在根据用户ip一个一个的访问用户资料。这些ip都来自哪里的呢?

所以问题很清晰了,这是一个CC攻击,并且攻击ip是分散的,不能通过封ip来化解。

对于CC攻击,discuz是有对应的设计的,可以在config_global.php中配置,不过对抗手段都会或多或少的影响到正常访问。针对这次攻击我启用了 $_config['security']['attackevasive']=4

也就是要求每个用户第一次访问的时候都要看一个2秒的等候页面,然后自动进入原来的访问地址,这是目前对于用户访问体验伤害最小的方式(用户什么都不用做,只要第一次等2秒就一切正常了)。如果CC攻击没有继续升级对抗这个策略的话,这次攻击应该就到此为止了。

这是一个公益网站,全国最大的寻亲论坛,不知道这黑客攻击它干啥呢?不怕报应在自己孩子身上吗?不过还好他选择了放假前三个小时而不是放假的时候攻击,希望能过个安心的假期。

部署在腾讯云的公益网站遭受了一次CC攻击的更多相关文章

  1. 怎样将本地web数据库项目部署到腾讯云服务器上?

    怎样将本地web数据库项目 部署到腾讯云服务器上? 1.本地计算机的工作: 1.1用eclipse或者myeclipse做好一个web项目,可以只做一个数据库的增删改查,本地部署到Tomcat服务器, ...

  2. 怎样将本地web项目部署到腾讯云服务器上?

    怎样将本地web项目部署到腾讯云服务器上? 1.本地计算机的工作: (1).用eclipse新建一个web项目,然后在webcontent下新建一个index.html,然后在本地部署到Tomcat服 ...

  3. 创建Django项目并将其部署在腾讯云上

    这段时间在做scrapy爬虫,对爬出来的数据基于Django做了统计与可视化,本想部署在腾讯云上玩玩,但是因为以前没有经验遇到了一些问题,在这里记录一下: 首先说下Django的创建与配置: 1. 创 ...

  4. Hexo博客部署到腾讯云服务器全过程(Nginx,证书,HTTPS),你要的这里都有

    背景 说来也惭愧,博客已经搭建很久了,一直免费的部署在 Coding 和 Github Pages 上,前者迁移到腾讯云 Serverless,导致原有的配置始终有问题,没时间仔细研究,刚好腾讯服务器 ...

  5. war包部署到腾讯云中报404的排错经历

    项目完成了部分功能,需要把项目放到公网上,方便演示讨论.本来以为挺简单的,直接将war包放到腾讯云服务器tomcat中,结果报错404,第一次碰到这种情况,于是想办法解决,花了一天的时间,终于解决了问 ...

  6. 将禅道部署到腾讯云linux 上

    部署环境 :linux(腾讯云),用到了 xshell   FileZilla 使用禅道集成环境lampp直接部署 1.首先下载 lampp j集成环境包.https://sourceforge.ne ...

  7. React项目的打包与部署到腾讯云

    腾讯云送了30天的免费试用,于是有了把react项目部署到上面的想法.项目是默认生成的,只是一个页面,但是这个过程中也遇到了不少麻烦与问题.下面来具体梳理下: create-react-app 来自F ...

  8. 把 nodejs koa2 制作的后台接口 部署到 腾讯云服务器

    我 使用 nodejs koa2框架 制作后端接口, 现在将nodejs koa2 部署到服务器 koa2项目 实现 接口 可以看我的 这篇文章: 简单实现 nodejs koa2 mysql 增删改 ...

  9. 采用flask+uwsgi+nginx架构将flask应用程序部署在腾讯云

    最近一星期加班为学校做了一个教师发展中心平台,在此总结一下部署经验 环境:Centos7.0  python2.7.5 1.安装nginx 命令行输入指令:sudo yum install nginx ...

随机推荐

  1. 【HDOJ】1341 Simple Computers

    注意PC要与31. #include <cstdio> #include <cstring> #include <cstdlib> #define MAXN 40 ...

  2. U8800安装软件显示无效的URI问题

    看到很多人遇到这个问题,其中包括我自己,最后找到可行的解决办法,现整理出来一个新帖,有同样问题的U友可以参考下. 手机先连接电脑,进入USB存储状态,然后在计算机上找到SD卡目录下的.android_ ...

  3. Web Server CA证书签名步骤和自签名测试,支持多域名

    Web Server支持HTTPS访问需要两个文件,私钥和证书.私钥和证书都放在服务器上,私钥用来加密数据,证书传递给客户端.自己签名的证书在传递给浏览器的时,因为证书不被信任,所以会弹出连接不安全, ...

  4. (转)Linux bash shell脚本语法入门

    http://www.linuxsky.org/doc/newbie/201004/389.html 1.基础 #!/bin/bash //bash脚本第一句都是这个,他会让系统指定以bash来解释这 ...

  5. Object-C 类定义 -- 笔记

    OC类分为两个文件,一个是.h文件,一个是.m文件 .h文件 存放类,函数的申明 .文件 存放类的具体实现 类申明使用关键字 @interface @end来申明 类实现使用关键字@implement ...

  6. javascript单元测试-jsamine[转]

    Jasmine的开发团队来自PivotalLabs,他们一开始开发的JavaScript测试框架是JsUnit,来源于著名的JAVA测试框架JUnit.JsUnit是xUnit的JavaScript实 ...

  7. android中定位光标位置

    edittext.setSelection(int); edittext.setText(123);//设置edittext中的内容 edittext.setSelection(123.length( ...

  8. Spring Data Redis—Pub/Sub(附Web项目源码)

    一.发布和订阅机制 当一个客户端通过 PUBLISH 命令向订阅者发送信息的时候,我们称这个客户端为发布者(publisher). 而当一个客户端使用 SUBSCRIBE 或者 PSUBSCRIBE ...

  9. Linux - Eclipse CDT + GCC 安装(2014.10.2)

    Eclipse CDT + GCC 安装 (2014.10.2) 本文地址:http://blog.csdn.net/caroline_wendy 1. 安装Eclipse,在官方站点下载Eclips ...

  10. C++中的static成员

    C++中的static 成员永远是我心中的痛,记了好多次了,但是今天在项目中依然忘记了,今天写下来,方便以后不用再去Baidu.google搜索了. 在头文件中声明静态成员 static int i; ...