zeek学习(二)

生活中,最使人疲惫的往往不是道路的遥远,而是心中的郁闷;最使人痛苦的往往不是生活的不幸,而是希望的破灭;最使人颓废的往往不是前途的坎坷,而是自信的丧失;最使人绝望的往往不是挫折的打击,而是心灵的死亡。所以我们要有自己的梦想,让梦想的星光指引着我们走出落漠,走出惆怅,带着我们走进自己的理想。

导读:本篇文章讲解 zeek学习(二),希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

简介

Zeek 是一个被动的开源网络流量分析器。它主要被用作安全监测设备来检查链路上的所有流量中是否有恶意活动的痕迹。但更普遍地,Zeek支持大量安全领域外的流量分析任务,包括性能测量和帮助排查问题。

架构

zeek在架构上主要有两个组件:事件引擎和事件处理程序。
● 事件引擎:把进入的数据报流简化为一系列高级的事件,这些事件以策略无关的形式反映网络活动。事件引擎包括多个子组件:数据包处理管道、输入源、数据包分析、会话分析、文件分析。事件引擎提供了一个插件架构,用于从核心 Zeek 代码库之外添加任何这些,允许根据需要扩展 Zeek 的功能。
○ 输入源:接受来自网络接口的传入流量。
○ 数据包分析:处理低级别的协议,从链路层开始。
○ 会话分析:处理应用层协议,例如:http、ftp等。
○ 文件分析:刨析通过会话传输的文件的内容
● 事件处理程序:使用zeek脚本语言编写,这些脚本能够表达安全策略,能够从输入流量中得到任何想要的属性和统计数据。zeek内置许多特定类型和支持的功能,并且可以运行脚本维护时间状态使得他们可以对不同会话和主机之间的通信进行追踪和关联。zeek能够生产实时警报和任意的外部程序。
在这里插入图片描述

快速入门

目录结构
zeek默认会安装到/usr/local/zeek或者/opt/zeek目录下。其目录结构如下:
···
|_ bin/
|_ etc/
|_ include/
|_ lib/
|_ logs/
|_ share/
|_ spool/
···
● bin/zeek:zeek二进制程序
● bin/zeek-cut:从zeek日志(非json)中提取列,方便进行日志分析,同时还将Unix纪元时间转换为可读的格式。
● bin/zeekctl:zeek集群管理工具,一个交互式shell。
● etc/networks.cfg:定义本地网络,便于网络流量的有效和正确的分析。
● etc/node.cfg:配置集群节点信息。
● etc/zeekctl.cfg:zeekcontrl管理的配置文件,包含默认日志、日志轮转时间间隔和电子邮件配置。
● logs/current:默认日志存放路径,包含zeek运行时写入的活动日志文件。
● share/zeek/base:zeek加载的基本脚本。
● share/zeek/policy:zeek附带的其他策略脚本,用户可以选择是否加载它。
● share/zeek/site:zeek存放的本地脚本,不会被升级所破坏。

ZeekControl

ZeekControl是一个交互式的shell,可以在单个系统上管理zeek安装,并且在流量监控系统中可以跨多个系统。
配置
···
$ cat $PREFIX/etc/node.cfg
[zeek]
type=standalone
host=localhost
interface=eth0 # change this according to your listening interface in ifconfig
···
启动
···
zeekctl
···
初始化
···
[ZeekControl] > install
···
启动zeek实例
···
[ZeekControl] > start
···

日志

zeek带有灵活的基于键值的日志记录界面,允许对记录的内容和记录方式进行细粒度的控制。

术语

● stream:一个日志流对应一个日志。它定义了日志包含的字段集及其名称和类型。
● filter:每个流都有一组附加的过滤器,用于确定写出哪些信息以及如何写出。默认情况下,每个流都有一个默认过滤器,它将所有内容直接记录到磁盘。但是,可以添加其他过滤器以仅记录日志记录的子集、写入不同的输出或设置自定义轮换间隔。如果从流中删除所有过滤器,则该流的输出将被禁用。
● author:每个过滤器都有一个author。编写器定义正在记录的信息的实际输出格式。默认编写器是 ASCII 编写器,它生成制表符分隔的 ASCII 文件。其他编写器可用,例如用于二进制输出或直接登录到数据库。

参考资料

官网:https://zeek.org
github:https://github.com/zeek/zeek
文档:https://docs.zeek.org/en/master
脚本学习:https://try.zeek.org/#/?example=logs-filter-logs

推荐一个零声学院免费公开课程,个人觉得老师讲得不错,分享给大家:[Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK等技术内容,点击立即学习]

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

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/137620.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!