gpt4 book ai didi

php mysql 使用ip地址进行暴力保护

转载 作者:行者123 更新时间:2023-11-29 18:10:24 26 4
gpt4 key购买 nike

我有一个问题。我为我的 Web 登录 [php, mysql] 编写了一个暴力保护程序。失败的尝试将使用 IP 地址保存在数据库中。

我的问题:我尝试登录学校,发现学校的所有计算机都有相同的 IP 地址。这意味着如果一名学生被屏蔽,我的登录信息将无法在整个学校使用。

如何修复这个错误?

非常感谢您的回答。

最诚挚的问候 Freddy C.

最佳答案

这不是一个错误。这是典型共享互联网连接的本质。这提供了两大好处:

  1. 保留 IPv4 地址的有限可用性。
  2. 保护系统免受开放端口攻击。如果直接连接到互联网的单个系统上的端口是开放的,那么该端口很容易受到攻击。如果系统使用单个公共(public) IP 地址与路由器共享互联网连接,则路由器将阻止大多数端口上的数据访问任何系统,并且如果有必要(例如,通过 SSH 连接到一个系统),则只有一个系统可以访问每个端口而不是每个系统都容易受到攻击。

正如您所发现的,问题在于外部系统无法轻松区分路由器另一侧的系统。如果一个系统感染了垃圾邮件/病毒机器人,这通常会导致问题 - 实时黑名单 (RBL) 将阻止整个本地网络的 IP 地址,并且在大型组织中,可能很难追踪到有问题的系统以进行修复问题所在。

对于更基本的“阻止坏人访问我的服务器”,您可以使用:

  • 列出项目
  • 阈值较高(例如,尝试失败 100 次,而不是 3 次)
  • 基于特定窗口进行阻止(例如,我有一个系统,我会根据一天内 5 笔失败的交易按 IP 地址自动进行阻止,并每天重置计数)
  • 基于用户名(或其他关键凭据)+ IP 地址的组合进行阻止 - 这对于试图侵入单个帐户的人来说效果很好,但如果他们尝试“随机帐户 + 可能的密码”,则无济于事.
  • 仅在检查地理位置后才阻止 IP 地址 - 例如,如果您的用户通常都在美国,并且您偶尔会看到来自其他地方的登录(经常旅行的用户),那么您可以在之后阻止所有非美国登录尝试次数少于阻止美国登录的次数。

关于php mysql 使用ip地址进行暴力保护,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47460359/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com