在Ubuntu Apache中设置防盗攻击可通过以下方式实现:
防盗链(防止资源盗用)
.htaccess
文件.htaccess
,添加规则限制非指定域名访问资源(如图片):RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain\.com [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
替换yourdomain.com
为实际域名。mod_rewrite
模块限制访问频率(防DDoS/恶意刷访问)
mod_evasive
模块sudo apt install libapache2-mod-evasive
sudo a2enmod evasive
编辑配置文件(如/etc/apache2/apache2.conf
)设置DOSPageCount
(单页请求限制)、DOSBlockingPeriod
(封锁时长)等。Web应用防火墙(WAF)
mod_security
模块sudo apt install libapache2-mod-security2
sudo a2enmod security2
配置规则文件(如/etc/modsecurity/modsecurity.conf
),可自定义规则或集成OWASP规则集。其他基础防护
/etc/apache2/ports.conf
,将Listen 80
改为非标准端口(需同时修改防火墙规则)。a2dismod
命令禁用不需要的模块(如mod_php
),减少攻击面。/etc/apache2/sites-available/ssl.conf
)。注意:配置后需重启Apache生效(sudo systemctl restart apache2
),并定期查看日志(/var/log/apache2/
)监控异常访问。以上措施可组合使用,根据实际需求调整参数。