96SEO 2025-07-27 13:06 13
iptables是Linux系统中常用的防火墙工具,通过合理配置规则,能对CC打进行一定程度的防着。
编辑Nginx的配置文件/etc/nginx/
添加以下内容:
iptables -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set
iptables -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 20 -j DROP
说明白一下上述规则:
--set
选项将新鲜连接的IP地址添加到最近连接列表中。--update
选项检查最近连接列表, 如果某个IP在60秒内的连接数超出20个,则将该连接丢弃。Fail2Ban是一个开源的入侵防着工具,它能监控系统日志,根据预设的规则对异常行为进行检测,并通过iptables等防火墙工具封禁相关IP。
在CentOS中,能用以下命令安装Fail2Ban:
yum install fail2ban -y
编辑Fail2Ban的配置文件位于/etc/fail2ban/
目录下。先说说 复制一份默认的配置文件进行修改:
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
编辑/etc/fail2ban/jail.local
文件,添加以下内容:
enabled = true
port = http,https
filter = http-get-dos
logpath = /var/log/httpd/access_log
maxretry = 20
findtime = 60
bantime = 3600
通过以上配置,Fail2Ban会监控Apache的访问日志,当某个IP在60秒内的求次数超出20次时将该IP封禁3600秒。
Mod_security是一个开源的Web应用防火墙模块,它能对HTTP求进行实时监控和过滤,有效防着CC打。
先说说 安装少许不了的依赖包:
yum install httpd-devel pcre-devel libxml2-devel -y
然后下载并编译安装Mod_security:
wget https://www.modsecurity.org/download/modsecurity/v3.0/modsecurity-3.0.6.tar.gz
tar zxvf modsecurity-3.0.6.tar.gz
cd modsecurity-3.0.6
./configure
make
make install
编辑Apache的配置文件/etc/httpd/conf/httpd.conf
添加以下内容:
LoadModule security2_module modules/mod_SecRuleEngine On
下载OWASP ModSecurity Core Rule Set:
wget https://github.com/SpiderLabs/ModSecurity-CRS/releases/download/3.3.4/coreruleset-3.3.4.tar.gz
tar zxvf coreruleset-3.3.4.tar.gz
mv coreruleset-3.3.4 /etc/httpd/modsecurity/crs
编辑/etc/httpd/modsecurity/crs/crs-Include
文件,添加以下内容:
/etc/httpd/modsecurity/crs/rules/*.conf
沉启Apache服务:
systemctl restart httpd
Mod_security会根据预设的规则集对HTTP求进行检查,当检测到异常求时会阻止该求并记录日志。
如果用Nginx作为Web服务器,能用其自带的ngx_http_limit_req_module
模块进行限流,从而防着CC打。
http {
limit_req_zone $binary_remote_addr zone=mylimit:10m rate=10r/s;
server {
location / {
limit_req zone=mylimit;
}
}
}
说明白一下上述配置:
limit_req_zone
定义一个限流区域,$binary_remote_addr
表示根据客户端IP地址进行限流,zone=mylimit:10m
表示该区域的名称为mylimit
占用10MB内存,rate=10r/s
表示每秒允许的求速率为10个。limit_req zone=mylimit
在/
路径下应用该限流规则。沉启Nginx服务:
systemctl restart nginx
通过以上配置, Nginx会对个个客户端IP的求速率进行管束,超出速率的求将被延迟处理或不要。
本文给了防着CC打的六种方法,包括用iptables防火墙设置规则、配置fail2ban监控日志、利用mod_evasive模块、加入CDN分发流量、保持系统和应用更新鲜,以及采用防DDoS手艺。
防着CC打是一个持续的过程, 需要您不断地优化服务器配置、更新鲜柔软件和采取新鲜的防护措施。
Demand feedback