温馨提示×

Ubuntu Apache2如何限制访问频率

小樊
87
2025-03-21 03:08:16
栏目: 智能运维

在Ubuntu上使用Apache2限制访问频率,可以通过配置mod_evasive模块来实现。mod_evasive是一个用于防止DDoS攻击和限制请求频率的模块。以下是安装和配置mod_evasive的步骤:

1. 安装mod_evasive

首先,确保你的系统是最新的:

sudo apt update
sudo apt upgrade

然后,安装mod_evasive模块:

sudo apt install libapache2-mod-evasive

2. 配置mod_evasive

安装完成后,你需要配置mod_evasive。编辑Apache的配置文件,通常是/etc/apache2/apache2.conf/etc/apache2/sites-available/000-default.conf

sudo nano /etc/apache2/apache2.conf

在文件中添加以下内容:

<IfModule mod_evasive20.c>
    DOSHashTableSize    3097
    DOSPageCount        2
    DOSSiteCount        50
    DOSPageInterval     1
    DOSSiteInterval     1
    DOSBlockingPeriod   10
</IfModule>

这些配置参数的含义如下:

  • DOSHashTableSize: 哈希表的大小,用于存储IP地址信息。
  • DOSPageCount: 在DOSPageInterval秒内允许的最大请求数。
  • DOSSiteCount: 在DOSSiteInterval秒内允许的最大请求数。
  • DOSPageInterval: 检查页面请求的时间间隔(秒)。
  • DOSSiteInterval: 检查站点请求的时间间隔(秒)。
  • DOSBlockingPeriod: 被阻止的IP地址将被阻止的时间(秒)。

你可以根据需要调整这些参数。

3. 启用mod_evasive

确保mod_evasive模块已启用:

sudo a2enmod evasive20

4. 重启Apache

最后,重启Apache服务器以应用更改:

sudo systemctl restart apache2

5. 验证配置

你可以通过访问你的网站并尝试发送大量请求来验证配置是否生效。如果请求频率超过配置的限制,Apache将会阻止该IP地址一段时间。

通过以上步骤,你可以在Ubuntu上使用Apache2限制访问频率,从而提高网站的安全性和稳定性。

0