php mysql 带ip地址的暴力破解保护
php mysql brute force protection with ip address
我有问题。我为我的 web 登录程序编写了暴力破解保护 [php, mysql] 。失败的尝试将使用 ip 地址保存在数据库中。
我的问题:
我尝试在我的学校登录,发现我学校的所有计算机都具有相同的 IP 地址。这意味着如果一个学生将被阻止,我的登录将无法在整个学校使用。
我该如何修复这个错误?
非常感谢您的回答。
问候 Freddy C.
这不是错误。这是典型的共享互联网连接的性质。这有两大好处:
- 保护 IPv4 地址的有限可用性。
- 保护系统免受开放端口攻击。如果某个端口在直接连接到 Internet 的单个系统上打开,那么它很容易受到对该端口的攻击。如果系统使用单个 public IP 地址与路由器共享互联网连接,则路由器将阻止大多数端口上的数据访问任何系统,如果有必要(例如,通过 SSH 连接到一个系统),则每个端口只有一个系统易受攻击,而不是每个系统。
正如您所发现的,问题是外部系统无法轻易区分路由器另一端的系统。如果一个系统感染了 spam/virus 僵尸程序,这通常会导致问题 - 实时黑名单 (RBL) 将阻止整个本地网络的 IP 地址,并且在大型组织中,可能很难按顺序追踪违规系统解决问题。
对于更基本的 "block the bad guys from my server",您可以使用:
- 列表项
- 高阈值(例如,100 次失败尝试而不是 3 次)
- 基于特定的块window(例如,我有一个系统,我会根据一天内 5 次失败的交易自动按 IP 地址进行块并每天重置计数)
- 基于用户名(或其他关键凭据)+ IP 地址的组合来阻止 - 这对于试图侵入单个帐户的人来说效果很好,但如果他们试图这样做则无济于事 "random account + likely password" .
- 仅在检查地理位置后阻止 IP 地址 - 例如,如果您的用户通常都在美国并且您偶尔会看到来自其他地方的登录(普通用户旅行)那么您可以阻止所有非美国比您阻止美国登录的尝试次数更短的登录次数。
我有问题。我为我的 web 登录程序编写了暴力破解保护 [php, mysql] 。失败的尝试将使用 ip 地址保存在数据库中。
我的问题: 我尝试在我的学校登录,发现我学校的所有计算机都具有相同的 IP 地址。这意味着如果一个学生将被阻止,我的登录将无法在整个学校使用。
我该如何修复这个错误?
非常感谢您的回答。
问候 Freddy C.
这不是错误。这是典型的共享互联网连接的性质。这有两大好处:
- 保护 IPv4 地址的有限可用性。
- 保护系统免受开放端口攻击。如果某个端口在直接连接到 Internet 的单个系统上打开,那么它很容易受到对该端口的攻击。如果系统使用单个 public IP 地址与路由器共享互联网连接,则路由器将阻止大多数端口上的数据访问任何系统,如果有必要(例如,通过 SSH 连接到一个系统),则每个端口只有一个系统易受攻击,而不是每个系统。
正如您所发现的,问题是外部系统无法轻易区分路由器另一端的系统。如果一个系统感染了 spam/virus 僵尸程序,这通常会导致问题 - 实时黑名单 (RBL) 将阻止整个本地网络的 IP 地址,并且在大型组织中,可能很难按顺序追踪违规系统解决问题。
对于更基本的 "block the bad guys from my server",您可以使用:
- 列表项
- 高阈值(例如,100 次失败尝试而不是 3 次)
- 基于特定的块window(例如,我有一个系统,我会根据一天内 5 次失败的交易自动按 IP 地址进行块并每天重置计数)
- 基于用户名(或其他关键凭据)+ IP 地址的组合来阻止 - 这对于试图侵入单个帐户的人来说效果很好,但如果他们试图这样做则无济于事 "random account + likely password" .
- 仅在检查地理位置后阻止 IP 地址 - 例如,如果您的用户通常都在美国并且您偶尔会看到来自其他地方的登录(普通用户旅行)那么您可以阻止所有非美国比您阻止美国登录的尝试次数更短的登录次数。