如何查看Ubuntu Server环境下为空的snort.log日志文件
Ubuntu Server下Snort空snort.log问题解决方案
空snort.log的正常场景说明
- 如果你使用Snort默认的unified2二进制日志输出模式,仅在配置文件中配置了
output unified2: filename snort.log, limit 128这类规则,那么根目录下的snort.log本身就是占位文件,所有日志都会按大小/时间切割写入snort.log.xxxxxx格式的二进制文件,这种场景下snort.log为空属于正常情况,无需额外处理,直接读取切割后的日志文件即可。
如需生成可直接读取的纯文本snort.log,按以下步骤操作
- 编辑Snort主配置文件,默认路径为
/etc/snort/snort.conf,添加对应纯文本日志输出配置:- 若需要精简告警日志,添加
output alert_fast: snort.log - 若需要全量详细日志,添加
output alert_full: snort.log
- 若需要精简告警日志,添加
- 保存配置文件后重启Snort服务:
systemctl restart snort - 重启后触发的匹配规则的流量告警就会写入纯文本
snort.log,可直接用cat、tail等常用文本命令查看。
配置后snort.log仍为空的排查方案
- 检查日志目录权限:执行
chown snort:snort /var/log/snort/*修复Snort运行用户对日志目录的读写权限,执行后重启服务测试。 - 检查规则命中情况:构造测试流量验证是否有流量命中配置的Snort规则,无命中规则的流量自然不会产生日志写入。
- 检查服务运行状态:执行
systemctl status snort查看Snort服务是否正常运行,若服务报错退出,先排查启动报错原因修复后再验证日志写入。
内容的提问来源于stack exchange,提问作者Duy Dom
相关产品推荐
相关产品推荐

