技术新讯 > 电子通信装置的制造及其应用技术 > 用于Linux系统的数据防护方法、系统及存储介质与流程  >  正文

用于Linux系统的数据防护方法、系统及存储介质与流程

  • 国知局
  • 2025-01-10 13:36:38

本发明涉及通信数据安全领域,具体涉及一种用于linux系统的数据防护方法、系统及存储介质。背景技术:::1、随着信息技术和互联网的迅速发展,各种各样的网络技术层出不穷,新型网络威胁不断涌现,不间断的网络扫描行为和日益增加的网络流量,都给网络安全带来了前所未有的挑战。面对这些挑战,传统的网络安全措施已经无法满足现代网络环境的需求。因此,主机防火墙技术的发展和应用变得尤为关键。主机防火墙,作为网络安全体系中的重要组成部分,不仅能有效控制进出主机的网络访问,还能提供针对内部及外部网络威胁的综合保护。主机防火墙通过实施精细化的访问控制策略、监控网络流量、以及识别和阻断潜在威胁,从而构建起一道网络安全的防线。2、linux系统中,iptables(linux防火墙工作在用户空间的管理工具)/nftables(用于管理linux内核网络堆栈的工具)是主流的主机防火墙的解决方案。iptables/nftables是基于linux内核的netfilter框架构建的,netfilter是一个内置于linux内核中的网络数据包过滤框架,允许各种网络相关的操作,包括包过滤、包修改、网络地址转换(nat)和负载均衡等。通过利用这个框架,iptables/nftables提供了一种对网络数据包进行过滤、修改和重定向的方法,从而实现对网络流量的精确控制和管理。3、具体来说,iptables/nftables进行数据防护的方式为:通过定义一系列的规则来对网络流量进行管理。这些规则根据源ip地址、目的ip地址、传输协议、源和目标端口、网络接口等多种属性来匹配网络数据包。一旦匹配成功,就会根据规则来决定如何处理这些网络数据包,规则包括允许(accept)数据包通过、拒绝(drop)数据包、重定向(redirect)网络数据包到另一个地址,或是修改网络数据包(如通过masquerade进行nat)等。4、但是,iptables/nftables在处理大量规则时会遇到性能瓶颈,因为它们的设计原则导致了匹配的时间复杂度是o(n)。这意味着随着规则数量增加,处理每个网络数据包所需的时间也会线性增长,从而影响linux系统和业务的性能。5、例如对于ddos(distributed denial of service,分布式拒绝服务攻击)这样的网络攻击,更早地丢包,就能更好地缓解系统cpu的损耗。但是用iptables/nftables作为防ddos攻击的手段,效果往往很差。是因为iptables/nftables基于netfilter框架实现,即便是攻击报文在netfilter框架prerouting的hook点(收包路径的最早hook点)丢弃,也已经走过了很多linux网络协议栈的处理流程。技术实现思路1、针对现有技术中存在的缺陷,本发明解决的技术问题为:在进行数据防护时,如何在降低系统资源消耗的基础上,显著缩短网络数据包的数据防护过程,进而提升数据防护能力和网络流量管理的性能。2、为达到以上目的,第一方面,本技术实施例提供一种用于linux系统的数据防护方法,包括以下步骤:3、将每条数据防护规则映射为唯一的规则位向量;4、获取每条数据防护规则的匹配项,匹配项包括基础匹配项和规则匹配项:5、对于规则匹配项和唯一的基础匹配项,将该匹配项对应的数据防护位向量作为匹配位向量;6、对于同时出现在至少2条以上的数据防护规则的非唯一的基础匹配项,将该匹配项对应的每个数据防护位向量进行位或操作后,作为该匹配项的匹配位向量;7、获取网络数据包后,获取每个匹配项的匹配位向量;将当前网络数据包对应的所有匹配位向量进行位与操作后,得到规则位向量;根据该规则位向量确定并执行对应的数据防护规则。8、结合第一方面,在一种实施方式中,所述匹配位向量确定之后,还包括以下步骤:将同一类型的匹配项的值、以及对应的匹配位向量存入同一数据库;所述获取每个匹配项的匹配位向量的流程包括:从当前匹配项的类型对应的数据库中,获取与当前匹配项的值对应的匹配位向量。9、结合第一方面,在一种实施方式中,所述执行数据防护规则的流程包括:确定数据防护规则的执行操作:10、若执行操作为接受或为空,则确定网络数据包不需要防护;11、若执行操作为拒绝,则确定网络数据包需要防护,禁止接收网络数据包,根据网络数据包的信息生成告警信息并存储至告警数据库。12、结合第一方面,在一种实施方式中,所述数据防护规则的基础匹配项包括:源地址、目的地址、目的端口和协议,规则匹配项包括执行操作。13、结合第一方面,在一种实施方式中,所述每个防护规则位向量的长度相同、且长度上限为8192。14、第二方面,本技术实施例提供了一种计算机可读存储介质,该存储介质上存储有用于linux系统的数据防护程序,所述计算机程序被执行时实现第一方面提供的方法。15、第三方面,本技术实施例提供了一种用于linux系统的数据防护系统,该系统包括位向量预设模块、流量抓取模块和数据防护模块;16、所述位向量预设模块用于:将每条数据防护规则映射为唯一的规则位向量;17、获取每条数据防护规则的匹配项,匹配项包括基础匹配项和规则匹配项:18、对于规则匹配项和唯一的基础匹配项,将该匹配项对应的数据防护位向量作为匹配位向量;19、对于同时出现在至少2条以上的数据防护规则的非唯一的基础匹配项,将该匹配项对应的每个数据防护位向量进行位或操作后,作为该匹配项的匹配位向量;20、所述流量抓取模块用于:抓取网络数据包并发送至数据防护模块;21、所述数据防护模块用于:获取每个匹配项的匹配位向量;将当前网络数据包对应的所有匹配位向量进行位与操作后,得到规则位向量;根据该规则位向量确定并执行对应的数据防护规则。22、结合第三方面,在一种实施方式中,该系统还包括数据存储模块,其用于:创建告警数据库、以及与每种类型的匹配项对应的匹配项数据库;23、所述位向量预设模块还用于:按照匹配项的类型,将匹配项的值和匹配位向量存储至对应的匹配项数据库;24、所述数据防护模块获取每个匹配项的匹配位向量的流程包括:从每个匹配项类型的数据库中获取每个匹配项的匹配位向量;25、所述数据防护模块执行对应的数据防护规则的流程包括:26、确定数据防护规则的执行操作:27、若执行操作为接受或为空,则确定网络数据包不需要防护,即放行;28、若执行操作为拒绝,则确定网络数据包需要防护,禁止接收网络数据包,根据网络数据包的信息生成告警信息并存储至告警数据库。29、结合第三方面,在一种实施方式中,所述流量抓取模块包括:30、入站流量抓取模块,其用于:抓取入站的网络数据包并发送至数据防护模块;31、出站流量抓取模块,其用于:抓取出站的网络数据包并发送至数据防护模块。32、结合第三方面,在一种实施方式中,所述数据防护模块选用ebpf;所述数据库为ebpf map;所述入站流量抓取模块通过xdp;所述出站流量抓取模块通过tc实现。33、与现有技术相比,本发明的优点在于:34、本发明通过线性位向量对数据防护规则进行了处理,之后匹配规则是只需进行解析匹配项并确定其匹配位向量后,对匹配位向量位与操作即可得到规则位向量,根据规则位向量可直接确定并执行数据防护规则。35、因此,与现有技术中匹配的时间复杂度是o(n)相比,本发明无论数据防护规则数量多少,匹配的时间都是直接确定每个匹配项对应的匹配位向量并进行一次位与操作的时间,即显著缩短了规则匹配时间,随之也就大幅度缩短了数据防护的处理时间。与此同时,上述规则匹配时间缩短的同时也大幅度降低了系统资源消耗,进而提高了主机防火墙的处理能力。当前第1页12当前第1页12

本文地址:https://www.jishuxx.com/zhuanli/20250110/354205.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。