如何在 Ubuntu 20.04 LTS 上设置 Rsyslog

Rsyslog 是基于 Unix 的操作系统的开源软件工具,用于从多个网络设备收集日志消息。它帮助系统管理员从中心点关注所有服务器。Rsyslog 工作在客户端/服务器模型中,它通过 TCP/UDP 协议在端口 514 上接收来自远程客户端的日志。

rsyslog-logo

Ubuntu 20.04 LTS Focal Fossa 上设置 Rsyslog

步骤 1. 首先,通过apt在终端中运行以下命令确保所有系统包都是最新的。

sudo apt update
sudo apt upgrade

步骤 2. 在 Ubuntu 20.04 上安装 Rsyslog。

默认情况下,Rsyslog 现在可在 Ubuntu 基础存储库中使用。现在我们运行以下命令在您的系统上安装 Rsyslog 服务器包:

sudo apt install rsyslog

安装完成后,启动并启用 Rsyslog 服务:

sudo systemctl start rsyslog
sudo systemctl enable rsyslog
sudo systemctl status rsyslog

步骤 3. 配置 Rsyslog。

现在是时候转到文件,取消注释并更改一些行以在服务器模式下运行 Rsyslog 服务:rsyslog.conf

nano /etc/rsyslog.conf

取消注释以下几行:

# provides UDP syslog reception
module(load="imudp")
input(type="imudp" port="514")

# provides TCP syslog reception
module(load="imtcp")
input(type="imtcp" port="514")

之后,添加以下行以定义模板以存储来自客户端系统的传入日志:

$template remote-incoming-logs,"/var/log/%HOSTNAME%/%PROGRAMNAME%.log"
*.* ?remote-incoming-logs

保存并关闭,然后重新启动 Rsyslog 服务以使更改生效:

sudo systemctl restart rsyslog

步骤 4. 配置防火墙。

如果防火墙正在运行,请通过它打开 Rsyslog:

ufw allow 514/tcp
ufw allow 514/udp
ufw reload

步骤 5. 将 Rsyslog 配置为客户端。

现在,您需要配置 Rsyslog 客户端以将 Syslog 消息发送到远程 Rsyslog 服务器:

nano /etc/rsyslog.conf

添加以下行:

#Enable sending system logs over UDP to rsyslog server
*.* @rsyslog-server-ip:514

#Enable sending system logs over TCP to rsyslog server
*.* @@rsyslog-server-ip:514
##Set disk queue when rsyslog server will be down:

$ActionQueueFileName queue
$ActionQueueMaxDiskSpace 1g
$ActionQueueSaveOnShutdown on
$ActionQueueType LinkedList
$ActionResumeRetryCount -1

保存并关闭文件,然后重新启动 Rsyslog 服务以应用更改:

sudo systemctl restart rsyslog

所有客户端的日志文件都存储在服务器上的目录中。您应该会看到包含客户端计算机主机名的条目,包括几个日志文件:/var/log

ls -l /var/log/

感谢您使用本教程在 Ubuntu 20.04 LTS Focal Fossa 系统上安装 Rsyslog。如需其他帮助或有用信息,我们建议您查看官方 Rsyslog 网站

原创文章,作者:校长,如若转载,请注明出处:https://www.yundongfang.com/Yun3750.html

(0)
打赏 微信扫一扫不于多少! 微信扫一扫不于多少! 支付宝扫一扫礼轻情意重 支付宝扫一扫礼轻情意重
上一篇 2021年10月28日
下一篇 2021年11月16日

相关推荐