Loading... ——# 概念与分类 ## 概念 * 数据采集:利用各类传感器,通过多种途径获取具有一定意义的信息。 * 态势数据采集:利用各类传感器通过多种途径获取可理解的、有价值的跟安全相关的信息。 ## 分类 * 按采集数据分 1. 静态数据 2. 动态数据 3. 态势数据=静态数据+动态数据 * 按数据来源分 1. 日志 2. 流量 * 按采集方式分 1. 被动采集 2. 主动采集 # SYSLOG ## 采集原理  KLOGD:收集来自内核的消息,跟据SYSLOG.CONF文件配置写入各个指定日志文件。 SYSLOGD:收集来自WEB和其他程序的消息,根据SYSLOG.CONF文件配置,写入指定日志文件。 ## 传输原理  * UDP/TCP通过514PORT将信息发送到SYSLOGD * 用户进程通过SYSLOG函数将消息转换成为LOG套接字再发送到SYSLOGD * 内核例程通过KLOG传给SYSLOGD * SYSLOGD传到文件或日记用户进程或其他主机 ### 格式 * 选择器: `设备+"."+优先级` * 设备是产生消息的源头  * 动作:日志处理方式  例: ```syslog kern.emerg /dev/console //一旦发生紧急情况就显示在控制台上 ``` # NETFLOW  * 探测器: 1. 开启一个接口的flow switching功能 2. 设置输出目的地 3. 设置服务于输出数据包的源地址 * 采集器 1. 接收flow 2. 减小数据量(过滤、聚集) 3. 存储 4. 文件清理 * 分析系统 1. 图形化显示NETFLOW数据 2. flowcollectors提供基于时间的分析和排序 3. 配置路由器和flowcollectors 4. 直方图、条形图、饼图 5. 输出到其它系统 * NETFLOW流:同一个五元组的单向数据包流 * 五元组: `源地址|目的地址|源端口|目的端口|协议类型` * 流量记录格式: `源地址|目的地址|源自治域|目的自治域|流入接口号|流出接口号|源端口|目的端口|协议类型|包数量|字节数|流数量` # NMAP * 主机发现  * 端口扫描   * 版本侦测  * 操作系统侦测  # 态势数据融合 ## 概念 利用各种技术对实时获得的若干数据,在一定准则下加以分析、综合,以完成所需决策和评估任务而进行的数据处理过程。 ## 模型  # JSON和XML    ## 示例   # 态势数据存储 ## HDFS分布式存储系统 * 高可靠性 * 高扩展性 * 高吞吐率 ## YARN资源管理系统 * 集群资源统一管理调度 ## MAPREDUCE分布式计算框架 * 易于编程 * 高容错性 * 高扩展性 # HDFS ## 写  1. CLIENT通过DISTRIBUTED FILESYSTEM模块向NAMENODE请求上传文件,NAMENODE检查目标文件是否已存在,父目录是否存在。 2. NAMENODE返回是否可以上传。 3. 客户端请求第一个BLOCK上传到哪几个DATANODE服务器上。 4. NAMENODE返回3个DATANODE节点(DN1、DN2、DN3)。 5. CLIENT通过FSDATAOUTPUTSTREAM模块请求DN1上传数据, DN1调用DN2,DN2调用DN3,建立通信管道。 6. DN1、DN2、DN3逐级应答CLIENT。 7. CLIENT向DN1上传第一个BLOCK,以PACKET为单位,DN1将PACKET传给DN2,DN2传给DN3。 8. 当一个BLOCK传输完成后,CLIENT再次请求NAMENODE上传第二个BLOCK的服务器。 ## 读  1. CLIENT调用文件系统对象DISTRIBUTEDFILESYSTEM的OPEN方法。 2. 返回FSDATAINPUTSTREAM对象。 3. 构造DFSINPUTSTREAM对象,调用NAMENODE的GETBLOCKLOCATIONS方法,获得需要的若干BLOCK(BLOCK1,BLOCK2,…)的存储DATANODE列表。(对DATANODE列表进行拓扑排序) 4. 调用DFSINPUTSTREAM的READ方法,读BLOCK1。 5. 读取完后,关闭与DATANODE建立的流。 6. 读取BLOCK2(重复4,5,6) 7. 读完这若干BLOCK后,回到3. 8. 全部读取完后,调用FSDATAINPUTSTREAM的CLOSE方法。 # HADOOP的MAPREDUCE  1. INPUT:MAPREDUCE通过INPUTFORMAT将数据从HDFS读取,并进行SPLIT切片,对每一个SPLIT分配一个MAPTASK并行实例处理。 2. MAPPER:数据进入MAP函数中,然后开始按照一定的规则切分,每个MAP函数输出一组KEY/VALVE对。 3. SHUFFLING:采用归并排序将内存和磁盘中的数据进行排序,并将MAP的输出作为REDUCE的输入。 4. REDUCE:按照KEY分组,每组进行迭代计算,写入结果到HDFS。 最后修改:2022 年 11 月 24 日 © 允许规范转载 打赏 赞赏作者 微信 赞 3 谢谢