阅读量:1
Windows使用nxlog发送系统日志到Linux的rsyslog服务器
前言
要将Windows系统日志发送到Linux的rsyslog服务器,可以使用一种叫做nxlog的工具。
nxlog是一款跨平台的日志管理工具,能够收集、转换和转发日志数据。
一、IP地址规划及示意图
二、在windows上安装及配置nxlog
1.下载nxlog
https://nxlog.co/products/nxlog-community-edition
2.安装nxlog
3.配置nxlog
新建txt文件,编辑内容如下,并将其重命名为nxlog.conf
替换C:\Program Files\nxlog\conf\nxlog.conf
define ROOT C:\Program Files\nxlog Moduledir %ROOT%\modules CacheDir %ROOT%\data Pidfile %ROOT%\data\nxlog.pid SpoolDir %ROOT%\data LogFile %ROOT%\data\nxlog.log <Extension _syslog> Module xm_syslog </Extension> <Extension _exec> Module xm_exec </Extension> <Input in> Module im_msvistalog </Input> <Input logger> Module im_file File 'C:\\path\\to\\custom.log' SavePos TRUE Exec $Message = $raw_event; </Input> <Output out> Module om_udp Host 10.10.10.10 Port 514 Exec to_syslog_bsd(); </Output> <Route 1> Path in => out </Route> <Route 2> Path logger => out </Route>
4.创建对应日志路径的文件夹
三、windows上启动nxlog服务
打开“运行”对话框(按Win + R)。
输入services.msc并按回车。
在服务列表中找到nxlog,右键单击并选择“启动”。
四、在CentOS 7上配置日志存到指定位置文件
1.编辑/etc/rsyslog.conf 文件
实现来自不同客户端的日志,存储在不同的日志文件中
nano /etc/rsyslog.conf if ($fromhost-ip == '10.10.10.30') then /var/log/client_logs/10.10.10.30.log & stop
2.重启rsyslog服务
systemctl restart rsyslog
五、验证日志服务器配置是否生效
1.在windows上使用批处理写入自定义消息到日志
新建txt,编辑内容如下,并改后缀为bat执行
@echo off echo %date% %time% Custom log message winchen789789 >> C:\path\to\custom.log
每次运行这个脚本都会将自定义日志消息写入到 custom.log 文件中,nxlog 会监视该文件并将日志消息发送到 rsyslog 服务器。
2.在CentOS 7 的rsyslog服务端上验证是否收到自定义消息
tail -f /var/log/client_logs/10.10.10.30.log
- END