linux中防CC攻击两种实现方法

什么是CC攻击

cc攻击简单就是(ChallengeCollapsar)

CC攻击的原理就是攻击者控制某些主机不停地发大量数据包给对方服务器造成服务器资源耗尽,一直到宕机崩溃。CC主要是用来攻击页面的,每个人都有这样的体验:当一个网页访问的人数特别多的时候,打开网页就慢了,CC就是模拟多个用户(多少线程就是多少用户)不停地进行访问那些需要大量数据操作(就是需要大量CPU时间)的页面,造成服务器资源的浪费,CPU长时间处于100%,永远都有处理不完的连接直至就网络拥塞,正常的访问被中止。

防止CC攻击方法

我用防止这CC攻击有两种方法
第一种就是利用本机的防火墙来解决可以安装CSF之内的防火墙,这种的弊端是只能防止小规模的CC攻击和DDOS(我的站在阿里云,所以不用太担心DDOS)CC攻击比较猛的话机器也直接CUP跑满了。
第二种方式是添加CDN,这种防止CC攻击的方法是最好的,不过CDN一般都要钱,于是我找到一个https://www.yundun.cn/login,说是专门防CC DDOS的,其实也就是一个CDN,有免费的套餐,足够我这小站用了。

现在就来谈谈我的具体换防护把,

首先安装CSF防火墙,这个比较简单而且不用改域名什么的,小规模的就直接解决了。
一、安装依赖包:

 代码如下 复制代码

yum install perl-libwww-perl perl iptables

二、下载并安装 CSF:

 代码如下 复制代码
wget http://www.configserver.com/free/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh

三、测试 CSF 是否能正常工作:

 代码如下 复制代码
[root@localhost csf]# perl /etc/csf/csftest.pl
Testing ip_tables/iptable_filter...OK
Testing ipt_LOG...OK
Testing ipt_multiport/xt_multiport...OK
Testing ipt_REJECT...OK
Testing ipt_state/xt_state...OK
Testing ipt_limit/xt_limit...OK
Testing ipt_recent...OK
Testing xt_connlimit...OK
Testing ipt_owner/xt_owner...OK
Testing iptable_nat/ipt_REDIRECT...OK
Testing iptable_nat/ipt_DNAT...OK
RESULT: csf should function on this server

四、csf的配置:
CSF的配置文件是

 代码如下 复制代码
vim /etc/csf/csf.conf
# Allow incoming TCP ports
# 推荐您更改 SSH 的默认端口(22)为其他端口,但请注意一定要把新的端口加到下一行中
TCP_IN = “20,21,47,81,1723,25,53,80,110,143,443,465,587,993,995〃
# Allow outgoing TCP ports同上,把 SSH 的登录端口加到下一行。
# 在某些程序要求打开一定范围的端口的情况下,例如Pureftpd的passive mode,可使用类似 30000:35000 的方式打开30000-35000范围的端口。
TCP_OUT = “20,21,47,81,1723,25,53,80,110,113,443〃
# Allow incoming UDP ports
UDP_IN = “20,21,53〃
# Allow outgoing UDP ports
# To allow outgoing traceroute add 33434:33523 to this list
UDP_OUT = “20,21,53,113,123〃
# Allow incoming PING 是否允许别人ping你的服务器,默认为1,允许。0为不允许。
ICMP_IN = “1〃
以上这些配置大家一看就懂了,下面再介绍几个比较常用的:
免疫某些类型的小规模 DDos 攻击:
# Connection Tracking. This option enables tracking of all connections from IP
# addresses to the server. If the total number of connections is greater than
# this value then the offending IP address is blocked. This can be used to help
# prevent some types of DOS attack.
#
# Care should be taken with this option. It’s entirely possible that you will
# see false-positives. Some protocols can be connection hungry, e.g. FTP, IMAPD
# and HTTP so it could be quite easy to trigger, especially with a lot of
# closed connections in TIME_WAIT. However, for a server that is prone to DOS
# attacks this may be very useful. A reasonable setting for this option might
# be arround 200.
#
# To disable this feature, set this to 0
CT_LIMIT = "200"##固定时间内同一个IP请求的此数
# Connection Tracking interval. Set this to the the number of seconds between
# connection tracking scans
CT_INTERVAL = "30" ##指上面的固定时间,单位为秒
# Send an email alert if an IP address is blocked due to connection tracking
CT_EMAIL_ALERT = "1" ##是否发送邮件
# If you want to make IP blocks permanent then set this to 1, otherwise blocks
# will be temporary and will be cleared after CT_BLOCK_TIME seconds
# 是否对可疑IP采取永久屏蔽,默认为0,即临时性屏蔽。
CT_PERMANENT = "0"
# If you opt for temporary IP blocks for CT, then the following is the interval
# in seconds that the IP will remained blocked for (e.g. 1800 = 30 mins)
# 临时性屏蔽时间
CT_BLOCK_TIME = "1800"
# If you don’t want to count the TIME_WAIT state against the connection count
# then set the following to “1〃
CT_SKIP_TIME_WAIT = "0" ##是否统计TIME_WAIT链接状态
# If you only want to count specific states (e.g. SYN_RECV) then add the states
# to the following as a comma separated list. E.g. “SYN_RECV,TIME_WAIT”
# Leave this option empty to count all states against CT_LIMIT
CT_STATES = "" ##是否分国家来统计,填写的是国家名
# If you only want to count specific ports (e.g. 80,443) then add the ports
# to the following as a comma separated list. E.g. “80,443〃
#
# Leave this option empty to count all ports against CT_LIMIT
# 对什么端口进行检测,为空则检测所有,防止ssh的话可以为空,统计所有的。
CT_PORTS = ""
做了以上设置之后,可以先测试一下。如果没有问题的话,就更改为正式模式,刚才只是测试模式。
# 把默认的1修改为0。
TESTING = "0"
在/etc/csf/下有csf.allow和csf.deny两个文件,
allow是信任的IP,可以把自己的IP写到这里面防止误封。
deny就是被封的IP。

如果有调整需要重启一下cfs服务

按照上面的方法安装设置CSF基本上小CC攻击就解决了,我的站刚加好也解决了,可以第二天攻击加大了,没办法只有用第二种办法了
注册了云盾帐号,认证域名,更改域名指向到云盾的域名,我加完之后再也没有收到攻击

时间: 2024-09-27 10:19:38

linux中防CC攻击两种实现方法的相关文章

Linux系统防CC攻击自动拉黑IP增强版(Shell脚本)_Linux

前天没事写了一个防CC攻击的Shell脚本,没想到这么快就要用上了,原因是因为360网站卫士的缓存黑名单突然无法过滤后台,导致WordPress无法登录!虽然,可以通过修改本地hosts文件来解决这个问题,但是还是想暂时取消CDN加速和防护来测试下服务器的性能优化及安全防护. 前天写的Shell脚本是加入到crontab计划任务执行的,每5分钟执行一次,今天实际测试了下,可还是可以用的,但是感觉5分钟时间有点过长,无法做到严密防护.于是稍微改进了下代码,现在简单的分享下! 一.Shell代码 #

在Linux系统中存储设备的两种表示方法

摘要: 硬盘和硬盘分区在Linux都表示为设备,按我们通俗的说法来说,就是怎么来表示或描述硬盘和或硬盘分区,但这种描述应该是科学和具体的:比如IDE硬盘,在Linux 可以表示为 /dev/hda./dev/hdb ... :SCSI 接口的硬盘.SATA接口的硬盘表示为/dev/sda./dev/sdb ... ... :而IDE接口的硬盘/dev/hda,也可以表示为hd0 ,而 SCSI 接口的如果是 /dev/sda ,另一种表示方法是sd0: 理解两种表示方法有何用?至少GRUB引导管

linux中防DDOS攻击软件DDoS-Deflate详解

DDoS-Deflate安装及配置 1.安装  代码如下 复制代码 wget http://www.inetbase.com/scripts/ddos/install.sh chmod 0700 install.sh ./install.sh 2.配置 配置文件是 /usr/local/ddos/ddos.conf ,默认有如下配置  代码如下 复制代码 FREQ=1 NO_OF_CONNECTIONS=150 APF_BAN=0 KILL=1 EMAIL_TO="test@qq.com&quo

linux下防DDOS攻击软件及使用方法详解

  互联网如同现实社会一样充满钩心斗角,网站被DDOS也成为站长最头疼的事.在没有硬防的情况下,寻找软件代替是最直接的方法,比如用 iptables,但是iptables不能在自动屏蔽,只能手动屏蔽. 一.什么是DDOS攻击? DDoS也就是分布式拒绝服务攻击.它使用与普通的拒绝服务攻击同样的方法,但是发起攻击的源是多个.通常攻击者使用下载的工具渗透无保护的主机,当获得该主机的适当的访问权限后,攻击者在主机中安装软件的服务或进程(以下简侈怔理).这些代理保持睡眠状态,直到从它们的主控端得到指令,

Word中繁体艺术字的两种制作方法

Word里的艺术字是大家平时常用的一项功能,但有时我们可能需要制作一些繁体艺术字,而这个看似简单的要求,实现起来却不是那么容易,因为Word里的繁简转换功能对艺术字并不起作用.笔者经过几次尝试,总结了两种方法,在这里介绍给大家. (注:以下技巧已于Word 2003环境下测试通过) 方法一. 使用第三方汉字输入法实现 第三方汉字输入法一般功能都很强大,就拿极点五笔来说,它就有一项直接输出繁体字的功能.使用方法很简单,先打开Word软件,然后点击"插入"菜单→"图片→艺术字&q

javascript事件函数中获得事件源的两种不错方法

 许多情况我们需要获得事件源对象来对其属性进行更改,在事件响应函数中获得事件源的方法有如下两种 在javascript的事件响应中,许多情况我们需要获得事件源对象来对其属性进行更改,比如更改img的src属性.在事件响应函数中获得事件源的方法有如下两种:    第一种:    直接把作为一个参数传入.例如   代码如下: <div id="myid" onclick="show(this);">text</div>    <script

javascript事件函数中获得事件源的两种不错方法_javascript技巧

在javascript的事件响应中,许多情况我们需要获得事件源对象来对其属性进行更改,比如更改img的src属性.在事件响应函数中获得事件源的方法有如下两种: 第一种: 直接把作为一个参数传入.例如 复制代码 代码如下: <div id="myid" onclick="show(this);">text</div> <script type="text/javascript"> function show(ob

ERP中“分数问题”的两种解决方法研究

在ERP使用中,往往会遇到"分数问题",最常见的就是包装箱的问题.如:一个包装箱里,装3个成品,那么每个成品的用量就是三分之一的纸箱.在手工作业中,直接可以用分数来表示.但是,由于现在主流数据库基本上都不支持分数的表示方法,只能用小数代替. 若用系统计算物料需求量,就会出现这个问题:一个成品纸箱的用量为0.33333,那么300个成品用量为99.999个,而实际需要却是http://www.aliyun.com/zixun/aggregation/11629.html">

Linux vps 免费面板kloxo 两种安装方法及汉化

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 Linux vps 应用非常广泛,在服务器领域使用率大大超越windows 系统.尤其国外服务商,主要是他是免费的 漏洞相对比较少.非图形化操作,入门稍有难度.在没有模版的情况下 创建站点设置域名等等都得用命令来实现,实在是有点麻烦.好在这几年陆续退出了很多优秀的图形化面板,建站操作起来就方便多了,今天给大家推荐的是一款比较成熟功能比较齐全的