centos

如何在CentOS上配置Apache的防盗刷

小樊
42
2025-07-10 15:50:59
栏目: 智能运维

在CentOS上配置Apache的防盗刷功能,可以通过以下步骤实现:

1. 安装必要的软件包

首先,确保你的CentOS系统已经安装了Apache和mod_security。如果没有安装,可以使用以下命令进行安装:

sudo yum install httpd mod_security

2. 启用mod_security

编辑Apache的配置文件/etc/httpd/conf/httpd.conf,找到并取消注释以下行以启用mod_security:

LoadModule security2_module modules/mod_security2.so

3. 配置mod_security规则

创建或编辑mod_security的配置文件/etc/httpd/conf.d/security2.conf,添加防盗刷规则。以下是一个简单的示例:

SecAction \
    "id:123456,\
     phase:2,\
     nolog,\
     pass,\
     initcol:ip=%{REMOTE_ADDR},\
     setvar:ip.request_count=+1,\
     expirevar:ip.request_count=60"

SecRule IP:REQUEST_COUNT "@gt 10" \
    "id:123457,\
     phase:1,\
     deny,\
     status:429,\
     log,\
     msg:'Too many requests from this IP address'"

这个规则的意思是:

4. 调整防火墙规则

为了进一步增强防盗刷功能,可以调整防火墙规则,限制单个IP地址的连接数。例如,使用iptables

sudo iptables -A INPUT -p tcp --syn -m connlimit --connlimit-above 10 -j DROP

这个命令的意思是:

5. 重启Apache服务

完成配置后,重启Apache服务以使更改生效:

sudo systemctl restart httpd

6. 监控和调整

定期监控服务器的访问日志和mod_security日志,根据实际情况调整防盗刷规则和防火墙规则。

通过以上步骤,你可以在CentOS上配置Apache的防盗刷功能,有效防止恶意请求和DDoS攻击。

0
看了该问题的人还看了