从地理上限制 IP 访问

从地理上限制 IP 访问

我不想在这里冒犯任何人,但每当我查看我的服务器日志时,我都可以看到我不断有中国的 IP 地址尝试登录到我的机器,希望通过暴力破解管理员或 admin 或 root 等的密码。

我们的总部设在英国,我们的服务器也位于英国的数据中心。我们有一些 IP 用于访问远程桌面的机器,一些用于访问这些机器上的远程 KVM 控制台,一个用于我们的主交换机,它是 Cisco SG200,有一个 Web 控制面板。这些管理 IP 只能从英国合法访问,但我不能总是保证它来自哪个 IP 地址。

我们有一些托管网站的虚拟机 - 它们在同一范围内的不同 IP 上运行,但这些 IP 需要在全球范围内可用。

有没有办法根据地理位置限制对某些 IP 的访问?例如,位于英国的任何 IP 都可以访问,但其他国家/地区则不能?我可以在 Cisco SG200 上做些什么来实现这一点,或者是否有其他价格实惠的硬件可以放在我的交换机前面来实现这一点?

答案1

您必须查找每个国家/地区的 IP 范围。Google 可以帮助您。不过,这些范围非常多,制定单独的规则可能会使您的防火墙变慢。另外,我不知道如何在 Cisco SG200 中执行此操作,尤其是当您拥有那些只允许您输入 10 条规则的 Web 界面之一时,但使用 Linux 上的 iptables,使用脚本创建大量防火墙规则非常简单。

也许对于你的情况,最好将管理界面放在另一个端口上。这对抵御有针对性的攻击没有多大帮助,但它可以让你的系统免于应对暴力攻击。

还有许多其他解决方案。很难给你一个完整的列表。一种控制管理员访问权限的安全方法是使用反弹主机并仅允许来自该主机的连接,或者在它前面安装(软件)防火墙。如果你无法不断应用软件更新,那无论如何都是一件好事。我自己不信任硬件上的 webadmin 面板。例子

答案2

搜索 GEOIP。您将获得按提供商国家/地区划分的 IP 范围(关键点在这里。纸面上是提供商国家/地区。)当我们谈论网络时,地理划分实际上毫无意义。任何人都可以从任何地方获得任何 IP 地址。此外,您的 geoip 数据库必须定期更新。此外,您的阻止列表将是一个很长的列表。请考虑规则将应用于您系统的每个连接。

还有另一种方法,如果你使用 Linux,请尝试失败2ban. 对于其他系统,请使用防火墙发行版其中大多数都拥有超过 fai2ban 和 IDS / IPS

相关内容