CentOS查詢防火墻日志分析
一、防火墻日志定位與基本操作
CentOS系統(tǒng)默認(rèn)使用firewalld
或iptables
作為防火墻工具,日志存儲(chǔ)位置因配置而異:
1.1 firewalld日志路徑
# 查看firewalld實(shí)時(shí)日志
journalctl -u firewalld --since "2024-01-01" --until "2024-01-02"
# 默認(rèn)日志文件路徑
/var/log/firewalld
1.2 iptables日志路徑
# 查看內(nèi)核日志(需啟用iptables日志記錄)
grep "IPTables" /var/log/messages
# 動(dòng)態(tài)跟蹤日志更新
tail -f /var/log/messages | grep -i DROP
二、日志深度分析與過(guò)濾技巧
2.1 關(guān)鍵字段過(guò)濾
# 查詢被拒絕的流量記錄
journalctl -u firewalld | grep -E 'DROP|REJECT'
# 統(tǒng)計(jì)來(lái)源IP訪問(wèn)頻率
cat /var/log/messages | grep SRC= | awk '{print $10}' | sort | uniq -c | sort -nr
2.2 時(shí)間范圍檢索
# 查詢指定時(shí)間段的日志
journalctl -u firewalld --since "09:00" --until "17:00"
# 結(jié)合時(shí)間戳分析攻擊模式
grep "$(date +'%b %d')" /var/log/secure | awk '/Failed/{print $11}' | sort | uniq -c
三、自動(dòng)化日志處理方案
3.1 日志分析腳本示例
#!/bin/bash
# 生成當(dāng)日攻擊統(tǒng)計(jì)報(bào)表
LOG_DATE=$(date +%Y%m%d)
grep "DST=" /var/log/firewalld > /tmp/firewall_${LOG_DATE}.log
awk '{print $10}' /tmp/firewall_${LOG_DATE}.log | cut -d= -f2 | sort | uniq -c > report.txt
3.2 集成監(jiān)控工具
使用fail2ban
實(shí)現(xiàn)自動(dòng)封禁:
# 安裝配置示例
yum install -y fail2ban
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
systemctl enable --now fail2ban
四、安全運(yùn)維建議
- 配置日志輪轉(zhuǎn)策略避免存儲(chǔ)溢出
- 對(duì)高頻訪問(wèn)IP進(jìn)行信譽(yù)庫(kù)比對(duì)
- 建立日志異常報(bào)警機(jī)制
- 定期更新防火墻規(guī)則庫(kù)