Linux配置 Rsyslog 服务器
如何在 Ubuntu 上设置 Rsyslog 服务器 – Digitalixy.com
日志文件和Rsyslog简介
日志文件是用于保存系统活动信息的文件,包括授权和访问尝试、启动和关闭尝试,以及服务的启动和关闭。不同类型的活动有不同的日志文件。Rsyslog是一款开源程序,用于配置Linux操作系统的日志服务器和客户端。
在这一部分,将在 Ubuntu 操作系统上设置 Rsyslog 服务器。 我们将使用两台 Ubuntu 机器。
在一台 Ubuntu 机器上,我们将 Rsyslog 配置为日志服务器,
在另一台机器上; 我们将 Rsyslog 配置为将日志发送到 Rsyslog 服务器的客户端。
在Ubuntu上配置Rsyslog服务器
在这一部分,我们将在两台Ubuntu机器上设置Rsyslog服务器。一台机器将被配置为Rsyslog服务器,另一台机器将被配置为将日志发送到Rsyslog服务器的客户端。
安装Rsyslog
如果Rsyslog未安装,可以通过以下命令进行安装:
1 | sudo apt install rsyslog |
在安装过程中,它会提示您 是/否 用于继续安装 Rsyslog 的选项。 按 是 接着Enter 继续。
验证Rsyslog安装并检查其服务状态:
1 | sudo systemctl status rsyslog |
配置Rsyslog服务器
编辑Rsyslog配置文件/etc/rsyslog.conf
:
1 | sudo nano /etc/rsyslog.conf |
在配置文件中添加以下行,用于接收通过UDP和TCP发送的syslog:
1 | # Receive syslog over UDP |
创建一个模板,用于存储传入的syslog消息:
1 | $template remote-incoming-logs, "/var/log/%HOSTNAME%/%PROGRAMNAME%.log" |
保存并关闭配置文件,然后重启Rsyslog服务:
1 | sudo systemctl restart rsyslog |
您还可以使用以下命令验证 Rsyslog 是否正在侦听 TCP/UDP 端口 514:
1 | $ sudo ss -tunlp | grep 514 |
应该收到以下输出:
配置防火墙
如果系统启用了防火墙,打开TCP和UDP端口514,Rsyslog服务器使用这些端口接收来自远程客户端的日志:
1 | sudo ufw allow 514/tcp |
在 Ubuntu 上配置 Rsyslog 客户端
现在在另一个 Ubuntu 系统上,我们将执行 Rsyslog 客户端的配置。 然后,此客户端会将其日志发送到 Rsyslog 日志记录服务器。
安装Rsyslog
如果尚未安装Rsyslog,执行以下命令:
1 | sudo apt install rsyslog |
修改配置文件
编辑Rsyslog配置文件:
1 | sudo vim /etc/rsyslog.conf |
具体细节看参考图:
在 Rsyslog 配置文件的末尾添加以下行。 确保更换 192.168.72.204 与您的 Rsyslog 日志记录服务器的 IP 地址。(这里要注意ip地址,如172.31.224.190)
1 | ,#Send system logs to rsyslog server over RDP |
1 | $ActionQueueFileName queue |
修改配置文件
1 | vim /etc/rsyslog.d/50-default.conf |
添加环境变量
在vim /etc/profile最后添加
1 | export PROMPT_COMMAND="history -a" |
重启服务
现在运行以下命令重启 Rsyslog 的服务:
1 | /etc/init.d/rsyslog restart |
在 Rsyslog Server 中查看客户端的日志文件
完成上述所有配置后,您可以查看客户端发送到 Rsyslog 服务器的日志文件。 在您的 Rsyslog 服务器机器上,在终端中运行以下命令:
1 | $ ls /var/log/ # 具体看文件的命名 |
在上述命令的输出中,您将看到一个与您的客户端系统主机名相同的目录(我们的 ubuntu2 example)。
要查看客户端机器的日志文件,请列出该目录的内容:
1 | $ sudo ls /var/log/ubuntu2 |
这就是它的全部! 在本指南中,我们介绍了如何在 Ubuntu OS 上将 Rsyslog 配置为日志服务器和客户端以将日志发送到 Rsyslog 服务器。 我们还介绍了如何查看客户端发送到日志服务器的日志。