×

LAS日志审计推荐的采集软件NXLog入门说明
  

新手733603 196145人觉得有帮助

{{ttag.title}}
本帖最后由 新手733603 于 2021-1-22 17:11 编辑

文章来源我个人于一次对于Nxlog的使用需求,搜索未找到相应教程,在摸索中学会了nxlog的数据采集,特分享出来,希望能帮助初次接触并想要理解LAS日志采集的或者有采集日志需求的小伙伴。第一次发帖,对于行文和技术的不足之处,欢迎大家指教
----------------------------------正文分割线-----------------------------------


1.环境背景

按照等保要求,服务器的日志需要统一保存并审计,这里就得推荐下我们的LAS日志审计设备了;回到正文,一般对于linux下的日志采集使用的是rsyslog采集数据,但是rsyslog不方便采集中间件apache、tomcat等日志,而且对于数据库的日志也无法采集。这里就引出了我们的主角,日志采集神器:Nxlog

ps:本文环境皆是centos7


2.软件安装


这里用的是社区版,因为免费;下载centos7_64位安装包并上传到服务器中,或者在服务器可联网环境直接使用wget命令下载,如果提示命令不可用,请yum install wget安装wget

  1. wget https://nxlog.co/system/files/products/files/348/nxlog-ce-2.10.2150-1_rhel7.x86_64.rpm
复制代码
安装:

  1. rpm -ivh nxlog-ce-2.10.2150-1_rhel7.x86_64.rpm
复制代码
部分centos是最小化安装的,发现安装过程报错,缺少依赖包:

          #rpm -ivh nxlog-ce-2.10.2150-1_rhel7.x86_64.rpm
          Error:Failed dependencies:
              apr >= 1.2 isneeded by nxlog-ce-2.10.2150-1.x86_64
              libapr-1.so.0()(64bit)is needed by nxlog-ce-2.10.2150-1.x86_64
              libdbi >= 0.8.1is needed by nxlog-ce-2.10.2150-1.x86_64
                libdbi.so.0()(64bit)is needed by nxlog-ce-2.10.2150-1.x86_64
这里使用yum命令安装下即可:
  1. yum install apr libdbi -y
复制代码
安装完成继续运行rpm -ivh 安装nxlog。
到这基本软件安装完成,接下来则是配置软件,使他符合我们抓取日志的要求


3.nxlog配置文件



默认配置文件位置:/etc/nxlog.conf
默认日志文件位置:/var/log/nxlog/nxlog.log
首先备份配置文件,养成良好习惯避免乱改后不知道原来是怎么样的

  1. cp nxlog.conf nxlog.conf.back
复制代码
接着编辑文档

vi nxlog.conf



先不急,咱从上往下熟悉;首先是用户名用户组这一块建议删除,因为中间件日志默认只有root用户有读取权限,如果以nxlog用户去读取是无权限的,当然你也可以通过chmod命令改变文件权限,这里就不推荐了


编辑支持的扩展格式

  1. <Extension _json>
  2.     Module      xm_json
  3. </Extension>

  4. <Extension _syslog>
  5.     Module      xm_syslog
  6. </Extension>
复制代码
配置输入(也就是采集模块)和输出模块,以及路径
       <Input 名称></input>
       <out 名称></out>
      <route 名称></route>
因为我需要采集系统日志和中间件tomcat日志,所以配置如下;前面三个Input模块是采集系统日志,配置从内核、Systemd日志和/dev/log收集日志。后面两个是tomcat日志;日志文件路径支持通配符*;
  1. <pre style=""># Convert the syslog
  2. <Input kernel>
  3.     Module      im_kernel
  4.     Exec        parse_syslog_bsd();
  5. </Input>

  6. <Input journal>
  7.     Module      im_uds
  8.     UDS         /run/systemd/journal/syslog
  9.     Exec        parse_syslog_bsd();
  10. </Input>

  11. <Input devlog>
  12.     Module      im_uds
  13.     UDS         /dev/log
  14.     FlowControl FALSE
  15.     Exec        $raw_event =~ s/\s+$//; parse_syslog_bsd();
  16. </Input>

  17. # Convert the Tomcat access logs
  18. <Input Tomcat_Logs>
  19.    Module    im_file
  20.    File    "/home/tomcat-8-party/logs/localhost_access_log.*"
  21.    SavePos  TRUE
  22. </Input>

  23. # Convert the jeesite logs
  24. <Input Jeesite_Logs>
  25.    Module    im_file
  26.    File    "/home/tomcat-8-party/logs/jeesite.log*"
  27.    SavePos  TRUE
  28. </Input>

  29. <Output out1>
  30.     Module      om_udp
  31.     Host        10.251.251.1
  32.     Port        514
  33. </Output>

  34. <Output out2>
  35.     Module      om_udp
  36.     Host        10.251.251.1
  37.     Port        514
  38.     Exec        $Message = to_json(); to_syslog_bsd();
  39. </Output>

  40. ########################################
  41. # Routes                               #
  42. ########################################
  43. <Route 1>
  44.    Path          Tomcat_Logs, Jeesite_Logs => out1
复制代码
配置完成保存退出。这里使用systemd/journal采集日志,还需要配置下journal文件编辑
vi /etc/systemd/journald.conf
将ForwardTosyslog的注释#去掉,并改为yes
禁用 rsyslog:
  1. systemclt stop rsyslog
复制代码

完成上述配置后重启各项服务
  1. systemctl restart nxlog
复制代码

4.测试

到这里就没问题了。通过一个小软件在日志接收主机上监听514端口验证日志接收
web还没部署好,先手动修改下
/home/tomcat-8-party/logs/localhost_access_log日志内容测试下
成功收到我编辑的测试文本。配置完成
--------------------------正文分割线------------------------------

数据库的日志采集还没测试,过几天测试下。

打赏鼓励作者,期待更多好文!

打赏
44人已打赏

C罗单手卸AF 发表于 2021-1-26 15:53
  
感谢楼主的分享,nxlog为开源的代码,使用nxlog采集日志较为常见。楼主提供了详细的命令以及注意事项,并附上了截图,在结尾对nxlog采集情况进行了验证。相应的nxlog采集linux以及windows的说明文档在LAS界面:日志采集-下载nxlog.zip文件中有对应的文档哟,如果使用LAS界面本身的nxlog,则还需要进行相应的文件替换。楼主很用心的提供了对应的代码复制,很暖心哟!期待楼主的下次分享!
新手733603 发表于 2021-1-12 18:23
  
本帖最后由 新手733603 于 2021-1-29 11:44 编辑

代码末尾缺少了</route>
和<route2></route>的内容,不知道是啥原因,重新编辑提交后也无法显示
请勿直接复制粘贴
暗夜星空 发表于 2021-1-13 08:09
  
多谢分享
Sangfor_闪电回_朱丽 发表于 2021-1-13 11:15
  
感谢楼主带来的干货分享,已将文章收录并放到社区技术博客中,以便让更多的用户关注和学习!

社区有奖征文活动【原创分享计划】已开启,投稿,领S豆、现金、及精美礼包!
具体内容要求和奖励规则请参考:
ttp://bbs.sangfor.com.cn/forum.php?mod=viewthread&tid=134423
火星人的异地恋g 发表于 2021-1-13 13:45
  
感谢楼主图文并茂的分享
许久昌 发表于 2021-1-13 13:54
  
图文并茂,非常详细,适合学习参考
新手262988 发表于 2021-1-13 14:14
  
感谢楼主分享,这个很实用。
gqce 发表于 2021-1-13 19:21
  
感谢分享
暗夜星空 发表于 2021-1-14 08:39
  
多谢分享
烤肉 发表于 2021-1-14 08:57
  
感谢楼主分享
发表新帖
热门标签
全部标签>
技术盲盒
西北区每日一问
【 社区to talk】
每日一问
干货满满
技术笔记
新版本体验
技术咨询
标准化排查
GIF动图学习
信服课堂视频
安装部署配置
每周精选
产品连连看
2023技术争霸赛专题
功能体验
测试报告
高手请过招
POC测试案例
社区帮助指南
社区新周刊
运维工具
VPN 对接
授权
排障笔记本
玩转零信任
通用技术
秒懂零信任
技术晨报
自助服务平台操作指引
2024年技术争霸赛
畅聊IT
答题自测
资源访问
地址转换
信服圈儿
故障笔记
全能先锋系列
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
日志审计
问题分析处理
流量管理
每日一记
云计算知识
用户认证
原创分享
解决方案
sangfor周刊
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
设备维护
虚拟机
存储
迁移
加速技术
产品预警公告
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
深信服技术支持平台
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
北京区每日一练
场景专题
排障那些事
升级&主动服务
高频问题集锦

本版版主

12
185
6

发帖

粉丝

关注

121
312
350

发帖

粉丝

关注

本版达人

LoveTec...

本周分享达人

新手24116...

本周提问达人