【日志审计】极易上手搭建自己日志采集服务器分析日志(winlogbeat+Elasticsearch+Kibana)

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: 【日志审计】极易上手搭建自己日志采集服务器分析日志(winlogbeat+Elasticsearch+Kibana)

00前言:


需求是小编需要采集windows 上面的系统日志,所以要搭建个日志采集系统

首先说下什么是ELK呢?


ELK 是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch、


Logstash 和 Kibana。


  • Elasticsearch 是一个搜索和分析引擎。
  • Logstash 是服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到诸如 Elasticsearch 等存储库中。
  • Kibana 则可以让用户在 Elasticsearch 中使用图形和图表对数据进行可视化。

640.png

不过小编采用的是winlogbeat + ES + Kibina的组合进行日志收集,优点就是轻量级,因为去掉了笨重的logstash, 占用资源更少。

640.png

如上图所示,该ELK框架由beats(这里我们采用winlogbeat)+elasticsearch+kibana构成,这个框架比较简单,入门级的框架。

01准备工作:


Centos7虚拟机一台作为服务端Windows 虚拟机一台作为客户端

640.png


各软件包下载好并上传到Centos7服务上/opt目录下


02关闭selinux:


临时关闭selinux:

获取当前selinux状态  getenforce      Enforcing为开启,Permissive为关闭

640.png

临时关闭:setenforce 0

640.png

永久关闭selinux:vim /etc/sysconfig/selinux

SELINUX=enforcing 替换为SELINUX=disabled

640.png

重启机器后后,运行命令sestatus

SELinux status :  disabled

640.png



03部署JDK:


首先进入/opt目录然后做如下操作


[root@localhost /]# tar zxvf jdk1.8.0_131.tar.gz[root@localhost /]# mv jdk1.8.0_131 /usr/[root@localhost /]# vim /etc/profile

添加


export JAVA_HOME=/usr/jdk1.8.0_131/export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/libexport PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin

640.png

[root@localhost /]# source /etc/profile[root@localhost /]#  java –version

640.png

这样JDK就安装好了



04部署Elasticsearch:


[root@localhost /]# tar xzf elasticsearch-5.3.0.tar.gz[root@localhost /]# mv elasticsearch-5.3.0 /usr/local/elasticsearch[root@localhost /]#  ll /usr/local/elasticsearch/

640.png

[root@localhost /]#  useradd  elk     创建用户[root@localhost /]#  chown -R elk /usr/local/elasticsearch/[root@localhost /]#  ll /usr/local/elasticsearch/

640.png


[root@localhost /]# vim  /etc/security/limits.conf

添加


* soft nofile 65536* hard nofile 65536

640.png


[root@localhost /]# vim /etc/security/limits.d/20-nproc.conf

添加


soft  nproc  2048

640.png


root@localhost /]# vi /etc/sysctl.conf

添加

640.png


[root@localhost /]# sysctl –p

640.png

注意:做完几步后 建议重启系统


[root@localhost /]# cd /usr/local/elasticsearch/config/[root@localhost config]# vim jvm.options

640.png

注释:如果你虚拟机是2G以上不需要改


[root@localhost config]# vim elasticsearch.yml

1.修改监听的网络地址为0.0.0.0

640.png

改成

640.png

2.开启监听的端口

640.png

去掉#

640.png

3. data,用于存放索引分片数据文件,logs,用于存放日志

640.png640.png


文件夹如果没有需要自己创建。注意文件夹创建好后chown –R elk data和logs下。


[root@localhost /]# su - elk       进入elk用户启动[elk@localhost ~]$ /usr/local/elasticsearch/bin/elasticsearch -d    启动[elk@localhost ~]$ tail -fn 50 /usr/local/elasticsearch/logs/elasticsearch.log

640.png

或看端口 9200  9300 是否启动了


[root@localhost elk]# netstat -ntlp|grep -E "9200|9300"

640.png

浏览器中输入:http://IP:9200测试是否正常(以下为正常)


640.png

05部署Kibana:


[root@localhost /]# tar xzf kibana-5.3.0-linux-x86_64.tar.gz[root@localhost /]# mv kibana-5.3.0-linux-x86_64 /usr/local/kibana[root@localhost /]#  cd /usr/local/kibana/config/[root@localhost config]# vim kibana.yml

1.修改监听的网络地址为0.0.0.0

640.png

改成

640.png

去掉#号(改成EC服务器的ip地址) 这台和EC在一起所以不用改 如果有对个分布式集群用,隔开

640.png

2.开启监听的端口

640.png

640.png


[root@localhost config]# cd ..[root@localhost kibana]# cd bin/  进入bin目录[root@localhost bin]#  nohup ./kibana &      后台启动 [root@localhost bin]# netstat -tnlp|grep -E "9200|9300|5601"

640.png

浏览器http://192.168.125.139:5601

640.png

至此服务端搭建完毕。


06部署Winlogbeat客户端:


1.首先把下载好的文件上传的客户端机器上

640.png

2.解压到C:\Program Files

640.png

3.安装winlogbeat服务

640.png

重新命名文件夹为winlogbeat

用管理员身份打开windows的 powershell

640.png

  • 运行以下命令来安装服务


C:\Users\Administrator> cd 'C:\Program Files\Winlogbeat'C:\Program Files\Winlogbeat> .\install-service-winlogbeat.ps1

640.png

如果在系统上禁用了脚本执行,则需要为当前会话设置执行策略以允许脚本运行。


PowerShell.exe -ExecutionPolicy UnRestricted -File .\install-service-winlogbeat.ps1.

640.png

安装好后即可在系统服务中看到了

640.png

然后启动服务

640.png

4.配置winlogbeat.yml文件

用winlogbeat收集日志,发送到elasticsearch
修改配置文件 :winlogbeat.yml
修改tags信息,因为winlogbeat没有ip自带,查看日志时不方便区分,顾在此字段中添加ip+mac

640.png

填写要输出到es的地址

640.png

修改此处即可

640.png

这里是要采集的日志类型,默认已配置好无需修改

5.重启服务

640.png

最后登录kibana配置winlogbeat索引查看获取的日志

640.png

640.png

可以看到已经接收到刚才开启winlogbeat服务的日志信息了

640.png

Tags中也有所填信息方便以后索引查看

640.png

至此实验完成。

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
27天前
|
存储 关系型数据库 数据库
【赵渝强老师】PostgreSQL的服务器日志文件
本文介绍了PostgreSQL数据库的物理存储结构,重点讨论了服务器日志文件。通过`pg_ctl`命令启动PostgreSQL实例时,使用`-l`参数指定日志文件位置,记录数据库启动、运行及关闭过程中的关键信息。附有相关视频讲解和日志文件示例。
|
7天前
|
存储 运维 监控
Linux--深入理与解linux文件系统与日志文件分析
深入理解 Linux 文件系统和日志文件分析,对于系统管理员和运维工程师来说至关重要。文件系统管理涉及到文件的组织、存储和检索,而日志文件则记录了系统和应用的运行状态,是排查故障和维护系统的重要依据。通过掌握文件系统和日志文件的管理和分析技能,可以有效提升系统的稳定性和安全性。
24 7
|
9天前
|
监控 安全 Linux
启用Linux防火墙日志记录和分析功能
为iptables启用日志记录对于监控进出流量至关重要
|
30天前
|
监控 应用服务中间件 定位技术
要统计Nginx的客户端IP,可以通过分析Nginx的访问日志文件来实现
要统计Nginx的客户端IP,可以通过分析Nginx的访问日志文件来实现
|
2月前
|
存储 JSON Java
ELK 圣经:Elasticsearch、Logstash、Kibana 从入门到精通
ELK是一套强大的日志管理和分析工具,广泛应用于日志监控、故障排查、业务分析等场景。本文档将详细介绍ELK的各个组件及其配置方法,帮助读者从零开始掌握ELK的使用。
|
2月前
|
存储 SQL 监控
|
2月前
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
412 30
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
21天前
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
|
3月前
|
XML JSON Java
Logback 与 log4j2 性能对比:谁才是日志框架的性能王者?
【10月更文挑战第5天】在Java开发中,日志框架是不可或缺的工具,它们帮助我们记录系统运行时的信息、警告和错误,对于开发人员来说至关重要。在众多日志框架中,Logback和log4j2以其卓越的性能和丰富的功能脱颖而出,成为开发者们的首选。本文将深入探讨Logback与log4j2在性能方面的对比,通过详细的分析和实例,帮助大家理解两者之间的性能差异,以便在实际项目中做出更明智的选择。
352 3
|
1月前
|
存储 监控 安全
什么是事件日志管理系统?事件日志管理系统有哪些用处?
事件日志管理系统是IT安全的重要工具,用于集中收集、分析和解释来自组织IT基础设施各组件的事件日志,如防火墙、路由器、交换机等,帮助提升网络安全、实现主动威胁检测和促进合规性。系统支持多种日志类型,包括Windows事件日志、Syslog日志和应用程序日志,通过实时监测、告警及可视化分析,为企业提供强大的安全保障。然而,实施过程中也面临数据量大、日志管理和分析复杂等挑战。EventLog Analyzer作为一款高效工具,不仅提供实时监测与告警、可视化分析和报告功能,还支持多种合规性报告,帮助企业克服挑战,提升网络安全水平。