前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >开源堡垒机JumpServer的日志接入到Graylog并实现钉钉机器人告警

开源堡垒机JumpServer的日志接入到Graylog并实现钉钉机器人告警

作者头像
yuanfan2012
发布2024-04-02 16:55:15
1090
发布2024-04-02 16:55:15
举报
文章被收录于专栏:WalkingCloudWalkingCloud

关于JumpServer的日志如何进行Syslog外发参考如下两个链接

代码语言:javascript
复制
https://docs.jumpserver.org/zh/v3/guide/storages/?h=syslog#31-syslog
https://kb.fit2cloud.com/?p=123

一、Graylog日志接入配置简单介绍

1、新建用于存JumpServer日志的Indices索引

2、新建Syslog UDP类型的Inputs

代码语言:javascript
复制
firewall-cmd --permanent --zone=public --add-port=2514/udp
firewall-cmd --reload

3、创建JumpServer单独的Stream

  • Index Set要选上面创建的存JumpServer日志的Indices索引

要勾选Remove matches from ‘Default Stream’

  • Stream Rules

选择Type为 match input

二、JumpServer后台开启Syslog

1、修改 JumpServer 的配置文件

JumpServer 的配置文件的默认存储位置位于:/opt/jumpserver/config/config.txt

JumpServer 中需要添加的配置项如下所示:

代码语言:javascript
复制
#配置 syslog
SYSLOG_ENABLE=true
SYSLOG_ADDR=192.168.31.194:2514  # Syslog 服务器的IP以及端口
SYSLOG_FACILITY=local2  #根据 Syslog 配置文件的配置

2、重启 JumpServer

修改 JumpServer 配置文件后需要重启 JumpServer 以加载配置项。

代码语言:javascript
复制
jmsctl restart

3、登录 JumpServer 服务生成一条登录日志,查看 Syslog 服务器中是否有输出

三、配置Graylog Extractor实现字段提取

1、在Stream日志查询界面,message右键Create Extractor

类型可以为Split&Index

Split by 设置为 - {

Target Index 1

Store as field :jumpserver_log_type

2、同样再创建一个Split&Index类型的Extractor

用于提取后半段json格式日志

效果如下

3、接下来针对提取到的日志进行json格式的提取

jumpserver_log_jsonmessage字段进行json提取

效果如下

四、配合PrometheusAlert实现钉钉告警

场景如下:例如执行rm -rf 这样的命令虽然已经堡垒机使用命令过滤的方式拦截掉了,这时如果能钉钉告警通知运维管理人员这样更高效 运维管理员不用实时去审计台查看命令审计情况

配置步骤就不详细截图了

代码语言:javascript
复制
PrometheusAlert上的告警模板内容,可以参考解决
## [堡垒机告警信息](.check_result.Event.Source)
### <font color=#FF0000>告警描述:{{.event_definition_description}}</font>
{{ range $k,$v:=.backlog }}
##### <font color=#67C23A>告警产生时间</font>:{{GetCSTtime $v.timestamp}}
##### <font color=#67C23A>告警详细描述</font>:<font color=#FF0000>堡垒机账号:{{$v.fields.user}} </font>登录服务器<font color=#FF0000>{{$v.fields.asset}}</font>执行了可能为高危的命令,若为正常操作,请忽略此条告警!
##### <font color=#67C23A>用户登录IP</font>:<font color=#FF0000>{{$v.fields.remote_addr}}</font>
##### <font color=#67C23A>具体操作命令</font>:<font color=#FF0000>{{$v.fields.input}}</font>
##### <font color=#67C23A>堡垒机采取的动作</font>:<font color=#FF0000>{{$v.fields.risk_level_label}}</font>
##### <font color=#67C23A>告警服务器名称</font>:<font color=#FF0000>{{$v.fields.asset}}</font>
##### <font color=#67C23A>告警原始日志</font>:{{$v.fields.jumpserver_log_jsonmessage}}
{{end}}

最终钉钉机器人的告警效果如下

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-03-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 WalkingCloud 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Graylog日志接入配置简单介绍
    • 1、新建用于存JumpServer日志的Indices索引
      • 2、新建Syslog UDP类型的Inputs
        • 3、创建JumpServer单独的Stream
        • 二、JumpServer后台开启Syslog
          • 1、修改 JumpServer 的配置文件
            • 2、重启 JumpServer
              • 3、登录 JumpServer 服务生成一条登录日志,查看 Syslog 服务器中是否有输出
              • 三、配置Graylog Extractor实现字段提取
                • 1、在Stream日志查询界面,message右键Create Extractor
                  • 2、同样再创建一个Split&Index类型的Extractor
                    • 3、接下来针对提取到的日志进行json格式的提取
                    • 四、配合PrometheusAlert实现钉钉告警
                    相关产品与服务
                    堡垒机
                    腾讯云堡垒机(Bastion Host,BH)可为您的 IT 资产提供代理访问以及智能操作审计服务,为客户构建一套完善的事前预防、事中监控、事后审计安全管理体系,助力企业顺利通过等保测评。
                    领券
                    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档