Linux系统日志管理-rsyslog
Rsyslog 是一个 syslogd 的多线程增强版。它提供高性能、极好的安全功能和模块化设计,虽然它基于常规的 syslogd,但 rsyslog 已经演变成了一个强大的工具,可用于:
接收来自各种来源的输入
转换它们
将结果输出到不同的目的地

Rsyslog has become the de-facto standard on modern Linux operating systems. It’s high-performance log processing, database integration, modularity and support for multiple logging protocols make it the sysadmin’s logging daemon of choice. The project was started in 2004 and has since then evolved rapidly.
Starting with today, rsyslog is not only available on Linux and BSD, but also on Sun Solaris. Both Intel and Sparc machines are fully supported under Solaris. Depending on operator need, rsyslog can replace stock Solaris syslogd or be used in conjunction with it. The later case provides enhanced rsyslog functionality without the need to change the system infrastructure.
Features
* Multi-threading
* TCP, SSL, TLS, RELP
* MySQL, PostgreSQL, Oracle and more
* Filter any part of syslog message
* Fully configurable output format
* Suitable for enterprise-class relay chains
Rsyslog可以简单的理解为syslog的超集,在老版本的Linux系统中,RHEL 3/4/5默认是使用的syslog作为系统的日志工具,从RHEL 6 开始系统默认使用了Rsyslog。
Rsyslog 是负责收集 syslog 的程序,可以用来取代 syslogd 或 syslog-ng。 在这些 syslog 处理程序中,个人认为 rsyslog 是功能最为强大的。 其特性包括:
支持输出日志到各种数据库,如 MySQL,PostgreSQL,MongoDB,ElasticSearch,等等;
通过 RELP + TCP 实现数据的可靠传输(基于此结合丰富的过滤条件可以建立一种 可靠的数据传输通道供其他应用来使用);
精细的输出格式控制以及对消息的强大 过滤能力;
高精度时间戳;队列操作(内存,磁盘以及混合模式等); 支持数据的加密和压缩传输等。
版本查看
$rsyslogd -version
rsyslogd 3.22.1, compiled with:
FEATURE_REGEXP: Yes
FEATURE_LARGEFILE: Yes
FEATURE_NETZIP (message compression): Yes
GSSAPI Kerberos 5 support: Yes
FEATURE_DEBUG (debug build, slow code): No
Atomic operations supported: Yes
Runtime Instrumentation (slow code): No
安装
yum -y rsyslog
#查看是否安装了rsyslog
rpm -qa | grep rsyslog
#如果还需要别的组件(mysql模块,日志轮转)
yum -y rsyslog-mysql
yum -y logrotate
启动/停止
/etc/init.d/rsyslog start
/etc/init.d/rsyslog stop
/etc/init.d/rsyslog restart
//帮助文档 man rsyslogd, 或者输入一个错误的命令
$rsyslogd --help
rsyslogd: invalid option -- '-'
usage: rsyslogd [-c<version>] [-46AdnqQvwx] [-l<hostlist>] [-s<domainlist>]
[-f<conffile>] [-i<pidfile>] [-N<level>] [-M<module load path>]
[-u<number>]
To run rsyslogd in native mode, use "rsyslogd -c3 <other options>"
架构


配置文件/etc/rsyslog.conf中的规则指定了不同日志级别的处理办法(规则)
facility.priority action
第一个facility代表日志类型:
auth 认证(pam)产生的相关
authpriv ssh、ftp等登录信息的验证授权信息
corn 计划任务相关
daemon 系统服务相关
ftp ftp服务相关的
kern 内核
lpr 打印机服务相关
security 安全相关
mail 邮件
mark(syslog)-rsyslog 服务内部的信息,时间标识
news 新闻组
user 用户程序产生的相关信息
uucp unix to nuix copy主机之间相关的通信
local 0-7 自定义的日志设备
第二个priority代表日志级别,下列等级从上到下,级别从低到高,记录信息越来越少:
debug 有调试信息的,日志通信最多
info 一般信息日志,最常用
notice 最具有重要性的普通条件的信息
warning 警告级别
err error错误级别阻止某个功能或者模块不能正常工作的信息
crit critical严重级别,阻止整个系统或者整个软件不能正常工作的信息
alert 需要立刻修改的信息
emerg panic内核崩溃等重要信息
none 什么都不记录
第三个action代表前面两者的记录如何处理,基本上是记录入对应的文件之中;
常见的日志文件保存在/var/log/目录下,在此列一些常见的日志类型文件。
boot.log:系统启动日志
cron:记录与系统定时任务相关的日志
lastlog:记录系统中所有用户最后一次的登录时间的日志。这个文件也是二进制文件,要使用lastlog命令查看
mailog:记录邮件信息的日志
message:记录系统重要消息的日志,这个日志文件中会记录Linux系统的绝大多数重要信息。如果系统出现问题,首先要检查的应该就是这个日志文件
secure:记录验证和授权方面的信息,只要涉及账户和密码的程序都会记录,比如系统的登录、ssh的登录、su切换用户sudo授权,甚至添加用户和修改用户率码都会记录在这个日志文件中
wtmp:记录当前已经登录的用户的信息。这个文件会随着用户的登录和注销而不断变化,只记录当前登录用户的信息。这个文件不能用vi查看,而要使用w、who、users等命令查看。
日志文件的格式包含以下4种:
事件产生的时间
产生事件的服务器主机名
产生事件的服务名或程序名
事件的具体信息
格式规则
*.* info @10.11.12.13:514
一个@代表通过UDP协议发送日志,两个@@代表以tcp方式传送日志;与UDP相比,TCP传输的方式更加稳定一些。
对于入侵攻击排查工作来说,操作系统的认证日志、计划任务日志和历史命令都是非常重要的。应该把各个系统的相应日志保存到专门的rsyslog日志服务器。
1、配置Rsyslog服务器
编辑配置文件:
# vi /etc/rsyslog.conf
1.取消下面4行的注释
TCP和UDP可以被同时生效来监听TCP/UDP 连接。
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514
2.创建日志接收模板
注释掉原有的ActionFileDefaultTemplate指令(使用传统的格式)
#$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
3.使用自定义的时间格式
$template myformat,"%$NOW% %TIMESTAMP:8:15% %hostname% %syslogtag% %msg%\n"
$ActionFileDefaultTemplate myformat
4.在RULES段的前面写入下面的行
$template local1_path, "/freeoa/rsyslog/%FROMHOST-IP%/bash_history/%$YEAR%%$MONTH%.log"
$template remote_path, "/freeoa/rsyslog/%FROMHOST-IP%/%syslogfacility-text%/%$YEAR%%$MONTH%.log"
if $fromhost-ip != '127.0.0.1' and $syslogfacility-text == 'local1' then ?local1_path
& ~
if $fromhost-ip != '127.0.0.1' then ?remote_path
& ~
5.保存退出
6.说明:
$template定义了两个模板,名称分别为local1_path和remote_path,模板名称后面指定了将消息保存到的日志文件的路径。
if开头的指令是基于表达式的过滤器。第一条if指令的意思是,如果日志消息的来源IP地址不是本机,且消息的syslogfacility-text为local1,那么将这条消息写入由模板local1_path对应的文件。
& ~的含义是让满足上面过滤器条件的消息不再匹配后续的规则。默认情况下,日志消息会按顺序匹配rsyslog.conf中的每条规则。& ~在这里会让消息跳过后面的规则,这样这条消息就不会再被写入其他的日志文件了。
第二条if开头的指令将来自于本机之外的所有日志消息(由于前面的& ~,满足这个条件的只有auth、authpriv和cron消息)写入remote_path所对应的文件。
7.重启Rsyslog服务
# systemctl restart rsyslog
8.配置防火墙
作为日志服务器,需要开启访问端口,(或者直接关闭防火墙)开放514端口(tcp/udp)
2、Linux客户端安装及配置
1.配置日志发送
编辑配置文件:
# vi /etc/rsyslog.conf
配置术语说明
facility.priority action
编辑rsyslog服务配置文件,文件末尾加入一行
*.* info @10.11.12.13:514
保存退出。认证和计划任务日志等在本地保存的同时,还会保存到远程日志服务器。
一个@代表通过UDP协议发送日志,两个@@代表以tcp方式传送日志。与UDP相比,TCP传输的方式更加稳定一些。
2.将客户端执行的所有命令写入系统日志中
编辑/etc/bashrc
# vi /etc/bashrc
文件底部添加一行,加入以下内容
export PROMPT_COMMAND='{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg"; }'
设置使其生效
# source !$
3.重启Rsyslog服务
重启服务,使配置更改生效
4.测试验证
4.1.在客户端发送一条日志信息
发送一条info级别或以上级别的日志
# logger -p "mail.info" "this is test log"
4.2.在日志服务器 /var/log目录下
# tail -f /freeoa/rsyslog/10.11.12.13/mail/<yyyymm>.log
说明:不管在任何情况下,都不要配置rsyslog客户端将日志消息通过不安全的网络转发,或者,特别是通过互联网转发,因为syslog协议是一个明文协议。要进行安全传输,可以考虑使用TLS/SSL来加密日志消息的传输。
3、Windows客户端安装及配置
在Windows环境下要安装和配置Rsyslog Agent,可以按照以下步骤操作:
1.下载Rsyslog Windows版本
访问此处下载最新的Rsyslog MSI安装程序。
2.安装Rsyslog
2.1.双击下载的rsyslogwa.exe进行常规的安装,过程较简单,此处略过。
3.配置Rsyslog
3.1 方法一:
打开RSyslog Windows Agent Configuration,依次展示RuleSets--->Default RuleSet--->ForwardSyslog--->Actions--->Rsyslog,进行Rsyslog转发配置,并启用服务。
3.2.方法二:
打开Rsyslog配置文件 rsyslog.conf,通常位于 %install_dir%\rsyslog\ 目录下。
如果想将日志发送到远程的Rsyslog服务器,可以在配置文件中添加如下行:
*.* @@ 10.11.12.13:514
其中10.11.12.13是Rsyslog服务器的IP地址,514 是默认的Rsyslog端口。
4.重启Rsyslog服务
可以通过服务管理器(services.msc)来重启Rsyslog服务,或者使用命令行:
net stop rsyslog && net start rsyslog
5.验证配置并测试连接
5.1.方法一:
打开RSyslog Windows Agent Configuration,在Tools---> Stslog Test Message,配置Syslog Server服务器地址,点击Send,进行测试。
5.2.方法二:
确保Windows防火墙允许Rsyslog通过Tcp-514端口发送和接收信息。可以使用 telnet 命令测试与远程服务器的连接:
telnet 10.11.12.13 514
其中10.11.12.13是Rsyslog服务器的IP地址,514 是默认的Rsyslog端口。
4、网络设备客户端配置
1.Huawei
<Huawei> system-view
[Huawei] info-center loghost source Vlanif99
[Huawei] info-center loghost 10.11.12.13 facility local5
2.H3C
<H3C> system-view
[H3C] info-center loghost source Vlan-interface99
[H3C] info-center loghost 10.11.12.13 facility local6
3.Cisco
Cisco>
Cisco> enable
Cisco# config terminal
Cisco(config)# logging on
Cisco(config)# logging 10.11.12.13
Cisco(config)# logging facility local4
Cisco(config)# logging source-interface e0
4.Ruijie
Ruijie>
Ruijie> enable
Ruijie# config terminal
Ruijie(config)# logging buffered warnings
Ruijie(config)# logging source interface VLAN 99
Ruijie(config)# logging facility local6
Ruijie(config)# logging server 10.11.12.13
RSyslog Windows Agent(RWA) v7.0 已经于2021年3月发布。此次更新为所有可能阻塞的动作添加了专用的动作队列,这提供了更高的性能以及缓冲能力,以防动作无法到达或因其他原因而阻塞。另外增加了对 LogPoint SIEM JSON 格式的本地支持,这使得它更容易集成。主要更新内容:
过滤引擎增加对 IPv6 地址过滤的支持
Eventlog Monitor V2 增加了对 LogPoint SIEM JSON 格式的支持
动作缓存:当动作处理失败时,在 RELP 动作中增加了对缓存队列的支持
当使用全局状态变量类型的过滤器时,增加了对存储过滤结果的支持
增加了 WarningError 事件,当队列满了就会产生
更新 librelp 至 v1.8.0,Openssl 至 1.1.1g 版本
修复了使用状态类型筛选器时的 SaveIntoProperty 处理
修复了导致内部异常的问题:当两个 TCP Syslog 会话同时关闭时,会产生 STATUS_STACK_BUFFER_OVERRUN
更多详细内容请查看更新公告。
RWA v7.4 现已于2023年6月发布,具体更新内容包括:
Syslog Action:修复了一种非常罕见的情况,即一个 Action 可能会尝试同时多次打开到同一目标的 TCP 连接。处理已得到强化,以避免同一 Action 的并发连接重试。
Syslog Action:修复了连接失败和启用 Syslog Caching 时的错误处理。如果启用了 Syslog 备份服务器,在激活 Syslog 缓存后,该 action 现在将再次正确地重试主服务器。
EventLog Monitor V2:修复了 XML-Stream Processing 中可能导致处理 EventLog 消息失败的问题。
LogRotate:更正了当功能因许可而不可用时的错误报告。
Network Core:增强关闭连接期间的稳定性。
最新版本:8.20
这次发布的更新多数是维护性的更新。有一个大的改变是处理内部信息的方式,不会再通过 internal bridge 进行记录,但会通过 syslog() 这个API 调用,这个更新对于一般的用户不会造成很大的改变。除此之外,TLS syslo 错误信息和队列子系统的稳健性也已改进。具体更新请参考此处。
最新版本:8.32
这个版本有着大量变化,最显着的是 ompgsql 的更新。其他包括像 pmrfc3164,omhiredis,mmexternal,omprog,imfile,omfile,mmpstrucdata 模块的更改。rsyslog 的 RHEL/CentOS 软件包发生了一些重大更改。现在使用 CentOS 基础库的 spec 文件来构建 EL7发行版 RPM。
官方主页:http://www.rsyslog.com/
接收来自各种来源的输入
转换它们
将结果输出到不同的目的地

Rsyslog has become the de-facto standard on modern Linux operating systems. It’s high-performance log processing, database integration, modularity and support for multiple logging protocols make it the sysadmin’s logging daemon of choice. The project was started in 2004 and has since then evolved rapidly.
Starting with today, rsyslog is not only available on Linux and BSD, but also on Sun Solaris. Both Intel and Sparc machines are fully supported under Solaris. Depending on operator need, rsyslog can replace stock Solaris syslogd or be used in conjunction with it. The later case provides enhanced rsyslog functionality without the need to change the system infrastructure.
Features
* Multi-threading
* TCP, SSL, TLS, RELP
* MySQL, PostgreSQL, Oracle and more
* Filter any part of syslog message
* Fully configurable output format
* Suitable for enterprise-class relay chains
Rsyslog可以简单的理解为syslog的超集,在老版本的Linux系统中,RHEL 3/4/5默认是使用的syslog作为系统的日志工具,从RHEL 6 开始系统默认使用了Rsyslog。
Rsyslog 是负责收集 syslog 的程序,可以用来取代 syslogd 或 syslog-ng。 在这些 syslog 处理程序中,个人认为 rsyslog 是功能最为强大的。 其特性包括:
支持输出日志到各种数据库,如 MySQL,PostgreSQL,MongoDB,ElasticSearch,等等;
通过 RELP + TCP 实现数据的可靠传输(基于此结合丰富的过滤条件可以建立一种 可靠的数据传输通道供其他应用来使用);
精细的输出格式控制以及对消息的强大 过滤能力;
高精度时间戳;队列操作(内存,磁盘以及混合模式等); 支持数据的加密和压缩传输等。
版本查看
$rsyslogd -version
rsyslogd 3.22.1, compiled with:
FEATURE_REGEXP: Yes
FEATURE_LARGEFILE: Yes
FEATURE_NETZIP (message compression): Yes
GSSAPI Kerberos 5 support: Yes
FEATURE_DEBUG (debug build, slow code): No
Atomic operations supported: Yes
Runtime Instrumentation (slow code): No
安装
yum -y rsyslog
#查看是否安装了rsyslog
rpm -qa | grep rsyslog
#如果还需要别的组件(mysql模块,日志轮转)
yum -y rsyslog-mysql
yum -y logrotate
启动/停止
/etc/init.d/rsyslog start
/etc/init.d/rsyslog stop
/etc/init.d/rsyslog restart
//帮助文档 man rsyslogd, 或者输入一个错误的命令
$rsyslogd --help
rsyslogd: invalid option -- '-'
usage: rsyslogd [-c<version>] [-46AdnqQvwx] [-l<hostlist>] [-s<domainlist>]
[-f<conffile>] [-i<pidfile>] [-N<level>] [-M<module load path>]
[-u<number>]
To run rsyslogd in native mode, use "rsyslogd -c3 <other options>"
架构


配置文件/etc/rsyslog.conf中的规则指定了不同日志级别的处理办法(规则)
facility.priority action
第一个facility代表日志类型:
auth 认证(pam)产生的相关
authpriv ssh、ftp等登录信息的验证授权信息
corn 计划任务相关
daemon 系统服务相关
ftp ftp服务相关的
kern 内核
lpr 打印机服务相关
security 安全相关
mail 邮件
mark(syslog)-rsyslog 服务内部的信息,时间标识
news 新闻组
user 用户程序产生的相关信息
uucp unix to nuix copy主机之间相关的通信
local 0-7 自定义的日志设备
第二个priority代表日志级别,下列等级从上到下,级别从低到高,记录信息越来越少:
debug 有调试信息的,日志通信最多
info 一般信息日志,最常用
notice 最具有重要性的普通条件的信息
warning 警告级别
err error错误级别阻止某个功能或者模块不能正常工作的信息
crit critical严重级别,阻止整个系统或者整个软件不能正常工作的信息
alert 需要立刻修改的信息
emerg panic内核崩溃等重要信息
none 什么都不记录
第三个action代表前面两者的记录如何处理,基本上是记录入对应的文件之中;
常见的日志文件保存在/var/log/目录下,在此列一些常见的日志类型文件。
boot.log:系统启动日志
cron:记录与系统定时任务相关的日志
lastlog:记录系统中所有用户最后一次的登录时间的日志。这个文件也是二进制文件,要使用lastlog命令查看
mailog:记录邮件信息的日志
message:记录系统重要消息的日志,这个日志文件中会记录Linux系统的绝大多数重要信息。如果系统出现问题,首先要检查的应该就是这个日志文件
secure:记录验证和授权方面的信息,只要涉及账户和密码的程序都会记录,比如系统的登录、ssh的登录、su切换用户sudo授权,甚至添加用户和修改用户率码都会记录在这个日志文件中
wtmp:记录当前已经登录的用户的信息。这个文件会随着用户的登录和注销而不断变化,只记录当前登录用户的信息。这个文件不能用vi查看,而要使用w、who、users等命令查看。
日志文件的格式包含以下4种:
事件产生的时间
产生事件的服务器主机名
产生事件的服务名或程序名
事件的具体信息
格式规则
*.* info @10.11.12.13:514
一个@代表通过UDP协议发送日志,两个@@代表以tcp方式传送日志;与UDP相比,TCP传输的方式更加稳定一些。
对于入侵攻击排查工作来说,操作系统的认证日志、计划任务日志和历史命令都是非常重要的。应该把各个系统的相应日志保存到专门的rsyslog日志服务器。
1、配置Rsyslog服务器
编辑配置文件:
# vi /etc/rsyslog.conf
1.取消下面4行的注释
TCP和UDP可以被同时生效来监听TCP/UDP 连接。
# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514
2.创建日志接收模板
注释掉原有的ActionFileDefaultTemplate指令(使用传统的格式)
#$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
3.使用自定义的时间格式
$template myformat,"%$NOW% %TIMESTAMP:8:15% %hostname% %syslogtag% %msg%\n"
$ActionFileDefaultTemplate myformat
4.在RULES段的前面写入下面的行
$template local1_path, "/freeoa/rsyslog/%FROMHOST-IP%/bash_history/%$YEAR%%$MONTH%.log"
$template remote_path, "/freeoa/rsyslog/%FROMHOST-IP%/%syslogfacility-text%/%$YEAR%%$MONTH%.log"
if $fromhost-ip != '127.0.0.1' and $syslogfacility-text == 'local1' then ?local1_path
& ~
if $fromhost-ip != '127.0.0.1' then ?remote_path
& ~
5.保存退出
6.说明:
$template定义了两个模板,名称分别为local1_path和remote_path,模板名称后面指定了将消息保存到的日志文件的路径。
if开头的指令是基于表达式的过滤器。第一条if指令的意思是,如果日志消息的来源IP地址不是本机,且消息的syslogfacility-text为local1,那么将这条消息写入由模板local1_path对应的文件。
& ~的含义是让满足上面过滤器条件的消息不再匹配后续的规则。默认情况下,日志消息会按顺序匹配rsyslog.conf中的每条规则。& ~在这里会让消息跳过后面的规则,这样这条消息就不会再被写入其他的日志文件了。
第二条if开头的指令将来自于本机之外的所有日志消息(由于前面的& ~,满足这个条件的只有auth、authpriv和cron消息)写入remote_path所对应的文件。
7.重启Rsyslog服务
# systemctl restart rsyslog
8.配置防火墙
作为日志服务器,需要开启访问端口,(或者直接关闭防火墙)开放514端口(tcp/udp)
2、Linux客户端安装及配置
1.配置日志发送
编辑配置文件:
# vi /etc/rsyslog.conf
配置术语说明
facility.priority action
编辑rsyslog服务配置文件,文件末尾加入一行
*.* info @10.11.12.13:514
保存退出。认证和计划任务日志等在本地保存的同时,还会保存到远程日志服务器。
一个@代表通过UDP协议发送日志,两个@@代表以tcp方式传送日志。与UDP相比,TCP传输的方式更加稳定一些。
2.将客户端执行的所有命令写入系统日志中
编辑/etc/bashrc
# vi /etc/bashrc
文件底部添加一行,加入以下内容
export PROMPT_COMMAND='{ msg=$(history 1 | { read x y; echo $y; });logger "[euid=$(whoami)]":$(who am i):[`pwd`]"$msg"; }'
设置使其生效
# source !$
3.重启Rsyslog服务
重启服务,使配置更改生效
4.测试验证
4.1.在客户端发送一条日志信息
发送一条info级别或以上级别的日志
# logger -p "mail.info" "this is test log"
4.2.在日志服务器 /var/log目录下
# tail -f /freeoa/rsyslog/10.11.12.13/mail/<yyyymm>.log
说明:不管在任何情况下,都不要配置rsyslog客户端将日志消息通过不安全的网络转发,或者,特别是通过互联网转发,因为syslog协议是一个明文协议。要进行安全传输,可以考虑使用TLS/SSL来加密日志消息的传输。
3、Windows客户端安装及配置
在Windows环境下要安装和配置Rsyslog Agent,可以按照以下步骤操作:
1.下载Rsyslog Windows版本
访问此处下载最新的Rsyslog MSI安装程序。
2.安装Rsyslog
2.1.双击下载的rsyslogwa.exe进行常规的安装,过程较简单,此处略过。
3.配置Rsyslog
3.1 方法一:
打开RSyslog Windows Agent Configuration,依次展示RuleSets--->Default RuleSet--->ForwardSyslog--->Actions--->Rsyslog,进行Rsyslog转发配置,并启用服务。
3.2.方法二:
打开Rsyslog配置文件 rsyslog.conf,通常位于 %install_dir%\rsyslog\ 目录下。
如果想将日志发送到远程的Rsyslog服务器,可以在配置文件中添加如下行:
*.* @@ 10.11.12.13:514
其中10.11.12.13是Rsyslog服务器的IP地址,514 是默认的Rsyslog端口。
4.重启Rsyslog服务
可以通过服务管理器(services.msc)来重启Rsyslog服务,或者使用命令行:
net stop rsyslog && net start rsyslog
5.验证配置并测试连接
5.1.方法一:
打开RSyslog Windows Agent Configuration,在Tools---> Stslog Test Message,配置Syslog Server服务器地址,点击Send,进行测试。
5.2.方法二:
确保Windows防火墙允许Rsyslog通过Tcp-514端口发送和接收信息。可以使用 telnet 命令测试与远程服务器的连接:
telnet 10.11.12.13 514
其中10.11.12.13是Rsyslog服务器的IP地址,514 是默认的Rsyslog端口。
4、网络设备客户端配置
1.Huawei
<Huawei> system-view
[Huawei] info-center loghost source Vlanif99
[Huawei] info-center loghost 10.11.12.13 facility local5
2.H3C
<H3C> system-view
[H3C] info-center loghost source Vlan-interface99
[H3C] info-center loghost 10.11.12.13 facility local6
3.Cisco
Cisco>
Cisco> enable
Cisco# config terminal
Cisco(config)# logging on
Cisco(config)# logging 10.11.12.13
Cisco(config)# logging facility local4
Cisco(config)# logging source-interface e0
4.Ruijie
Ruijie>
Ruijie> enable
Ruijie# config terminal
Ruijie(config)# logging buffered warnings
Ruijie(config)# logging source interface VLAN 99
Ruijie(config)# logging facility local6
Ruijie(config)# logging server 10.11.12.13
RSyslog Windows Agent(RWA) v7.0 已经于2021年3月发布。此次更新为所有可能阻塞的动作添加了专用的动作队列,这提供了更高的性能以及缓冲能力,以防动作无法到达或因其他原因而阻塞。另外增加了对 LogPoint SIEM JSON 格式的本地支持,这使得它更容易集成。主要更新内容:
过滤引擎增加对 IPv6 地址过滤的支持
Eventlog Monitor V2 增加了对 LogPoint SIEM JSON 格式的支持
动作缓存:当动作处理失败时,在 RELP 动作中增加了对缓存队列的支持
当使用全局状态变量类型的过滤器时,增加了对存储过滤结果的支持
增加了 WarningError 事件,当队列满了就会产生
更新 librelp 至 v1.8.0,Openssl 至 1.1.1g 版本
修复了使用状态类型筛选器时的 SaveIntoProperty 处理
修复了导致内部异常的问题:当两个 TCP Syslog 会话同时关闭时,会产生 STATUS_STACK_BUFFER_OVERRUN
更多详细内容请查看更新公告。
RWA v7.4 现已于2023年6月发布,具体更新内容包括:
Syslog Action:修复了一种非常罕见的情况,即一个 Action 可能会尝试同时多次打开到同一目标的 TCP 连接。处理已得到强化,以避免同一 Action 的并发连接重试。
Syslog Action:修复了连接失败和启用 Syslog Caching 时的错误处理。如果启用了 Syslog 备份服务器,在激活 Syslog 缓存后,该 action 现在将再次正确地重试主服务器。
EventLog Monitor V2:修复了 XML-Stream Processing 中可能导致处理 EventLog 消息失败的问题。
LogRotate:更正了当功能因许可而不可用时的错误报告。
Network Core:增强关闭连接期间的稳定性。
最新版本:8.20
这次发布的更新多数是维护性的更新。有一个大的改变是处理内部信息的方式,不会再通过 internal bridge 进行记录,但会通过 syslog() 这个API 调用,这个更新对于一般的用户不会造成很大的改变。除此之外,TLS syslo 错误信息和队列子系统的稳健性也已改进。具体更新请参考此处。
最新版本:8.32
这个版本有着大量变化,最显着的是 ompgsql 的更新。其他包括像 pmrfc3164,omhiredis,mmexternal,omprog,imfile,omfile,mmpstrucdata 模块的更改。rsyslog 的 RHEL/CentOS 软件包发生了一些重大更改。现在使用 CentOS 基础库的 spec 文件来构建 EL7发行版 RPM。
官方主页:http://www.rsyslog.com/
该文章最后由 阿炯 于 2024-07-03 10:41:05 更新,目前是第 2 版。