idea@linuxce.cn
Cont

有任何疑问?

010-82482839

玩转usbserver之usbserver日志报警

一、graylog 介绍

graylog是一个简单易用、功能较全面的日志管理工具,graylog也采用Elasticsearch作为存储和索引以保障性能,MongoDB用来存储少量的自身配置信息,master-node模式具有很好的扩展性,UI上自带的基础查询与分析功能比较实用且高效,支持LDAP、权限控制并有丰富的日志类型和标准(如syslog,GELF)并支持基于日志的报警。   

二、usbserver 借助graylog 能实现哪些功能

借助graylog 强大的收集和分析能力,usbserver 实现了如下功能


1、基础日志功能


1.1 ukey 的插入/拔出,连接/断开,使用中发送/接收的详细数据包


1.2 客户端实际ukey的连接,断开状态的变化


1.3 集中管理的用户登录/退出,使用ukey 的记录


2、定制分析能力


在基础日志之上,借助graylog 强大的查询分析能力,可以定制实现


2.1 ukey 断线报警,断线信息可通过短信,邮件发送,或者集成到钉钉,企业微信等用户自己的系统


2.2 痕迹分析,记录U盾的全部使用痕迹,可供查询


2.3 行为统计分析:根据用户场景设备分析条目,对人员行为进行分析


2.4风险预警:根据设置的预警条件触发预警信息推送


2.5 审计功能,根据用户的登录,使用ukey 的记录,对正常申请使用、违规超时使用、不合规使用进行审计


三、graylog 配置

graylog 安装见附录,安装完成后,我们配置12201 端口作为输入

点击system->inputs, 选择select input->GELF HTTP(GELF UDP)->lanch new input,端口都选择在12201

usbserver 配置


3.1客户端usb over network client配置

客户端没有配置界面,需要通过api 接口进行配置


安装最新版本的usb专业客户端,启动专业客户端



专业客户端开通了8001 端口作为配置端口,在浏览器中打开

http://localhost:8001


在调试界面修改接口为/api/setting/usbconfig

{"graylog_server":"udp://192.168.2.238:12201"}

其中192.168.2.238修改为服务器ip, 12201 是端口


然后退出重新启动客户端



3.2集中管理配置

打开管理后台,admin/config/ofcsetting




通过nacos 配置



3.3 服务器端配置

首先授权开通了日志功能



在日志管理配置上面的参数



附录 graylog 安装

用docker-compose 安装最方便,docker-compose.yml 配置如下,安装完成后通过浏览器http://ip:9000访问


  1. version: '3'

  2. services:

  3. # MongoDB: https://hub.docker.com/_/mongo/

  4.   mongo:

  5.     image: mongo:5.0.13

  6.     container_name: graylog_mongo

  7.     networks:

  8.     - graylog

  9. # Elasticsearch: https://www.elastic.co/guide/en/elasticsearch/reference/7.10/docker.html

  10.   elasticsearch:

  11.     image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.10.2

  12.     container_name: graylog_elasticsearch

  13.     environment:

  14.       - http.host=0.0.0.0

  15.       - transport.host=localhost

  16.       - network.host=0.0.0.0

  17.       - "ES_JAVA_OPTS=-Dlog4j2.formatMsgNoLookups=true -Xms512m -Xmx512m"

  18.     ulimits:

  19.      memlock:

  20.       soft: -1

  21.       hard: -1

  22.     deploy:

  23.       resources:

  24.         limits:

  25.           memory: 1g

  26.     networks:

  27.       - graylog

  28. # Graylog: https://hub.docker.com/r/graylog/graylog/

  29.   graylog:

  30.     image: graylog/graylog:6.0.2

  31.     container_name: graylog

  32.     volumes:

  33. # Mount local configuration directory into Docker container

  34.       - ./config:/usr/share/graylog/data/config

  35.     environment:

  36. # CHANGE ME (must be at least 16 characters)!

  37.       - GRAYLOG_PASSWORD_SECRET=somepasswordpepper

  38. # Password: admin

  39.       - GRAYLOG_ROOT_PASSWORD_SHA2=8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918

  40.       - GRAYLOG_HTTP_EXTERNAL_URI=http://127.0.0.1:9100/

  41.     entrypoint: /usr/bin/tini -- wait-for-it elasticsearch:9200 --  /docker-entrypoint.sh

  42.     networks:

  43.       - graylog

  44.     restart: always

  45.     depends_on:

  46.       - mongo

  47.       - elasticsearch

  48.     ports:

  49. # Graylog web interface and REST API

  50.       - 9000:9000

  51. # Syslog TCP

  52.       - 1514:1514

  53. # Syslog UDP

  54.       - 1514:1514/udp

  55. # GELF TCP

  56.       - 12201:12201

  57. # GELF UDP

  58.       - 12201:12201/udp

  59. networks:

  60.   graylog:

  61.     driver: bridge

————————————————

Baidu
map