现在流行分布式攻击,查看访问日志,大批的美国IP、日本IP、以及其它国家的IP,好了,言归正传,来说下现在最流行的CC和DDOS攻击如何防御吧。

大部分的服务器、云主机、VPS主机、虚拟主机都不防DDOS的,国内的阿里云、腾讯云等主机商免费提供5G带宽峰值,但这点根本不够黑客打的,一打就黑洞,SSH根本连不上。

其实说白了,CC就是堆软件,DD就是堆硬件,堆的越多,防御越强,跟防御阵地一样。

使用CDN

CDN缓存节点,非常好,凡是被DDOS的,一定是被暴露的自己的真实IP,所以必须使用CDN来隐藏,国内选择百度云加速、国外选择cloudflare,再查IP,显示的都是节点IP。然而免费的CDN虽然隐藏了IP,但只能防御几G的量,一旦超出,CDN商便会停止节点解析,直接解析到真实的主机IP上。

cloudflare:美国著名CDN商,黑客的噩梦,见到是CF的节点,黑客都懒得去打,CF防御CC攻击的效果差,高级版可以防御DDOS,价格200刀/月,请查看设置教程。

付费的CDN最能抗,然而费用非常高,付费CDN做的最好的是国内和国外的cloudflare,然而价格都不便宜,每个月一两千。你没看错,防御DDOS就是烧钱的节奏,所以很多站直接被打死,就是因为烧不起。

使用高防主机

找主机最苦逼了,很多号称高防主机,其实根本就防不住,因为机房的带宽就那些,被DDOS严重了,机房都是封IP,像国内的主机,基本300G峰值是个槛了,如果攻击你的流量大于这个值,你就必须上CDN了。

法国OVH以抗DDOS闻名世界,两个机房加拿大和法国免费提供480G的DDOS,黑客看到是法国OVH的机房,都没信心去打了。官方不支持国人购买,所以需要在二级代理商轻云LightCloud那买才行,OVH到中国的线路不好,所以访问延迟和速度差的很。

安装防火墙

虽然主机都带有防火墙,但自带的非常的鸡肋,基本可以忽视,国内比较有名的防火墙没有几个。

金盾:金盾在国内是老资格了,很多服务器安装的都是金盾,防御DDOS效果不错,国内各大高防机房的软件,安装的都是金盾,防CC、DD都不错。

拒绝访问

我从不用windows的主机,感觉漏洞太多,一直用Linux主机,nginx设置比较方便些。

拒绝非中文用户访问:这需要修改 /usr/local/nginx/conf/duimin.com.conf,正常的非中文访问的全部404错误页面。

1
2
3
if ( $http_accept_language ~* ^[^zh]){
return 404; #非中文用户访问网站返回404
}

安装CCKiller:轻量级CC攻击防御脚本,由张戈编写,登录ssh,运行以下代码,然后输入y回车,回车,安装完成。每20秒检查一次,单个IP并发超过100,将会拉黑10分钟。
1
wget -O CCKiller.sh --no-check-certificate https://git.io/fjzPJ && bash CCKiller.sh -i

只允许中国访问:大部分的CC攻击都是来自国外,我网站都中国客户,封国外IP的话,用IP段太苦逼,直接用cloudflare的墙功能,我添加了254个国家,让他们访问都需要验证码。

禁止访问动态页面:动态就会读数据库,查询过多就会满CPU,网站就会挂,所以必须全站静态化,比如wordpress的静态化:

  • WP Super Cache:缓存插件,一键缓存全站静态化,随便它CC。
  • install.php:动态,直接删除了它,/wp-admin/install.php,只有安装才会用它。
  • wp-login.php:必要时修改wordpress后台登录地址,跳转到首页。
  • /?s=:自带的查询功能真的很坑,多个IP同时刷新一个查询页面,瞬间死战,直接关闭搜索功能。

多主机IP、多主机节点

如果是DDOS攻击,主机分配的IP多的话,可以解析得到多个地址。也可以购置多个主机,分别解析绑定主机,一个IP或一个主机被攻击,其它IP或主机可以分担攻击流量。

服务器系统和网站系统

这个是最后一点了,网站安全的首要任务就是网站无漏洞让黑客钻进,所以必须把安全做到极致。

版本:系统或插件每个版本出来都会有漏洞,所以尽量使用老版本,稳定版本,不要使用过度版本。比如CentOS现在更新的7.X了,但我还是在用6.8,wordpress到4.7了,但我还是用3.X。对于插件,能用代码的绝不用插件。

因为大多数新版本都有大量的漏洞,尽量用大版本,别用小版本,wordpress好几次小更新,存在大的漏洞,就会被黑客利用。

端口:关闭ping功能和端口,或者修改端口登录,或生成秘钥登录。保护端口的软件很多,比如宝塔面板,或者云锁都有保护作用。

原文:http://duimin.com/52.html