【发布时间】:2012-04-29 19:33:56
【问题描述】:
我有一个登录系统,我正在努力使其尽可能安全。十次尝试失败后,我想阻止该 IP 地址。如何在 PHP 中打开文件并在我的 .htaccess 文件中添加一行以阻止 IP 地址?这是我的 .htaccess 文件:
# Turn on RewriteEngine
RewriteEngine on
# Block IP addresses with too many failed attempts
RewriteCond %{REMOTE_ADDR} ^217.172.179.*$ [OR]
RewriteCond %{REMOTE_ADDR} ^217.172.180.*$
RewriteCond %{REQUEST_URI} !/error/blocked.php$ [NC]
RewriteRule ^(.*)$ /error/blocked.php [R,NC,L]
我想在 PHP 文件中添加这一行:
RewriteCond %{REMOTE_ADDR} ^IPHERE$ [OR]
在适当的位置。
【问题讨论】:
-
ip 不 = 人,攻击者(或普通用户)会通过一系列 ips。
-
我知道,代码每尝试十次就会一直阻塞新的 ip
-
@ethanh:这听起来不太明智。永久阻止 IP 通常不会有好结果(因为普通用户尝试使用您的网站并由于 IP 阻止而失败)。
-
是的,任何严重的攻击者每分钟都会通过几百个开放代理。有专门为此设计的服务器软件会比您做得更好
-
有一个带有 recaptcha 的表单可以解除阻止
标签: php .htaccess ip-address block