也想出现在这里? 联系我们

Linux系统如何防止CC攻击避免网页卡顿

作者 : 小编 本文共3785个字,预计阅读时间需要10分钟 发布时间: 2022-11-5 共1.46K人阅读
也想出现在这里? 联系我们

  你是否有遇到这样的情况,明明服务器正常运行,用户访问网站人数正常,却出现网页很卡,直到奔溃的情况,出现这种情况多半是被CC攻击了,预防胜于治疗,下面小编以Linux系统为例,给大家介绍下Linux如何防止CC攻击。

  什么是CC攻击

  cc攻击简单就是(ChallengeCollapsar)

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

  防止CC攻击方法

  用防止这CC攻击有两种方法

  第一种就是利用本机的防火墙来解决可以安装CSF之内的防火墙,这种的弊端是只能防止小规模的CC攻击和DDOS(我的站在阿里云,所以不用太担心DDOS)CC攻击比较猛的话机器也直接CUP跑满了。

  第二种方式是添加CDN,这种防止CC攻击的方法是最好的,不过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〃

  以上这些配置大家一看就懂了,下面再介绍几个比较常用的:

上一页12下一页共2页

  免疫某些类型的小规模 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服务

  上面就是Linux防止CC攻击的方法介绍了,很多时候用户网站被CC攻击了自己都不知道,所以定期的检测是很有必要的。

1. 本站所提供的源码模板(主题/插件)等资源仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,有部分资源为网上收集或仿制而来,若模板侵犯了您的合法权益,请来信通知我们(Email: rayer@88.com),我们会及时删除,给您带来的不便,我们深表歉意!
2. 分享目的仅供大家学习和交流,请不要用于商业用途!
3. 如果你也有好源码或者教程,可以到用户中心发布投稿,分享有金币奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务 请大家谅解!
5. 如有链接无法下载、失效或广告,请联系站长,可领回失去的金币,并额外有奖!
6. 如遇到加密压缩包,默认解压密码为"www.zyfx8.cn",如遇到无法解压的请联系管理员!
本站部分文章、资源来自互联网,版权归原作者及网站所有,如果侵犯了您的权利,请及时联系我站删除。免责声明
资源分享吧 » Linux系统如何防止CC攻击避免网页卡顿

常见问题FAQ

免费下载或者VIP会员专享资源能否直接商用?
本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
织梦模板使用说明
你下载的织梦模板并不包括DedeCMS使用授权,根据DedeCMS授权协议,除个人非盈利站点外,均需购买DedeCMS商业使用授权。购买地址: http://www.desdev.cn/service-dedecms.html

发表评论

Copyright 2015-2020 版权所有 资源分享吧 Rights Reserved. 蜀ICP备14022927号-1
开通VIP 享更多特权,建议使用QQ登录