在Apache配置中,可以使用mod_evasive
模塊來限制訪問頻率。mod_evasive
是一個用于防止DDoS攻擊和限制訪問頻率的模塊。以下是如何安裝和配置mod_evasive
的步驟:
安裝mod_evasive
模塊。在Debian/Ubuntu系統上,可以使用以下命令安裝:
sudo apt-get install libapache2-mod-evasive
在CentOS/RHEL系統上,可以使用以下命令安裝:
sudo yum install mod_evasive20
啟用mod_evasive
模塊。在Debian/Ubuntu系統上,可以使用以下命令啟用:
sudo a2enmod evasive
在CentOS/RHEL系統上,可以使用以下命令啟用:
sudo systemctl enable mod_evasive20
編輯Apache配置文件。打開/etc/apache2/apache2.conf
(Debian/Ubuntu)或/etc/httpd/conf/httpd.conf
(CentOS/RHEL)文件,并在<IfModule mod_evasive20.c>
和</IfModule>
之間添加以下配置:
<IfModule mod_evasive20.c>
DOSHashTableSize 3097
DOSPageCount 2
DOSSiteCount 50
DOSPageInterval 1
DOSSiteInterval 1
DOSBlockingPeriod 10
</IfModule>
這里的配置表示:
DOSPageInterval
時間內允許的最大頁面請求次數。這里設置為2,表示在1秒內允許最多2次請求。DOSSiteInterval
時間內允許的最大站點請求次數。這里設置為50,表示在1秒內允許最多50次請求。保存配置文件并重啟Apache服務。在Debian/Ubuntu系統上,可以使用以下命令重啟:
sudo systemctl restart apache2
在CentOS/RHEL系統上,可以使用以下命令重啟:
sudo systemctl restart httpd
現在,Apache已經配置好了訪問頻率限制。當訪問頻率超過限制時,mod_evasive
會阻止相應的IP地址訪問網站。