Splunk实战(一)——索引器配置以及转发器安装配置说明

RipZ · 2016/05/30 10:36

0x00 前言


本文将以连载的形式分享splunk在实战中的运用:从索引器&转发器的安装部署开始,到普通搜索&字段提取,再到报表&仪表盘定制以及告警等,详细的写出作者在实战中的经验(其实是遇到的坑),让大家看完之后可以少走些弯路。

0x01 Splunk简述

什么是Splunk?

Splunk是机器数据的引擎。使用 Splunk 可收集、索引和利用所有应用程序、服务器和设备(物理、虚拟和云中)生成的快速移动型计算机数据,随时从一个位置搜索并分析所有实时和历史数据。使用 Splunk可以在几分钟内(而不是几个小时或几天)解决问题和调查安全事件,关联并分析跨越多个系统的复杂事件,从而获取新层次的安全运营以及业务运营可见性。

Splunk的强大之处

Splunk 可以从任何源实时索引任何类型的计算机数据,由下图可见,通过端口监听来收集各类服务器或者网络设备的日志,还可以通过脚本来获取系统指标等。

同时,可以通过在各个操作系统安装部署转发器(forwarder),来实现将各个agent端日志目录文件发送到splunk索引器(indexer)中。下图最底层为forwarder,中间层为indexer。

简要介绍了一下整体架构,下面我们进入实战环节。

0x02 环境准备


Splunk索引器

6.3.3版本,IP为10.2.1.157

Splunk转发器

Linux&windows的6.3.3版本

0x03 索引器配置

索引器端需要配置监听端口,以便接收从转发器端发来的日志文件等。在“设置——转发和接收——接收数据”中配置监听9997端口

另外索引器默认的管理端口是8089,无需配置。

0x04 Windows转发器配置


准备工作

  1. splunk转发器下载地址

https://www.splunk.com/page/previous_releases/universalforwarder

  1. 需要在windows server上将”本地安全策略——本地策略——审核策略”中的所有审核策略均配置为”成功“和失败”

安装过程

首先复制转发器到相应的服务器上

双击执行该文件,如下图所示,勾选接受协议,之后选择“Customize Options”即自定义安装

路径默认即可

勾选上“windows Event Logs”以及“Performance Monitor”的全部选项,但不用勾选”AD monitoring”(否则如果在域环境下,索引器会收到大量域内无用消息,极为占用资源),如下图。

这个步骤默认即可。

(重要!)配置调度服务器(这一步是为了让indexer可以识别到forwarder,并且可以从管理端下发日志采集指令)。 这一步中的IP填写为10.2.1.157,端口填写为8089,如下图。

(重要!)这一步中配置接收索引器(这一步是为了让indexer可以接收到forwarder发来的日志),IP填写为10.2.1.157,端口填写为9997。

执行安装过程完毕后,点击Finish结束。

最后在索引器中可以看到该转发器已连接上

0x05 Linux转发器配置


安装过程

首先查看当前IP。

从内网服务器下载压缩包:

#!shell
wget http://10.2.24.66/splunkforwarder-Linux.tgz
复制代码

解压。

进入%splunkforwarder%/bin

输入./splunk start进行安装

输入y,等待安装完成。

输入./splunk enable boot-start,配置为开机启动

(重要!)配置调度服务器(这一步是为了让indexer可以识别到forwarder,并且可以从管理端下发日志采集指令)。

遇到的坑:6.3.3的转发器安装貌似没法通过输入命令来指定对端索引器,如果不搞配置文件的话,索引器是无法感知到这个转发器的。

随后在%splunkforwarder%/etc/system/local/配置deploymentclient.conf

其文件内容格式为:

[target-broker:deploymentServer]
targetUri = 10.2.1.157:8089
复制代码

如下配置即为成功

(重要!)这一步中配置接收索引器(这一步是为了让indexer可以接收到forwarder发来的日志)

另外需要在%splunkforwarder%/etc/system/local/配置outputs.conf

[tcpout]
defaultGroup = defau;lt-autolb-group    

[tcpout:default-autolb-group]
server = 10.2.1.157:9997    

[tcpout-server://10.2.1.157:9997]
复制代码

如下配置即为成功

配置完conf文件后需要重启splunk服务

另外,还需要配置/etc/rsyslog.conf,设置接收syslog条目为:(为了实现索引分类,这里我将linux的syslog指定发到索引器的516端口)

* @10.2.1.157:516

配置完毕后保存退出,并且重启rsyslog服务。

至此,linux端转发器配置完毕。

随后可看到在server端服务器列表中,该转发器已连接上。

0x06 添加转发器中的数据


首先选择“设置——数据导入“

选择添加来自于转发器的数据——windows事件日志

新建一个服务器组

由于目前只关心安全日志,只选security即可,如下图。

将这些转发器的上述配置好的日志均发送到自己新建的windows索引中,以免在超大的main索引里查询导致效率下降。

同理,在”添加数据——文件和目录”功能中,可以直接导入转发器的IIS或tomcat等日志目录所在的路径,配置完毕后由转发器自动将日志发到索引器上来(好像远控有木有)

再将不同类别的日志存放到相应的索引中即可。

最后在搜索时输入index=windows或者index=iis,即可搜到所有转发器发来的日志了。

另外,在上一章节中所配置的linux syslog已经发送到了516端口,所以在这里我们新建一个监听UDP:516的规则

并建立一个单独的linux索引来存储发到516端口的UDP数据(即syslog),届时直接搜索index=linux即可。

0x07 简单的报表示例


统计暴力破解SSH的源IP

先通过linux登录失败的特征字段“failed password”来查询,同时,linux的日志均在名为linux的索引表中,故应该搜索:index=linux failed password。如下图

之后想要统计来源的IP都有哪些,此时点击左侧的“Src_ip”,选择”上限值”,即为发生次数最多的前20个。

可以自动生成统计图,直观展示哪些源IP的次数最多。

之后将Src_ip改为Dst_ip,可以观察哪些linux服务器正遭受暴力破解的威胁。

至于上面说的Src_ip和Dst_ip是怎么分割出来的,且听下回分解《搜索技巧&字段提取》。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Splunk是一种高扩充性且通用的数据引擎。它可以帮助企业收集、编入索引并智能化地分析由网络、应用程序以及移动设备等产生的机数据,并最终帮助企业决策者做出准确的判断。本书集合了各种实用方法,目的是给读者提供指导和实用知识,以便读者掌握Splunk Enterprise 6的各种功能,从数据中提取出强大而有价值的运维智能。 《Splunk智能运维实战》共10章,第1章介绍将数据导入Splunk的基本方法;第2章介绍使用Splunk搜索数据的基本方法;第3章介绍如何创建仪表盘和数据的可视化图表;第4章介绍如何创建并修改Splunk应用程序;第5章介绍如何使用Splunk的数据模型和透视功能;第6章介绍Splunk中的一些高级搜索命令,将学习如何创建事务、编写次级搜索、理解并发性、利用字段关联等;第7章介绍如何增加和丰富Splunk中的数据,详细讲解Splunk查找和工作流程功能的使用;第8章介绍Splunk的警报功能;第9章介绍Splunk中的更多数据汇总方法:汇总索引和报表加速;第10章介绍如何自定义Splunk应用程序并使用Splunk SDK和API的高级特性来处理Splunk内的数据。 目录 译者序 前言 第1章 游戏时间——导入数据 1 1.1 简介 1 1.2 索引文件和目录 2 1.3 从网络端口获取数据 7 1.4 使用脚本输入 10 1.5 使用模块输入 12 1.6 使用通用转发器收集数据 16 1.7 为本书加载样本数据 19 1.8 定义字段提取内容 22 1.9 定义事件类型和标签 24 1.10 小结 26 第2章 深入数据——搜索和报表 27 2.1 简介 27 2.2 使原始事件数据具备可读性 30 2.3 找出最常访问的网页 32 2.4 找出最常使用的Web浏览 34 2.5 找出浏览量来源最多的网站 37 2.6 制作网页响应代码的图表 38 2.7 显示网页响应时间的统计数据 40 2.8 列出浏览次数最多的产品 43 2.9 制作应用程序使用性能的图表 45 2.10 制作应用程序内存使用情况的图表 47 2.11 计算数据库连接的总数 48 2.12 小结 50 第3章 仪表盘和可视化——让数据闪光 51 3.1 简介 51 3.2 创建智能运维仪表盘 53 3.3 使用饼图展示最常访问的网页 55 3.4 显示唯一访客数量 59 3.5 使用计量显示错误的数量 63 3.6 制作每一主机不同请求方法数量的图表 66 3.7 制作请求方法、浏览量和响应时间的时间图 67 3.8 使用散点图根据大小和响应时间标识离散的请求 70 3.9 制作面积图显示应用程序的性能统计数据 73 3.10 使用条形图按类别显示平均花销 75 3.11 制作折线图显示项目浏览量和购买量随时间的变化 77 3.12 小结 78 第4章 创建智能运维应用程序 80 4.1 简介 80 4.2 创建智能运维应用程序 81 4.3 添加仪表盘和报表 84 4.4 更高效地组织仪表盘 89 4.5 动态钻取活动报表 92 4.6 创建表单搜索Web活动 97 4.7 将网页活动报表链接至表单 101 4.8 显示访客地理分布图 105 4.9 计划仪表盘的PDF交付 109 4.10 小结 112 第5章 智能拓展——数据模型和透视 113 5.1?简介 113 5.2?为Web访问日志创建数据模型 115 5.3?为应用程序日志创建数据模型 121 5.4 加速数据模型 126 5.5 透视总交易量 129 5.6 根据地理位置透视购买量 134 5.7 透视响应最慢的网页 139 5.8 用透视图显示最多的错误代码 144 5.9 小结 145 第6章 深入挖掘——高级搜索 146 6.1 简介 146 6.2 计算网站平均会话时间 147 6.3 计算多层Web请求的平均执行时间 152 6.4 显示最大并发结账 157 6.5 分析Web请求之间的关系 161 6.6 预测网站流量大小 164 6.7 寻找数量反常的Web请求 168 6.8 识别潜在的会话欺骗 172 6.9 小结 175 第7章 丰富数据——查找和工作流程 176 7.1 简介 176 7.2 查询产品编码描述 177 7.3 标记可疑IP地址 183 7.4 创建会话状态表 187 7.5 在IP地址中添加主机名 190 7.6 为给定的IP地址搜索ARIN 192 7.7 为给定错误触发谷歌搜索 196 7.8 为应用程序错误创建凭证 200 7.9 从外部数据库查询库存 204 7.10 小结 211 第8章 抢先一步——创建警报 212 8.1 简介 212 8.2 警告异常网页响应时间 214 8.3 警告实时结账过程中的错误 218 8.4 警告异常用户行为 225 8.5 警告失败并触发脚本响应 229 8.6 警告预计销售量超出库存量 232 8.7 小结 238 第9章 加速智能数据汇总 239 9.1 简介 239 9.2 计算每小时会话及完成交易的数量 241 9.3 按城市回填购买数量 247 9.4 按时间顺序显示并发会话最大数量 254 9.5 小结 259 第10章 更进一步——自定义、Web框架、REST API和SDK 260 10.1 简介 260 10.2 自定义应用程序的导航 261 10.3 添加网络点击量的力导向图 265 10.4 添加产品购买量的日历热图 273 10.5 远程查询Splunk的REST API以获取唯一页面浏览量 278 10.6 创建Python应用程序返回唯一IP地址 280 10.7 创建自定义搜索命令来格式化产品名称 284 10.8 小结 288
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值