Linux firewalld开启日志审计功能(2)

在Firewalld防火墙中启用和配置logdenied选项,记录被拒绝的数据包(等同于开启日志功能)

效果展示:

1.开启日志记录功能

复制代码
firewall-cmd --set-log-denied=unicast

#重新加载生效配置

复制代码
firewall-cmd --reload

2.配置rsyslog捕获日志

##Rsyslog可以用来捕获日志,并将其重定向到指定文件中

复制代码
cat <<END>> /etc/rsyslog.d/firewalld.conf

:msg,contains,"_DROP" /var/log/firewalld.log

& stop

:msg,contains,"_REJECT" /var/log/firewalld.log

& stop

END

#重启使其生效

复制代码
systemctl restart rsyslog

3.审计日志

##查看日志发现日志条目太长了,并且数量也多很难统计出有效信息,所以需要借助脚本过滤出提取有效信息

(1)添加过滤日志脚本

复制代码
cat <<END>> /usr/local/bin/firewall-log
#!/bin/bash
PH=/tmp/.deny_analyze

echo '===> firewalld拦截信息日志 <==='
echo
echo  "拒绝次数 IP地址/端口"
cat /var/log/firewalld.log | awk '{print $10"="$17":"$19}' | grep -vE "SRC=0000*|SRC=fe80*" | grep DPT >$PH
cat /var/log/firewalld.log | awk '{print $10"="$18":"$20}' | grep -vE "SRC=0000*|SRC=fe80*" | grep DPT >>$PH
cat $PH | awk -F= '{gsub("PROTO","协议",$3);gsub("DPT","",$4);print $2"->"$3"/"$4$5}' | sort -nr | uniq -c | sort -nr | head -10
END

(2)添加可执行权限

复制代码
chmod +x /usr/local/bin/firewall-log

4.尝试运行查看日志命令

复制代码
firewall-log
相关推荐
小宇的天下1 分钟前
Calibre 3Dstack --每日一个命令days8【connected】(3-8)
运维·服务器·性能优化
ICT系统集成阿祥3 分钟前
服务器网卡绑定(bond)7种模式详解
运维·服务器·bond·网卡绑定·服务器链路聚合
wulalalalalalalal4 分钟前
Linux 内网服务器通过代理访问外网
linux·运维·服务器
stevenzqzq6 分钟前
Android Studio Logcat 基础认知
android·ide·android studio·日志
C_心欲无痕6 分钟前
ts - 模板字面量类型与 `keyof` 的魔法组合:`keyof T & `on${string}`使用
linux·运维·开发语言·前端·ubuntu·typescript
fy zs8 分钟前
网络编程套接字
linux·服务器·网络·c++
乾元11 分钟前
无线定位与链路质量预测——从“知道你在哪”,到“提前知道你会不会掉线”的网络服务化实践
运维·开发语言·人工智能·网络协议·重构·信息与通信
望眼欲穿的程序猿15 分钟前
基于Linux&MacOS 开发Ai8051U
linux·运维·macos
飞飞传输16 分钟前
适配信创环境的传输系统推荐:助力企业数据安全合规传输!
大数据·运维·安全
OpsEye17 分钟前
Redis 内存碎片的隐形消耗——如何用 memory purge 命令释放空间?
运维·网络·数据库·redis·缓存·内存·监控