前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >[ELK入门到实践笔记] 一、通过rsyslog搭建集中日志服务器

[ELK入门到实践笔记] 一、通过rsyslog搭建集中日志服务器

作者头像
Bypass
发布于 2019-11-07 06:39:26
发布于 2019-11-07 06:39:26
2.9K00
代码可运行
举报
文章被收录于专栏:BypassBypass
运行总次数:0
代码可运行

ELK 是elastic公司提供的一套完整的日志收集以及展示的解决方案,这是我在ELK学习和实践过程写下的笔记,整理成了一个ELK入门到实践的系列文章,分享出来与大家共勉。本文为该系列文章的第一篇,通过rsyslog搭建集中日志服务器,收集linux和window系统日志。

我们通常可以通过rsyslog来实现系统日志的集中管理,这种情况下通常会有一个日志服务器,然后每台服务器配置自己日志通过rsyslog来写到远程的日志服务器上,如下是rsyslog的配置过程:

0x01 rsyslog服务端配置

1、启用UDP/TCP进行传输

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
vim /etc/rsyslog.conf
# Provides UDP syslog reception    #若启用UDP进行传输,则取消下面两行的注释
$ModLoad imudp
$UDPServerRun 514


# Provides TCP syslog reception    #若启用TCP进行传输,则取消下面两行的注释
#$ModLoad imtcp
#$InputTCPServerRun 514

2、为避免修改主配置文件,我们在/etc/rsyslog.d/中新建default.conf,追加如下模板:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#### GLOBAL DIRECTIVES ####
# Use default timestamp format  # 使用自定义的日志格式
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
$template myFormat,"%timestamp% %fromhost-ip% %syslogtag% %msg%\n"
$ActionFileDefaultTemplate myFormat

# 根据客户端的IP单独存放主机日志在不同目录,rsyslog需要手动创建
$template RemoteLogs,"/var/log/rsyslog/%fromhost-ip%/%fromhost-ip%_%$YEAR%-%$MONTH%-%$DAY%.log"
# 排除本地主机IP日志记录,只记录远程主机日志
:fromhost-ip, !isequal, "127.0.0.1" ?RemoteLogs
# 忽略之前所有的日志,远程主机日志记录完之后不再继续往下记录
& ~

3、重启rsyslog服务

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
systemctl restart rsyslog

0x02 rsyslog客户务端配置

1、启用UDP进行传输并设置远程日志服务器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
vim /etc/rsyslog.conf

# Provides UDP syslog reception    #若启用UDP进行传输,则取消下面两行的注释
$ModLoad imudp
$UDPServerRun 514

# Provides TCP syslog reception    #若启用TCP进行传输,则取消下面两行的注释
#$ModLoad imtcp
#$InputTCPServerRun 514

*.*    @192.168.91.18:514          #若启用TCP传输则使用@@,若是UDP则使用@

2、重启rsyslog服务

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
systemctl restart rsyslog

0x03 效果展示

通过使用自定义日志格式,将不同服务器IP的日志单独分别存放在不同目录。到这里,使用rsyslog服务端和linux系统日志收集已完成。

0x04 扩展部分:Rsyslog Windows Agent

一般情况下,我们会使用winlogbeat用于收集windows的系统事件日志,但其实rsyslog自身也提供了一个Rsyslog Windows代理,用来收集windows日志。

下载地址:https://www.rsyslog.com/windows-agent/windows-agent-download/

安装过程:

1、双击rsyslogwa安装包,开始进行安装

2、一路Next安装即可。PS:在这里可能需要等几分钟。

操作使用:

1、打开RSyslog Windows Agent Configuration,在Tools---> Stslog Test Message,配置Syslog Server服务器地址,点击Send,进行测试。

在Rsyslog服务端,接收到一条测试日志,说明Rsyslog通讯正常。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Nov 1 13:23:18 192.168.165.193 RSyslog Windows Agent: This is a SyslogTest

2、依次展示RuleSets,进行Rsyslog转发配置,并启用服务。

在rsyslog服务端进行验证,如尝试远程连接window服务器,可接收到多条服务器日志。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-11-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Bypass 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档