`
hongliangpan
  • 浏览: 318677 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

SYSLOG日志数据采集实现

阅读更多
华中师范大学:SYSLOG日志数据采集实现
http://www.edu.cn   2008-05-28 作者:刘合富

  日志文件能够详细记录系统每天发生的各种各样的事件,对网络安全起着非常的重要作用。网络中心有大量安全设备,将所有的安全设备逐个查看是非常 费时费力的。另外,由于安全设备的缓存器以先进先出的队列模式处理日志记录,保存时间不长的记录将被刷新,一些重要的日志记录有可能被覆盖。因此在日常网 络安全管理中应该建立起一套有效的日志数据采集方法,将所有安全设备的日志记录汇总,便于管理和查询,从中提取出有用的日志信息供网络安全管理方面使用, 及时发现有关安全设备在运行过程中出现的安全问题,以便更好地保证网络正常运行。
  采集技术比较
  网络管理中常用来采集日志数据的方式包括文本方式采集、SNMP Trap方式采集和syslog方式采集,另外,其他采集方式,如Telnet 采集(远程控制命令采集)、串口采集等。我们如何选用比较合适的技术方式进行日志数据采集是必须首先考虑的,下面对当前主要的日志数据采集技术进行简单分 析。
  文本方式
  在统一安全管理系统中以文本方式采集日志数据主要是指邮件或FTP方式。邮件方式是指 在安全设备内设定报警或通知条件,当符合条件的事件发生时,相关情况被一一记录下来,然后在某一时间由安全设备或系统主动地将这些日志信息以邮件形式发给 邮件接受者,属于被动采集日志数据方式。其中的日志信息通常是以文本方式传送,传送的信息量相对少且需专业人员才能看懂。而FTP方式必须事先开发特定的 采集程序进行日志数据采集,每次连接都是完整下载整个日志文本文件,网络传输数据量可能非常大,属于主动采集日志数据方式。
  随着网络高速的发展,网络内部以百兆、千兆甚至万兆互联,即使采取功能强大的计算机来处理日志数据包的采集工作,相对来说以上两种方式速度和效率也是不尽人意。因此,文本方式只能在采集日志数据范围小、速度比较慢的网络中使用,一般在网络安全管理中不被主要采用。
  SNMP trap方式
  建立在简单网络管理协议SNMP上的网络管理,人们通常使用SNMP Trap 机制进行日志数据采集。生成Trap消息的事件(如系统重启)由Trap代理内部定义,而不是通用格式定义。由于Trap机制是基于事件驱动的,代理只有 在监听到故障时才通知管理系统,非故障信息不会通知给管理系统。对于该方式的日志数据采集只能在SNMP下进行,生成的消息格式单独定义,对于不支持 SNMP设备通用性不是很强。
  网络设备的部分故障日志信息,如环境、SNMP访问失效等信息由SNMP Trap进行报告,通过对 SNMP 数据报文中 Trap 字段值的解释就可以获得一条网络设备的重要信息,由此可见管理进程必须能够全面正确地解释网络上各种设备所发送的Trap数据,这样才能完成对网络设备的 信息监控和数据采集。
  但是由于网络结构和网络技术的多样性,以及不同厂商管理其网络设备的手段不同,要求网络管理系统不但对公有 Trap能够正确解释,更要对不同厂商网络设备的私有部分非常了解,这样才能正确解析不同厂商网络设备所发送的私有 Trap,这也需要跟厂商紧密合作,进行联合技术开发,从而保证对私有 Trap 完整正确的解析和应用。此原因导致该种方式面对不同厂商的产品采集日志数据方式需单独进行编程处理,且要全面解释所有日志信息才能有效地采集到日志数据。 由此可见,该采集在日常日志数据采集中通用性不强。
  syslog方式
  已成为工业标准协议的系统日志(syslog)协议是在加里佛尼亚大学伯克立 软件分布研究中心(BSD)的TCP/IP 系统实施中开发的,目前,可用它记录设备的日志。在路由器、交换机、服务器等网络设备中,syslog记录着系统中的任何事件,管理者可以通过查看系统记 录,随时掌握系统状况。它能够接收远程系统的日志记录,在一个日志中按时间顺序处理包含多个系统的记录,并以文件形式存盘。同时不需要连接多个系统,就可 以在一个位置查看所有的记录。syslog使用UDP作为传输协议,通过目的端口514(也可以是其他定义的端口号),将所有安全设备的日志管理配置发送 到安装了syslog软件系统的日志服务器,syslog日志服务器自动接收日志数据并写到日志文件中。
  另外,选用以syslog方式采集日志数据非常方便,且具有下述原因:
  第一,Syslog 协议广泛应用在编程上,许多日志函数都已采纳 syslog协议,syslog用于许多保护措施中。可以通过它记录任何事件。通过系统调用记录用户自行开发的应用程序的运行状况。研究和开发一些系统程 序是日志系统的重点之一,例如网络设备日志功能将网络应用程序的重要行为向 syslog 接口呼叫并记录为日志,大部分内部系统工具(如邮件和打印系统)都是如此生成信息的,许多新增的程序(如tcpwrappers和SSH)也是如此工作 的。通过syslogd(负责大部分系统事 件的守护进程),将系统事件可以写到一个文件或设备中,或给用户发送一个信息。它能记录本地事件或通过网络记录到远端设备上的事件。
  第二,当今网络设备普遍支持syslog协议。几乎所有的网络设备都可以通过syslog协议,将日志信息以用户数据报协议(UDP)方式传送 到远端服务器,远端接收日志服务器必须通过syslogd监听UDP 端口514,并根据 syslog.conf配置文件中的配置处理本机,接收访问系统的日志信息,把指定的事件写入特定文件中,供后台数据库管理和响应之用。意味着可以让任何 事件都登录到一台或多台服务器上,以备后台数据库用off-line(离线) 方法分析远端设备的事件。
  第三,Syslog 协议和进程的最基本原则就是简单,在协议的发送者和接收者之间不要求严格的相互协调。事实上,syslog信息的传递可以在接收器没有被配置甚至没有接收器的情况下开始。反之,在没有清晰配置或定义的情况下,接收器也可以接收到信息。
  通过分析比较,目前主要流行的日志数据采集方式选用syslog方式较其他方式有优势。
  模式实现
  本文所述的日志数据采集模式是以建立syslog日志服务器为主的采集方式,具体内容如下:
  1.采集原始日志信息。
  数据源:提供syslog格式日志数据的设备或系统;该设备可能是防火墙、IDS、病毒网关及其他安全设备或系统。
  syslog日志服务器:采集来自设备或系统的syslog格式日志数据并进一步保存其原始数据。
  日志文件:保存来自syslog日志服务器处理过的syslog格式日志数据,每一行表示一条日志信息。
  2.进行有用日志数据分析采集。
  日志文件监控:监控日志数据收集工作。侦测到日志文件是否有数据写入,意味着有数据被采集,同时触发对该日志数据的过滤。

  过滤:符合设定条件的日志数据被采用,转入相关事件调用;不符合设定条件的日志数据被抛弃,返回对日志文件的监控。

  数据库:保存过滤后的原始日志数据和经分析提取出有用信息数据。
  有用数据分析采集:由监控程序触发,执行时序在新日志数据写入数据库之前,然后从数据库中提取原始数据,完成提取有用信息的工作,提取信息如 下:事件发生的时间、事件发生时使用的协议、事件发源地、事件发生目的地、安全设备信息等。处理完成后将结果写入数据库,以待以后更深层次分析。
  结果显示:将初步分析采集结果以Web方式或其他人性化显示。
  实际上,上述内容是以三个中心的方式提出一种采集日志数据模式:以日志服务器为中心采集原始日志信息,分别以日志文件和日志数据库为中心进行的 日志数据分析采集有用的日志信息。该种采集方法能保证采集工作各项事务能独立完成:syslog服务器采集原始日志数据不受后面程序分析采集、数据库读写 等的影响,后面的分析采集部分不受syslog服务器采集工作影响而减慢分析采集的速度。一方面保证采集到各安全设备的日志数据不被丢失,安全信息有完整 的保证;另一方面保证安全管理系统从数据采集到动作反应花费的时间短,还可以取得实时的日志信息。
  结合建立在syslog日志服务器基础上,提出一种采集日志数据模式:以日志服务器为中心采集原始日志信息,分别以日志文件和日志数据库为中心 进行的日志数据分析采集有用的日志信息。但是,该协议在网络信息安全方面也存在着漏洞,同时要考虑到相关的解决方式。一是要考虑到限制syslog日志服 务器的访问范围,也可以指定syslog日志服务器与安全设备间以固定的端口进行网络互联;二是可以在syslog中加入IP sec协议解决加密与认证的方式。

分享到:
评论

相关推荐

    syslog实现远程nginx日志服务

    在提供的“nginx_syslog_patch-master”压缩包中,很可能包含了一个Nginx的syslog补丁,用于添加syslog日志输出的支持。 应用补丁的过程一般包括以下步骤: 1. 解压下载的补丁包(nginx_syslog_patch-master)。 2....

    evtsys服务将windows日志转换为syslog格式

    此外,为了保护敏感信息,还应考虑对传输中的日志数据进行加密。 综上所述,"evtsys服务"是连接Windows日志系统与syslog环境的桥梁,它简化了多平台日志管理,提高了IT运营的效率和安全性。通过正确配置和使用...

    Kubernetes日志采集与分析的最佳实践

    Kubernetes日志采集关键特性包括高性能的全方位数据采集能力、低资源消耗、与Kubernetes的无缝集成、支持原生Kubernetes配置方式以及稳定可靠的自动发现机制。此外,Logtail还支持大规模集群的监控数据采集,所有...

    基于Windows的Syslog日志系统设计与实现

    在构建基于Windows的Syslog日志系统时,文章提到了采用Kiwisyslog作为日志采集软件。Kiwisyslog遵循RFC 3164标准,能够接收并处理来自不同来源的日志数据。它提供了丰富的功能,包括日志模拟发送、日志浏览器等,...

    import_netlog.rar_NetLog_import_netlog_syslog_日志_日志服务器

    总结,"import_netlog.rar"项目为网络管理员提供了一种有效管理和利用日志数据的手段,通过集成syslog服务器和数据库,实现了日志的高效采集、解析和存储,为网络监控和故障排查提供了有力支持。在实际应用中,用户...

    java日志数据的采集显示

    在Java开发过程中,日志数据的采集和显示是至关重要的环节。日志可以帮助开发者追踪程序运行状态、定位问题以及分析系统性能。以下是对这个主题的详细讲解。 首先,我们需要了解日志的基本概念。日志是应用程序运行...

    日志服务器配置,接收H3C路由器日志

    随着网络设备数量的不断增加,管理这些设备产生的大量日志数据变得越来越重要。通过配置日志服务器来集中收集并分析这些日志,不仅可以提高网络安全性和监控效率,还能帮助快速定位问题所在。本文将详细介绍如何在...

    syslog工具

    压缩包中的"syslog工具"可能是用于模拟syslog日志生成的工具,帮助用户在没有实际设备的情况下测试日志采集和分析流程。这种工具通常允许用户自定义日志内容、频率和格式,以满足不同场景的测试需求。 使用这类工具...

    linux_test.rar_linux 数据采集_linux发送数据_linux数据采集_linux采集_数据采集

    在Linux操作系统中,数据采集是一项重要的任务,尤其在监控系统性能、分析日志或进行大数据分析时。本压缩包文件“linux_test.rar”似乎包含了与Linux数据采集相关的资源,包括可能的数据采集脚本、配置文件或者说明...

    Syslog介绍

    3. **SYSLOG方式采集**:Syslog协议允许设备将日志信息通过网络发送到 syslog服务器,支持TCP和UDP传输,其中UDP是默认且常见的选择,但不保证数据的可靠性。TCP虽然能提供可靠性,但可能增加网络开销。 4. **其他...

    数据中心IPv6网络日志采集平台的设计与实现.docx

    平台分为数据采集和数据分析两部分,前者通过Cloudera Hadoop集群处理数据,后者则采用B/S架构提供可视化展示和监控。 平台的工作原理是通过Flume组件接收UDP syslog数据,如核心交换机、DNS和防火墙的日志,然后...

    nginx-prometheus-shiny-exporter:此应用程序通过Syslog从nginx收集自定义格式的日志,计数所有数据并将度量标准导出到Prometheus服务器

    这个工具利用了Syslog协议来接收Nginx的日志,然后进行解析、计数,最后将收集的数据发送到Prometheus服务器,以便进行进一步的分析和可视化。 首先,**Nginx** 是一款广泛使用的开源HTTP服务器和反向代理服务器,...

    电信设备-数据采集方法、移动终端以及服务器.zip

    2. 电信设备:电信设备如交换机、路由器、基站等,它们是数据采集的基础,设备内置的各种传感器和日志系统能实时捕捉到网络运行数据。 3. 数据采集方法: - 主动监测:通过主动发送测试数据包或请求,评估网络性能...

    Kubernetes下日志实时采集存储与计算实践.pdf

    总结了Kubernetes日志采集的痛点,包括采集目标多样化、采集可靠性问题、容器日志易失性与数据持久化需求之间的矛盾、异常情况下数据完整性的保障、动态伸缩带来的挑战、以及采集配置的复杂度和管理难度。...

    Nxlog日志采集配置手册

    Nxlog是一款功能强大且灵活的日志采集工具,能够从各种数据源中采集日志,并将其发送到指定的目的地。本手册将详细介绍Nxlog的安装、配置和使用方法。 一、Nxlog安装 Nxlog支持多种操作系统,包括Windows、Linux和...

    大数据技术应用(一) 应用Flume+HBase采集和存储日志数据

    1. **配置Flume**: 首先,我们需要配置Flume的源,指定日志数据的来源,如Web服务器的日志文件或者syslog。接着,设置通道类型,比如内存通道或文件通道,以确保数据的可靠传输。最后,配置Sink指向HBase,需要提供...

    syslog收集:eventlog+syslog-ng+mongodb

    在IT运维和监控领域,有效地收集、处理和存储日志数据对于故障排查、安全审计和性能分析至关重要。 首先,让我们深入了解每个组件: 1. **Eventlog**:这是Windows操作系统中的一个核心组件,用于记录系统和应用...

    海量日志采集、解析实践.pdf

    同时,日志格式的快速变化也要求系统能够灵活适应,而日志的有效性监测则确保了所采集的日志数据是真实可靠的。 针对上述挑战,应对措施包括但不限于虚拟化集群的部署,利用开源产品支持横向扩容,保持系统的自我可...

    nxlog日志上传工具

    使用nxlog与ELK套件结合,企业可以实现对Windows环境的日志数据进行全面、实时的监控和分析,有助于故障排查、安全审计和合规性检查。在安装和配置nxlog时,用户需要注意配置文件中的输入模块(input module)、输出...

Global site tag (gtag.js) - Google Analytics