ELK接收paloalto防火墙威胁日志并定位城市展示

ELK接收paloalto防火墙威胁日志并定位城市展示

一、准备环境:

搭建好的ELK环境

palo alto防火墙(企业用的)

二、安装logstash并做好过滤

将palo alto日志打到一台centos的rsyslog上并用logstash监听514端口

这里用到了logstash的两个模块grok(分词)还有http(请求第三方api)

百度地图的api自行到官网申请https://lbsyun.baidu.com/apiconsole/key#/home

配置如下:

input{ syslog{ type => "syslog" port => 514 } } filter { grok { match => ["message", "%{DATA:Domain}\,%{DATA:Receive-Time}\,%{DATA:Serial}\,%{DATA:Type}\,%{DATA:Threat-Type}\,%{DATA:Conf ig-Version}\,%{DATA:Generate-Time}\,%{IP:Source-address}\,%{IP:Destination-address}\,%{DATA:NAT-Source-IP}\,%{DATA:NAT-Destination -IP}\,%{DATA:Rule}\,%{DATA:Source-User}\,%{DATA:Destination-User}\,%{DATA:Application}\,%{DATA:Virtual-System}\,%{DATA:Source-Zone }\,%{DATA:Destination-Zone}\,%{DATA:Inbound-Interface}\,%{DATA:Outbound-Interface}\,%{DATA:Log-Action}\,%{DATA:Time-Logged}\,%{DAT A:Session-ID}\,%{DATA:Repeat-Count}\,%{DATA:Source-Port}\,%{DATA:Destination-Port}\,%{DATA:NAT-Source-Port}\,%{DATA:NAT-Destinatio n-Port}\,%{DATA:Flags}\,%{DATA:IP-Protocol}\,%{DATA:Action}\,%{DATA:URL}\,%{DATA:Threat-Content-Name}\,%{DATA:Category}\,%{DATA:Se verity}\,%{DATA:Direction}\,%{DATA:Sequence-Number}\,%{DATA:Action-Flags}\,%{DATA:Source-Country}\,%{DATA:Destination-Country}\,%{ DATA:cpadding}\,%{DATA:contenttype}\,%{DATA:pcap_id}\,%{DATA:filedigest}\,%{DATA:cloud}\,%{DATA:url_idx}\,%{DATA:user_agent}\,%{DA TA:filetype}\,%{DATA:xff}\,%{DATA:referer}\,%{DATA:sender}\,%{DATA:subject}\,%{DATA:recipient}\,%{DATA:reportid}\,%{DATA:dg_hier_l evel_1}\,%{DATA:dg_hier_level_2}\,%{DATA:dg_hier_level_3}\,%{DATA:dg_hier_level_4}\,%{DATA:Virtual-System-Name}\,%{DATA:Device-Nam e}\,%{DATA:file_url}"] } http { body_format => "json" follow_redirects => false url => "http://api.map.baidu.com/location/ip?ak=我的AK&ip=%{Source-address}&coor=bd09ll" verb => "GET" headers => [ "Content-Type", "application/json" ] target_body => "address" } } output { elasticsearch { hosts => "xxxx:9200" user => "elastic" password => "passwd" index => "pa-threat-%{+yyyy.MM.dd}" } }

三、运行

这里建议自己选择合适的守护进程

使用systemctl start logstash可能会有问题,推荐supervisor守护进程
这边是我测试的使用nohup运行的,运行时一定要-f带上指定配置文件

nohup /usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/pa.conf >> /root/logstash-logs/logs 2>&1 &

四、结果

日志里就有请求的地址信息了,后面就可以自己做图表了

image-20210528102019981

五、注意点

更改logstash配置后fields会出现未知fields

根据下面步骤更新fields即可!

image-20210528102159936

image-20210528102210791

image-20210528102228227


__EOF__

本文作者带着泥土
本文链接https://www.cnblogs.com/obitoma/p/14821057.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   带着泥土  阅读(666)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗
点击右上角即可分享
微信分享提示

喜欢请打赏

扫描二维码打赏

了解更多