没有所谓的捷径
一切都是时间最平凡的累积

在 CentOS8/RHEL8 中配置 Rsyslog 服务器

本文最后更新:2021年6月23日,已超过1247天未更新,如果文章内容失效,请留言反馈本站。

Rsyslog是一个免费的开源日志程序,在CentOS 8和RHEL 8系统上默认可用它提供了一种简单有效的方法,可以将客户端节点的日志“集中”到一个中央服务器上,日志集中化有两个好处,首先,它简化了日志查看,因为系统管理员可以在一个中心节点查看远程服务器的所有日志,而无需登录每个客户端系统来检查日志。 如果您需要监控多台服务器,这非常有用。其次,如果远程客户端崩溃,您不必担心丢失日志,因为所有日志都将保存在中央Rsyslog服务器上,Rsyslog取代了只支持UDP协议的syslog,它扩展了基本的系统日志协议,具有出色的功能,例如在传输日志时支持UDP和TCP协议、增强的过滤功能和灵活的配置选项,下面我们来讨论如何在CentOS 8/RHEL 8系统中配置Rsyslog服务。

预先条件

我们将搭建以下实验环境来测试集中式日志记录过程:

  • Rsyslog 服务器 CentOS 8 Minimal IP 地址: 10.128.0.47
  • 客户端系统 RHEL 8 Minimal IP 地址: 10.128.0.48

通过上面的设置,我们将演示如何设置 Rsyslog 服务器,然后配置客户端系统以将日志发送到 Rsyslog 服务器进行监视。

让我们开始!

在 CentOS 8 上配置 Rsyslog 服务器

默认情况下,Rsyslog 已安装在 CentOS 8 / RHEL 8 服务器上。要验证 Rsyslog 的状态,请通过 SSH 登录并运行以下命令:

systemctl status rsyslog

如果由于某种原因 Rsyslog 不存在,那么可以使用以下命令进行安装:

sudo yum install rsyslog

接下来,你需要修改 Rsyslog 配置文件中的一些设置。打开配置文件:

sudo vim /etc/rsyslog.conf

滚动并取消注释下面的行,以允许通过 UDP 协议接收日志:

module(load="imudp") # needs to be done just once
input(type="imudp" port="514")

同样,如果你希望启用 TCP rsyslog 接收,请取消注释下面的行:

module(load="imtcp") # needs to be done just once
input(type="imtcp" port="514")

保存并退出配置文件。

要从客户端系统接收日志,我们需要在防火墙上打开 Rsyslog 默认端口 514。为此,请运行:

sudo firewall-cmd  --add-port=514/tcp  --zone=public  --permanent

接下来,重新加载防火墙保存更改:

sudo firewall-cmd --reload

接下来,重启 Rsyslog 服务器:

sudo systemctl restart rsyslog

要在启动时运行 Rsyslog,运行以下命令:

sudo systemctl enable rsyslog

要确认 Rsyslog 服务器正在监听 514 端口,请使用 netstat 命令,如下所示:

sudo netstat -pnltu

完美!我们已经成功配置了 Rsyslog 服务器来从客户端系统接收日志。

要实时查看日志消息,请运行以下命令:

tail -f /var/log/messages

现在开始配置客户端系统。

在 RHEL 8 上配置客户端系统

与 Rsyslog 服务器一样,登录并通过以下命令检查 rsyslog 守护进程是否正在运行:

sudo systemctl status rsyslog

接下来,打开 rsyslog 配置文件:

sudo vim /etc/rsyslog.conf

在文件末尾,添加以下行:

*.* @10.128.0.47:514           # Use @ for UDP protocol
*.* @@10.128.0.47:514          # Use @@ for TCP protocol

保存并退出配置文件。就像 Rsyslog 服务器一样,打开 514 端口,这是防火墙上的默认 Rsyslog 端口:

sudo firewall-cmd  --add-port=514/tcp  --zone=public  --permanent

接下来,重新加载防火墙以保存更改:

sudo firewall-cmd --reload

接下来,重启 rsyslog 服务:

sudo systemctl restart rsyslog

要在启动时运行 Rsyslog,请运行以下命令:

sudo systemctl enable rsyslog

测试日志记录操作

已经成功安装并配置 Rsyslog 服务器和客户端后,就该验证你的配置是否按预期运行了。

在客户端系统上,运行以下命令:

logger "Hello guys! This is our first log"

现在进入 Rsyslog 服务器并运行以下命令来实时查看日志消息:

tail -f /var/log/messages

客户端系统上命令运行的输出显示在了 Rsyslog 服务器的日志中,这意味着 Rsyslog 服务器正在接收来自客户端系统的日志:

就是这些了!我们成功设置了 Rsyslog 服务器来接收来自客户端系统的日志信息。

» 站长码字辛苦,有用点个赞吧,也可以打个
» 若转载请保留本文转自:豫章小站 » 《在 CentOS8/RHEL8 中配置 Rsyslog 服务器》
» 本文链接地址:https://blog.mydns.vip/4062.html
» 如果喜欢可以: 点此订阅本站 有需要帮助,可以联系小站
赞(0) 打赏
声明:本站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,若涉及侵权请及时告知,将会在第一时间删除,联系邮箱:contact@mydns.vip。文章观点不代表本站立场。本站原创内容未经允许不得转载,或转载时需注明出处:豫章小站 » 在 CentOS8/RHEL8 中配置 Rsyslog 服务器
分享到: 更多 (0)

评论 抢沙发


  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

智慧源于勤奋,伟大出自平凡

没有所谓的捷径,一切都是时间最平凡的累积,今天所做的努力都是在为明天积蓄力量

联系我们赞助我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏