在Apache服务器上启用mod_evasive以保护服务器免受DDOS攻击。 mod_evasive是一个模块,可检测和拒绝具有相同IP地址的重复请求,具有攻击性的请求或超出给定时间的请求。 此模块可防止某些攻击,并减轻服务器上的负载。
以下是如何在Apache服务器上配置mod_evasive的示例:
1.在Apache的目录中创建一个名为mod_evasive.conf的文件:
sudo nano /etc/httpd/conf.d/mod_evasive.conf
2.将以下内容添加到文件中:
LoadModule evasive20_module modules/mod_evasive20.so
3.将您的电子邮件地址替换为DOSEmailNotify指定的地址。此处指定的地址用于将通知发送到电子邮件上。
4.为mod_evasive20.so模块创建目录:
sudo mkdir /var/log/mod_evasive sudo chown apache:apache /var/log/mod_evasive
5.为Python脚本创建一个名为block_ip.py的文件,并将其保存在/usr/local/bin/目录中:
sudo nano /usr/local/bin/block_ip.py
6.将以下内容添加到文件中:
#!/usr/bin/python
import sys, os import subprocess
ips = sys.argv[1]
if not ips: sys.exit(0)
for ip in ips.split(): command = '/sbin/iptables -I INPUT -s %s -p tcp --dport 80 -j DROP' % ip subprocess.call(command, shell=True)
7.将block_ip.py文件设置为可执行权限:
sudo chmod +x /usr/local/bin/block_ip.py
8.重启Apache服务:
sudo systemctl restart httpd
现在,Apache服务器已受到保护,无需担心DDOS攻击导致服务器关闭。
上一篇:apache做tcp服务器