Splunk Enterprise是一款专业的大数据分析软件,可以可收集、索引和利用所有应用程序、服务器和设备(物理、虚拟和云中)生成的快速移动型计算机数据 。从一个位置搜索并分析所有实时和历史数据。小编还提供了详细的Splunk安装配置教程,可以参考哦!
Splunk安装配置教程
0x02 环境准备
Splunk索引器
6.3.3版本,IP为10.2.1.157
Splunk转发器
Linux&windows的6.3.3版本
0x03 索引器配置
索引器端需要配置监听端口,以便接收从转发器端发来的日志文件等。在“设置——转发和接收——接收数据”中配置监听9997端口
另外索引器默认的管理端口是8089,无需配置。
0x04 Windows转发器配置
准备工作splunk转发器下载地址
https://www.splunk.com/page/previous_releases/universalforwarder
需要在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。
从内网服务器下载压缩包:
#!shellwget 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服务器正遭受暴力的威胁。
Splunk免费版功能:
1、Index(索引)
IT人员往往在管理IT Data会面临因厂商IT Data format变更时,与老旧设备、应用程序因稽核需求而必须产出分析报告,现有的Log Management无法立即支持或无法辨识。Splunk具备多样且弹性的数据搜集方法,可以检索各种型态的IT data,不限定IT Data format,并收集来自各种不同的应用系统和网络设备。Splunk能够进一步监控文件系统中设定配置的变更,做变更管理,更可链接各种网络通讯端口(Ports)去接收Syslog、SNMP和来自其他各式各样网络装置的数据。
2、Search(搜索)
Splunk具备快速自定的各种型态搜寻,而不是只有固定几种的字段,不需要指定数据的格式(format),更可结合时间与关键词进行搜寻,呈现出清楚的搜寻结果,使用上就像Google一样的直观易用。
·键入关键词后任意搜寻既时的在线查询,立即产生长时间结果
·用交互比对查询,收敛事件范围
·用时间、关键词与复杂流程拼凑关连事件
3、Alert(警报通知)
Splunk能够定期自动执行,并依据搜寻结果发出各项警示通知,可以透过Email、RSS或SNMP等方式链接其他管理接口,可触发执行自行定义的因应方式,例如重新启动应用程序、系统或网络设备。
·Email、RSS、SNMP发送警告
·可制订不连续时间启动自动搜寻并发送警告
·可以呼叫 script 延伸应用
4、Report(报告)
Splunk提供强大的报表能力,能够将搜寻结果以各项清晰的图表呈现,更可弹性化地产制出组织和机构管理阶层所想要的报告内容。
·无须透过其他工具可直接产出报表
·11种报表格式,如直方图、线性图、分区图、圆饼图、单点图…等
·可双维与多维度分析报表
皆为动态报表可随时点选并再次搜寻
·种报表运算方式,强化报表可看性
·报表可随时转换为仪表版模式
5、Share(资源共享)
由各种设备所产生的IT data是相当枯燥乏味的,透过Splunk可将它转化为切实可用的重要IT信息,并且能为任何人所用,不需要太多艰深的知识即可找出想要的信息。
搜寻报表转为监控仪表版,可经由权限控管分享信息接口搜寻分析可储存后,分享给特定人员信息搜寻可以收敛至关键词分享搜寻,或只授予部分变更权限
6、Secure(安全功能)
组织和机构的IT信息其重要性不言可喻,Splunk可整合组织和机构既有的认证系统进行安全管控,确保数据在存取、分析和稽核时不会破坏数据的完整性。
·用户联机与数据访问权限控制·
·IT Data 联机加密与压缩
·数据库加密与压缩
·不变更原始数据的完整性
Splunk免费版特色:
1、多平台支持
Splunk是一个可以在所有主流操作系统上运行的独立软件包 - 只需选择您的平台,然后下载并安装即可。您需要处理和运行的是用户使用的 Web 界面,以及用于索引计算机数据的引擎。
目前Splunk支持的平台有Windows XP, Vista, 7, and 8 (32-bit/64-bit)/Windows Server 2003, 2003 R2, 2008, and 2008 R2 (32-bit/64-bit)、2.6+ kernel Linux distributions(32-bit/64-bit)、Solaris(8,9,10,11)、OSX(10.5,10.6,10.7)、FreeBSD 7,8(32-bit/64-bit)、AIX (5.3,6.1,7.1) 、HP-UX(11i v2,11i v3).
2、从任意源索引任意数据
Splunk 可以从任何源实时索引任何类型的计算机数据。可以在 Splunk 中指向您的服务器或网络设备的系统日志、设置 WMI 轮询、监视实时日志文件,并能够监视您的文件系统或 Windows 注册表中的更改,或安排脚本获取系统指标。Splunk 可以索引您的所有机器数据,而无需购买、编写或维护任何特定的分析器或适配器。原始数据和丰富索引均存储在高效、已压缩的、基于文件系统的数据存储中,并提供可选数据签名和数据的完整性审核。
3、从远程系统转发数据
在无法通过网络提供所需数据,或安装了 Splunk 的服务器上看不见所需数据的情况下,可以部署 Splunk Forwarder。Splunk forwarder 为成千上万的端点提供安全、分布式实时全局数据收集。它们可以监视本地应用程序日志文件、捕获有关时间表的状态命令输出、获取来自虚拟或非虚拟来源的性能指标,或监控配置、权限和属性变化的文件系统。它们都是属于可以快速部署的轻量级服务器,而且不会产生任何额外费用。
4、关联复杂事件
借助 Splunk,您可以跨许多数据来源关联整个工作环境中的复杂事件。Splunk 支持五种关联类型。基于时间的关联,用于根据时间、接近性或距离来确定关系。基于交易的关联,用于跟踪构成单次交易的一系列相关事件,进而评估时间长度、状态或进行其它分析。子搜索,用于获取其中一个搜索的结果并在其它搜索中使用这些结果。查找,用于关联 Splunk 以外的外部数据来源。连接,用于支持类似 SQL 的内部和外部连接。关联 Splunk 中的事件有助于从机器数据中获得更丰富的分析和洞察力,为 IT 和业务提供更好的可见性和智能。
5、专为大型数据构建
使用 Splunk ,每天可收集和索引成千上万太字节的数据。其可扩展性体系结构基于 MapReduce,因此,随着日常数据量和数据来源不断增长,您只需添加更多商品服务器即可扩展效能。自动负载平衡可以优化工作负载和响应时间,并提供内置故障转移机制。开箱即用的报告和分析功能可避免部署第三方报告工具的需要。还可以配置 Splunk 使用 SAN 或其它存储设备,以满足长期存储需求。
6、在整个数据中心扩展
Splunk 分布式体系结构可让您在一个数据中心跨多个部署进行搜索,或在您的所有数据中心进行全局搜索。借助基于角色的访问,您可以控制指定用户的搜索将要跨越的范围。区域用户可以查看区域系统的数据,而企业范围内用户则可以查看所有数据中心的数据。Splunk 愿景是让每一位已授权员工都能够看到他们需要的计算机数据;并将数据用于调查、报告和仪表板或分析,以便不断提高 IT 运营并获得有价值的业务洞察力。花几分钟时间安全连接您的 Splunk 安装,能让您设计一个可管理的企业数据结构。
7、提供角色型的安全性
从各个方面来说,Splunk 均可谓是一种强大的安全模型。各项 Splunk 交易均会得到验证,其中包括通过 Web 用户界面和命令行接口执行的用户活动,以及通过 Splunk API 执行的系统活动。使用一整套按用户类型来限制功能的记录控制点,您可以自己为 Splunk 用户定义角色。这些精细的访问控制可以限制搜索、警报、报告、仪表板以及不同 Splunk 角色可以查看的视图。Splunk 还可以集成兼容 LDAP 的外部目录服务器和 Active Directory 服务器,以执行企业范围内的安全策略。此外,还提供单一登录集成,以启动对用户凭据的传递身份验证。由于进行故障排除、调查安全事件和证明合规所需的全部数据都保存在 Splunk 中,您可以严格限制访问生产服务器。