日志采集方式 SNMP TRAP 和 Syslog 的区别
摘要: 日志文件能够详细记录系统每天发生的各种各样的事件,对网络安全起着非常的重要作用。网络中心有大量安全 设备,将所有的安全设备逐个查看是非常费时费力的。另外,由于安全设备的缓存器以先进先出的队列模式处理日志记录,保存时间不长的记录将被刷新,一些重要 的日志记录有可...
日志文件能够详细记录系统每天发生的各种各样的事件,对网络安全起着非常的重要作用。网络中心有大量安全 设备,将所有的安全设备逐个查看是非常费时费力的。另外,由于安全设备的缓存器以先进先出的队列模式处理日志记录,保存时间不长的记录将被刷新,一些重要 的日志记录有可能被覆盖。因此在日常网络安全管理中应该建立起一套有效的日志数据采集方法,将所有安全设备的日志记录汇总,便于管理和查询,从中提取出有 用的日志信息供网络安全管理方面使用,及时发现有关安全设备在运行过程中出现的安全问题,以便更好地保证网络正常运行。
采集技术比较
网络管理中常用来采集日志数据的方式包括文本方式采集、SNMP Trap方式采集和syslog方式采集,另外,其他采集方式,如Telnet 采集(远程控制命令采集)、串口采集等。我们如何选用比较合适的技术方式进行日志数据采集是必须首先考虑的,下面对当前主要的日志数据采集技术进行简单分 析。
文本方式
在统一安全管理系统中以文本方式采集日志数据主要是指邮件或FTP方式。邮件 方式是指在安全设备内设定报警或通知条件,当符合条件的事件发生时,相关情况被一一记录下来,然后在某一时间由安全设备或系统主动地将这些日志信息以邮件 形式发给邮件接受者,属于被动采集日志数据方式。其中的日志信息通常是以文本方式传送,传送的信息量相对少且需专业人员才能看懂。而FTP方式必须事先开 发特定的采集程序进行日志数据采集,每次连接都是完整下载整个日志文本文件,网络传输数据量可能非常大,属于主动采集日志数据方式。
随着网络高速的发展,网络内部以百兆、千兆甚至万兆互联,即使采取功能强大的计算机来处理日志数据包的采集工作,相对来说以上两种方式速度和效率也是不尽人意。因此,文本方式只能在采集日志数据范围小、速度比较慢的网络中使用,一般在网络安全管理中不被主要采用。
SNMP trap方式
建立在简单网络管理协议SNMP上的网络管理,SNMP TRAP是基于SNMP MIB的,因为SNMP MIB 是定义了这个设备都有哪些信息可以被收集,哪些trap的触发条件可以被定义,只有符合TRAP触发条件的事件才被发送出去。人们通常使用 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信息的传递可以在接收器没有被配置甚至没有接收器的情况下开始。反之,在没有清晰配置或定义的情况下,接收器也可以接收到信息。(网络转载,原出处不详)
日志采集方式 SNMP TRAP 和 Syslog 的区别相关推荐
- Kubernetes日志采集Sidecar模式介绍
摘要: DaemonSet和Sidecar模式各有优缺点,目前没有哪种方式可以适用于所有场景.因此我们阿里云日志服务同时支持了DaemonSet以及Sidecar两种方式,并对每种方式进行了一些额外的 ...
- 容器日志采集利器Log-Pilot
容器时代越来越多的传统应用将会逐渐容器化,而日志又是应用的一个关键环节,那么在应用容器化过程中,如何方便快捷高效地来自动发现和采集应用的日志,如何与日志存储系统协同来高效存储和搜索应用日志.本文将主要 ...
- Kubernetes入门——Kubernetes日志采集与监控告警
作者简介: 郭川磊 百度基础架构部研发工程师 负责云原生产品的研发 本文基于百度云原生团队『云原生基础知识概述及实践』系列视频课程--『Kubernetes入门-Kubernetes实现应用高可用』梳 ...
- golang 日志分析_容器日志采集利器:Filebeat深度剖析与实践
在云原生时代和容器化浪潮中,容器的日志采集是一个看起来不起眼却又无法忽视的重要议题.对于容器日志采集我们常用的工具有filebeat和fluentd,两者对比各有优劣,相比基于ruby的fluentd ...
- 大数据之路读书笔记-02日志采集
大数据之路读书笔记-02日志采集 数据采集作为阿里大数据系统体系的第 环尤为重要.因此阿里巴巴建立了一套标准的数据采集体系方案,致力全面.高性能.规范地完成海量数据的采集,并将其传输到大数据平台.本章 ...
- 网络安全之认识日志采集分析审计系统
日志对于大家来说非常熟悉,机房中的各种系统.防火墙.交换机.路由器等等,都在不断地产生日志.无数实践告诉我们,健全的日志记录和分析系统是系统正常运营与优化以及安全事故响应的基础.我们一起来认识日志采集 ...
- 大数据之路——日志采集
二.数据技术篇-- 日志采集 2.1 浏览器日志采集 2.1.1 页面型的日志采集分类 2.1.2 页面访问过程 2.1.3 页面浏览日志采集流程@ 2.1.4 页面交互日志采集 2.1.5 页面交互 ...
- syslog日志系统——日志采集
日志采集的流程 客户端埋点 客户端埋点就是在客户系统植入日志发送的代码,可以是前端页面.app界面.后端服务等,把需要的日志信息发送到指定的日志采集接口. 日志的发送应该采用异步方式,这样不会对客户系 ...
- Springboot/Springcloud整合ELK平台,(Filebeat方式)日志采集及管理(Elasticsearch+Logstash+Filebeat+Kibana)
前言 最近在搞一套完整的云原生框架,详见 spring-cloud-alibaba专栏,目前已经整合的log4j2,但是想要一套可以实时观察日志的系统,就想到了ELK,然后上一篇文章是socket异步 ...
最新文章
- 项目跑到到了日志警告就卡住了_java中的日志框架梳理(以故事的形式呈现)...
- 你需要掌握的三种编程语言
- C++实用技巧(四)
- 枚举类 - Java面向对象编程
- PyTorch基础(part5)--交叉熵
- css盒子模型圆形运用,【前端】CSS3学习笔记(三)——盒子模型
- mysql初始化错误【一】Can't find error-message file '/usr/local/mysql/errmsg.sys'
- C语言之加入头文件<stdbool.h>可以使用true和false
- QtCreator 如何将开发的程序打包成exe
- 【推荐系统算法学习笔记1】基本架构、专有名词、构建流程
- 新风口?人造肉第一股表现强劲 股价累计上涨近600%
- java多线池_java多线程之线程池
- 2018年TI杯大学生电子设计竞赛
- 计算机文字录入在线打字,教您如何在一分钟内把书中的文字录入电脑
- 「实验一小时」——大牛直播讲解PHP楼赛题目,就在今晚!
- 计算机网络准入技术,计算机网络终端准入控制技术课件.pdf
- Java8新特性学习第一天
- 详解sigmoid与softmax, 多分类及多标签分类
- Android Studio导入第三方sdk
- 将NX,JT, step等一些常见3维格式文件直接发布到网页上,可在线浏览
热门文章
- AcWing 1233. 全球变暖【FloodFill】【BFS】【DFS】
- 房地产专业知识200问
- php reflectionclass 得到参数,PHP 返回 ReflectionClass 对象字符串的表示形式。
- php获得第二天,PHP第二天
- 【业界】年终特稿:2006中国互联网搜索大事记
- Spreading the Wealth UVA - 11300
- 求解求最大公约数定义的算法,这个程序求不出来,网上百度的算法不对?
- 圆石说│亚马逊云(AWS)推出区块链模板供用户自主构建区块链网络;东港股份与北京市公安局合作 首创“区块链+机动车号牌”模式……
- 网易易盾某 拼图验证码
- Android开发蓝牙和震动器操作