在Ubuntu上,您可以使用Apache的mod_evasive
模块来限制访问频率。以下是安装和配置mod_evasive
的步骤:
mod_evasive
模块:打开终端,运行以下命令来安装mod_evasive
:
sudo apt-get update
sudo apt-get install libapache2-mod-evasive
mod_evasive
模块:运行以下命令来启用mod_evasive
模块:
sudo a2enmod evasive
mod_evasive
:使用文本编辑器打开Apache配置文件。这里我们使用nano
编辑器:
sudo nano /etc/apache2/mods-enabled/evasive.conf
在evasive.conf
文件中,您可以设置以下参数来限制访问频率:
DOSHashTableSize
:设置哈希表的大小。建议设置为至少1024。DOSSiteCount
:设置在阻止站点之前允许的最大请求数。例如,将其设置为50表示在阻止站点之前允许每个IP地址发出50个请求。DOSSiteInterval
:设置在两个请求之间允许的最小时间(以秒为单位)。例如,将其设置为60表示在60秒内只允许每个IP地址发出一个请求。DOSBlockingPeriod
:设置在将IP地址添加到阻止列表之前允许的最大请求数。例如,将其设置为10表示在将IP地址添加到阻止列表之前允许每个IP地址发出10个请求。示例配置:
<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSSiteCount 50
DOSSiteInterval 60
DOSBlockingPeriod 10
</IfModule>
保存并退出编辑器。
重启Apache服务以应用更改:
sudo systemctl restart apache2
现在,mod_evasive
模块将限制访问频率,根据您在配置文件中设置的参数阻止恶意用户。