在GrayLog的marketplace上有搜到關于Fail2ban日志Grok以及Pipeline的套件包
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIjBXPt9mcm9TZykzY3ImYmNTZ4MTO2EDOiJWO0EWY4I2MxUTMhJTNy8CXwsWO0EHbyomdx1Sat42YtM3b09CXul2ZpJ3bvwVbvNmLn1WavFWa0V3b05iNyA3Lc9CX6MHc0RHaiojIsJye.jpg)
(圖檔可點選放大檢視)
最後可以實作如下效果
結合我之前寫的文章(點選連結檢視原文章)
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
cd /etc/fail2ban/
cp fail2ban.conf fail2ban.local
cp jail.conf jail.local
vim jail.local
修改如下幾個地方
ignoreip = 127.0.0.1/8 ::1
bantime = 300
findtime = 300
maxretry = 8
[sshd]配置處添加如下一行
enabled = true
啟動fail2ban服務
systemctl start fail2ban.service
systemctl enable fail2ban.service
檢視日志,并觸發ssh暴力破解登入日志
tail -f /var/log/fail2ban.log
fail2ban-client status
fail2ban-client status sshd
二、安裝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
- 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
- 3、建立token
例如token為12fet46c82h8r9vlfjh8jqi8kbr2nlf6hdjd4l9rkdf648na2rle
- 4、修改sidecar.yml
cp /etc/graylog/sidecar/sidecar.yml /etc/graylog/sidecar/sidecar.yml_bak
vim /etc/graylog/sidecar/sidecar.yml
修改成如下配置
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
- 5、啟動sidecar
graylog-sidecar -service install
systemctl restart graylog-sidecar.service
systemctl status graylog-sidecar.service
三、Graylog-Server上配置sidecar
- 1、建立filebeat類型的log采集配置
配置Input(Beat類型)
并添加一個固定字段 log_application 值設為fail2ban
- 2、防火牆開啟5044/TCP端口
firewall-cmd --permanent --zone=public --add-port=5044/tcp
firewall-cmd --reload
- 3、建議單獨配置indices和Stream,這樣友善搜尋
四、導入Fail2ban的套件包并配置Geo
注意:Pipelines中連接配接的Stream
配置GeoIP
五、配置DashBoard
可以看到日志已經拆解成很多字段,友善做日志分析與統計
最後的效果如下
總結:
1、配置上有很多小細節需要注意,例如
2、GrayLog MarketPlace上有許多優秀的套件