linux - DDOS 模组重写 IP 请求

标签 linux .htaccess mod-rewrite ddos

我们收到来自特定 IP 范围 (192.168.0-255.0-255) 的 DDOS 攻击。在我们的 htaccess 文件中,我们试图将他们的请求转发到静态 HTML 文件,但只有一半的请求被阻止。有人明白为什么会这样吗?

RewriteCond %{REMOTE_ADDR} ^(10\.0\.0\.1|192\.168\.[0-9]{0,3}\.[0-9]{0,3})$
RewriteCond %{REQUEST_URI} [^/etc/blocked_ip.html]
RewriteRule ^(.*)$ /etc/blocked_ip.html [R=301,L]

我们的访问日志显示:

2014-06-27 11:59:03 192.168.20.232 - 1.2.3.4 443 GET /etc/blocked_ip.html ?
2014-06-27 11:59:08 192.168.20.231 - 1.2.3.4 443 GET /video/832

注意:我已将实际 IP 范围替换为私有(private)范围。

感谢您的任何建议。

最佳答案

其实你的重写条件是不正确的:

RewriteCond %{REQUEST_URI} [^/etc/blocked_ip.html]

可能你的意思是:

RewriteCond %{REQUEST_URI} !^/etc/blocked_ip\.html

您的规则可以缩短为:

RewriteCond %{REMOTE_ADDR} ^(10\.0\.0\.1|192\.168\.[0-9]{1,3}\.[0-9]{1,3})$
RewriteRule !^etc/blocked_ip\.html$ /etc/blocked_ip.html [R=301,L,NC]

还要确保这是您在 .htaccess 中的第一条规则。

关于linux - DDOS 模组重写 IP 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24452635/

相关文章:

python - 使用 policykit+dbus 代替 gksu 运行图形应用程序

.htaccess - htaccess QUERY_STRING urldecode

php - .htaccess/php url 重写没有路由?

php - 在 .htaccess 中设置环境变量并在 PHP 中检索它

php - 简单的 htaccess 重写规则错误 404

mysql - 如何使用 BASH 将今天的日期(格式为 "-YYYY-MM-DD")附加到 MySQL 表名

android - Android 的什么框架可以用来连接 PC 到 Android 和 Android 到其他 PC?

python - pyinstaller 包 cx_Oracle 问题(在 CentOS 上)

apache - 使用 .htaccess 从子域提供根域内容

php - .htaccess 多域重写