Linux防暴力破解工具Fail2ban的日志接入到GrayLog并实现GeoIP展示

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Linux防暴力破解工具Fail2ban的日志接入到GrayLog并实现GeoIP展示

在GrayLog的marketplace上有搜到关于Fail2ban日志Grok以及Pipeline的套件包


640.png

640.png


最后可以实现如下效果


640.png


结合我之前写的文章(点击链接查看原文章)

1、CentOS7云主机部署Fail2ban阻断SSH暴力破解
2、开源日志管理系统Graylog之Sidecar功能实践


决定进行尝试实践一下


环境如下


1、CentOS7 webserver 192.168.31.211作为日志源,安装fail2ban+graylog-sidecar+filebeat

2、GraylogServer 192.168.31.127导入Fail2ban的ContentPack

具体步骤如下:


一、安装并配置failban


curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum install fail2ban -y

640.png

cd /etc/fail2ban/
cp fail2ban.conf fail2ban.local
cp jail.conf jail.local
vim jail.local 


640.png


修改如下几个地方


ignoreip = 127.0.0.1/8 ::1
bantime  = 300
findtime  = 300
maxretry = 8


[sshd]配置处添加如下一行


enabled = true

640.png

640.png

启动fail2ban服务


systemctl start fail2ban.service 
systemctl enable fail2ban.service


640.png


查看日志,并触发ssh暴力破解登录日志


640.png


tail -f /var/log/fail2ban.log 
fail2ban-client status
fail2ban-client status sshd

640.png


二、安装sidecar+filebeat


  • 1、graylog-sidecar安装


rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-sidecar-repository-1-2.noarch.rpm
yum install graylog-sidecar -y


640.png

  • 2、filebeat安装


curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.1.0-x86_64.rpm
rpm -vi filebeat-8.1.0-x86_64.rpm



640.png


  • 3、创建token


例如token为12fet46c82h8r9vlfjh8jqi8kbr2nlf6hdjd4l9rkdf648na2rle


640.png

640.png


  • 4、修改sidecar.yml


cp /etc/graylog/sidecar/sidecar.yml /etc/graylog/sidecar/sidecar.yml_bak
vim /etc/graylog/sidecar/sidecar.yml


640.png


修改成如下配置


1)#server_url: "http://127.0.0.1:9000/api/"
修改为http://192.168.31.127:9000/api/
2)server_api_token: "12fet46c82h8r9vlfjh8jqi8kbr2nlf6hdjd4l9rkdf648na2rle"
3)#node_name: ""改为
node_name: "XXXX_IP"
4)取消#update_interval: 10的注释
update_interval: 10
5)取消#send_status: true 的注释
send_status: true


640.png


  • 5、启动sidecar


graylog-sidecar -service install
systemctl restart graylog-sidecar.service
systemctl status graylog-sidecar.service


640.png


640.png


三、Graylog-Server上配置sidecar


  • 1、创建filebeat类型的log采集配置


640.png


640.png

image.png


配置Input(Beat类型)


640.png


并添加一个固定字段 log_application 值设为fail2ban


640.png


  • 2、防火墙开启5044/TCP端口


firewall-cmd --permanent --zone=public --add-port=5044/tcp
 firewall-cmd --reload


  • 3、建议单独配置indices和Stream,这样方便搜索


640.png

640.png


640.png


640.png



四、导入Fail2ban的套件包并配置Geo


640.png


640.png


注意:Pipelines中连接的Stream


640.png

640.png


配置GeoIP


640.png

640.png


五、配置DashBoard


640.png

可以看到日志已经拆解成很多字段,方便做日志分析与统计


最后的效果如下


640.png640.png


总结:


1、配置上有很多小细节需要注意,例如


640.png



2、GrayLog MarketPlace上有许多优秀的套件



640.png


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
23天前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
48 5
Linux系统之安装Ward服务器监控工具
|
5天前
|
监控 Linux 开发者
如何在 Linux 中优雅的使用 head 命令,用来看日志简直溜的不行
`head` 命令是 Linux 系统中一个非常实用的工具,用于快速查看文件的开头部分内容。本文介绍了 `head` 命令的基本用法、高级用法、实际应用案例及注意事项,帮助用户高效处理文件和日志,提升工作效率。
17 7
|
25天前
|
JSON JavaScript Linux
Linux系统之安装cook菜谱工具
【10月更文挑战第15天】Linux系统之安装cook菜谱工具
34 2
Linux系统之安装cook菜谱工具
|
12天前
|
存储 运维 监控
开源日志Graylog
【10月更文挑战第21天】
52 8
|
14天前
|
运维 Prometheus 监控
特定用途的日志分析工具
【10月更文挑战第20天】
31 5
|
14天前
|
存储 机器学习/深度学习 传感器
商业日志分析工具
【10月更文挑战第20天】
35 5
|
14天前
|
存储 运维 监控
开源日志分析工具
【10月更文挑战第20天】
37 3
|
14天前
|
缓存 监控 Linux
Linux性能分析利器:全面掌握perf工具
【10月更文挑战第18天】 在Linux系统中,性能分析是确保软件运行效率的关键步骤。`perf`工具,作为Linux内核自带的性能分析工具,为开发者提供了强大的性能监控和分析能力。本文将全面介绍`perf`工具的使用,帮助你成为性能优化的高手。
55 1
|
14天前
|
缓存 监控 Linux
掌握Linux性能分析:深入探索perf工具
【10月更文挑战第26天】
19 1
|
6月前
|
存储 监控 Ubuntu
Linux系统之GoAccess实时Web日志分析工具的基本使用
【5月更文挑战第22天】Linux系统之GoAccess实时Web日志分析工具的基本使用
200 1