您是否应该阻止来自国外的网络连接?

2021-02-17 18:56:52

如果您可以实时阻止来自大多数网络攻击起源的俄罗斯,中国和巴西等世界各地的网络实时连接,该怎么办?如果您可以根据连接的来源将连接重定向到单个网络怎么办?可以想象,控制这些事物将减少网络上的攻击媒介数量,从而提高其安全性。您可能会对通过nftables的Geolocation在nftables防火墙上实施地理过滤而不仅可能而且简单明了地感到惊讶。

nftable的地理位置定位是一种简单灵活的Bash脚本,于2020年12月发布,旨在基于特定区域的IP地址使用nftables防火墙执行自动实时过滤。该项目的首席开发人员Mike Baxter在最近对LinuxSecurity研究人员的采访中解释了nftables的地理位置定位任务,“我希望该项目对那些可能没有IT预算或资源来实施商业解决方案的人有所帮助。该代码在服务器,工作站和Raspberry Pi等低功耗系统上运行良好。该脚本具有内置功能,可以在数据库更新后刷新并重新填充地理过滤集,而无需重新启动防火墙,从而使服务器可以不中断运行而不会断开已建立的连接。”

本文将研究地理过滤的概念,以及如何为防火墙添加有价值的安全层,然后探讨适用于nftables的地理定位项目如何利用开源在Linux上提供直观,可自定义的地理过滤。

地理过滤是一种防火墙技术,可根据地理位置使用IP地址过滤和阻止传入和传出的网络连接。地理过滤技术使计算机防火墙能够将网络数据包的源IP地址或目标IP地址与特定于位置的IP地址范围的列表进行比较,这些地址可以在可免费获得的地理位置数据库中找到,例如db-ip.com。然后,防火墙规则可以根据源或目的地的位置来确定如何处理每个数据包-接受,拒绝,重定向到具有本地化内容的服务器,丢弃或简单地对数据包进行计数。

地理过滤使管理员可以通过阻止与大多数网络攻击起源或没有理由允许流量来自的国家或地区相关的IP地址来减轻对网络的威胁。如果您没有理由接受来自某些国家/地区的传入在线通信,则可以在防火墙上实施整个国家的地理过滤。但是,请记住,如果您使用其他国家/地区的软件或在线服务,则可能必须接受这些国家/地区的通信。切断整个国家是快速而有效的,但是在许多情况下,使用更复杂的IP过滤设置来仅阻止某些IP地址,IP范围或已知为恶意的IP列表是有意义的,或者在防火墙中创建规则会例外,并允许受信任的IP地址访问您的系统。

地理过滤是一项有价值的安全功能,但确实有一些限制。例如,该技术可能会阻止合法的在线流量,并且无法阻止有针对性的攻击,因为犯罪分子可以通过使用位于不同位置的服务器或受感染的计算机轻松地隐藏自己的位置,从而发起攻击。在nftables防火墙上实施地理过滤可以通过减少攻击面并帮助抵御恶意软件和其他危险的持久威胁来为网络添加有价值的安全层-但不应将其视为网络安全的万能药。百特强调将这项技术作为全面,深入防御的网络安全方法的一部分加以实施的重要性:“地理过滤是安全的一层,可以帮助减少计算机或网络上的攻击媒介数量,但并非如此。一颗银弹。每种类型的计算机安全性都有很多解决方法,因此,进行分层安全性很重要。”

Nftables的地理位置利用开源开发使按国家/地区进行过滤变得无缝,便捷和有效的

通过对nftables进行地理位置定位,可以在nftables防火墙上实现简单,便捷和有效的实时地理过滤,同时提供对网络流量的精细控制。 Bash脚本将数据库中的40万行IP地址范围和国家/地区代码转换为Linux nftables防火墙可以使用防火墙规则访问的格式。该脚本会自动生成特定国家/地区的nftables地址范围集,并自动确定nftables的安装版本,并推荐正确的" include"管理员规则集的声明。与使用命令行参数相反,用户设置可以方便地存储在标准配置文件中。地理数据库是从db-ip.com实时自动下载的,从而使nftables地理过滤保持最新状态。这是至关重要的,因为分配给每个国家/地区的IP地址范围会随着时间而变化,并且必须定期更新地理数据库以保持准确性和有效性。 nftables的地理位置还具有独特的功能,可以在数据库更新后自动运行nftables脚本以用新数据刷新并重新填充IP集,从而允许服务器不中断地运行-无需断开已建立的连接。 nftables的地理定位是一个开源项目,为用户提供了一系列独特的优势,这可以归因于其对开源的使用-即增强的安全性和高度的定制化。该脚本易于设置,配置和定制,可以使用社区大量审查的开源代码来满足您的特定需求。不断审查此代码的“许多人”可以快速识别并消除漏洞和安全问题。该项目收到的全球社区意见通过提供想法,反馈和编程专业知识来促进创新。 nftables源代码的地理位置受到了广泛的评论,使其易于理解和自定义。选择这些好处对最终用户来说是免费的,因为用百特的话来说,开源开发是“只是人在帮助人”。

适用于nftables的地理位置通过每个防火墙规则允许多个匹配项与其他防火墙应用程序无缝集成,因此可以将匹配项与来自其他来源的匹配项结合起来以确定网络数据包的处理方式。例如,管理员可以使用一个防火墙规则接受IP地址在其IP“允许”列表中但不在其Fail2ban“阻止”列表中的IP数据包。适用于nftable的地理位置过滤具有较小的内存占用空间,并提供灵活的配置,使该脚本非常适合任何系统-甚至RAM有限的系统。

为广泛使用的Bash shell编写的脚本,可自动生成特定于国家/地区的nftables地址范围集

较小的内存占用空间和灵活的配置使脚本可以在内存有限的系统上很好地运行

用户设置方便地存储在标准配置文件中,而不是使用命令行参数

可以使用单个nftables规则而不是两个用于标记和匹配数据包的规则按地理位置过滤数据包

自动确定您已安装的nftable版本,并推荐正确的" include"您的规则集的声明

创建" include-all"文件,使您可以在不支持通配符的较旧版本的nftable上使用单个引用来包含所有地理IP集

提供了一个《用户指南》,该指南说明了如何在一个文件中定义地理位置集合的所有元素定义,从而消除了在用新数据刷新和重新填充集合时多个文件中的定义不同步的机会

在具有SSD存储的低功耗四核2200ge服务器上,在大约10秒内从地理数据库创建约500个IPv4和IPv6设置文件

地理过滤是有价值的防御层,您应该考虑将其添加到nftables防火墙中,以减少网络上的攻击面并帮助保护系统免受恶意软件和其他严重流行威胁的侵害。适用于nftables的地理位置为Linux用户提供了一种简单,灵活和自动化的方法,以在其nftables防火墙上实施实时地理过滤。

访问该项目的Github页面,以了解有关适用于nftables的地理位置的更多信息以及如何在系统上安装脚本。

如果您有一个开源安全性项目,希望我们在以后的LinuxSecurity功能文章中介绍,请与我们联系!