环境准备和说明:

Logstatsh版本: 7.10.1 日志解析和过滤,收集客户端主机filebeat发过来的日志信息并做处理,然后转发给zabbix server

Zabbix 版本: 4.4(默认使用MySQL做数据库)

主机环境说明: CentOS7.x

Filbeat 版本: 7.10.1, 收集客户端主机的登录日志信息,主要是这个文件/var/log/secure

效果展示

部署和配置

这里不演示如何安装Zabbix Server安装部署过程,如有需要自行参考其他文档

1. Zabbix server所在主机安装Logstatsh (过程略,着重讲配置)

2. 配置Logstatsh和安装Zabbix 输入插件

#在线安装如果安装比较慢,可以考虑用离线安装的方式,下面附有离线包$ bin/logstash-plugin install logstash-output-zabbix#插件离线安装$ bin/logstash-plugin install file:///root/logstash-output-zabbix.zip离线包链接:https://share.weiyun.com/5cBP60be 密码:xet8eq$ cat /etc/logstash/conf.d/host-login-log.conf input {    beats {        host => "0.0.0.0"        port => "5044"        #codec => "json"    }}#定义过滤模块filter {#定义zabbix_key ,需与zabbix中监控项的键值一致#定义zabbix_host,zabbix server namemutate {  #host-login 是logstatsh处理完数据后添加的一个key,这个key在下面Zabbix配置需要用到  add_field => ["[@metadata][zabbix_key]","host-login"]  add_field => ["[@metadata][zabbix_host]","zabbix-ops"]  #引用字段合并成新字段  add_field => ["new_message","主机信息: %{[host][hostname]}(%{[host][ip]}) - 登录日志: %{message}"] }}output {    #stdout { codec => rubydebug }    #输出插件为zabbix    # zabbix_host  引用filter模块定义的zabbix_host值    # zabbix_server_host zabbix_server服务的host    # zabbix_server_port zabbix_server服务的端口,默认10051    # zabbix_key  引用filter模块定义的zabbix_key值    # zabbix_value 输出zabbix数据字段的名称,默认message    zabbix {      zabbix_host => "[@metadata][zabbix_host]"      zabbix_server_host => "10.2.6.204"      zabbix_server_port => "10051"      zabbix_key => "[@metadata][zabbix_key]"      zabbix_value => "new_message"    }}

3. 客户端主机安装Filebeat客户端 (过程略,着重讲配置)

其实可以是 Zabbix Agent所在主机,也可以是 一台只部署了Filebeat的机器

4. 配置Filebeat

$ vim filebeat.ymlfilebeat.inputs:- type: log  # Change to true to enable this input configuration.  enabled: true  # Paths that should be crawled and fetched. Glob based paths.  paths:    - /var/log/secure #CentOS7登录会话日志在这个文件下,CentOS6 也适用    #- c:\programdata\elasticsearch\logs\*  # Exclude lines. A list of regular expressions to match. It drops the lines that are  # matching any regular expression from the list.  #exclude_lines: ['^DBG']  # Include lines. A list of regular expressions to match. It exports the lines that are  # matching any regular expression from the list.  include_lines: ['Failed password'] #只收集登录错误的日志....

5. 启动Logstatsh和Filebeat(略...)

6. 配置Zabbix

  • 新建一个监控项

  • 配置触发器

7. 验证

©著作权归作者所有:来自51CTO博客作者BigQ2020的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. NSX-T3.0.1安装
  2. 基于Hadoop的58同城离线计算平台设计与实践
  3. CentOS7安装JDK包和Hadoop
  4. 你还不会安装Circos?其实就三步!!!
  5. 微博基于Flink的机器学习实践
  6. Prometheus监控系统 之 安装部署
  7. cp网站源码安装步骤详情
  8. 行业资讯 | Android WebView 致安卓应用闪退,mPaaS 助你规避这波
  9. 苹果macOS Big Sur可启动安装程序驱动器如何创建?

随机推荐

  1. Android(安卓)实用技巧 --- 命令godir
  2. ANDROID自动化测试工具:ROBOTIUM
  3. Android(安卓)第三方开源SwipeToDismiss:
  4. Android(安卓)Studio自动生成带系统签名
  5. Android(安卓)Camera 使用小结
  6. Android(安卓)事件传递机制
  7. Android插件技术——(一)动态加载jar
  8. android音频编辑之音频合成
  9. 使用TraceView进行方法跟踪
  10. android 自定义RadioButton样式