Linux日志管理服务 rsyslogd

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Linux日志管理服务 rsyslogd

1. 基本介绍

1) 日志文件是重要的系统信息文件,其中记录了许多重要的系统事件,包括用户的登录信息、系统的启动信息、系统的安全信息、邮件相关信息、各种服务相关信息等。
2) 日志对于安全来说也很重要,它记录了系统每天发生的各种事情,通过日志来检查错误发生的原因,或者受到攻击时攻击者留下的痕迹。
3) 可以这样理解: 日志是用来记录重大事件的工具

2. 系统常用的日志

  • /var/log/ 目录就是系统日志文件的保存位置,看张图
    在这里插入图片描述
  • 系统常用的日志
    在这里插入图片描述
  • 如查看 lastlog 日志,打开的时候不能使用 cat 等命令,直接 lastlog 就能查看了,可以清晰地看到最后一次用户登录的信息等
    在这里插入图片描述

应用案例

  • 使用 root 用户通过 xshell 登陆,第一次使用错误的密码,第二次使用正确的密码登录成功,看看在日志文件/var/log/secure 里有没有记录相关信息

  • 由于现在 secure 信息太多了,先清空下:

echo '' > secure

在这里插入图片描述

  • 先输入 两次错误 的密码
    在这里插入图片描述
  • 再输入 一次正确 的密码登录成功
    在这里插入图片描述
  • 查看 secure 日志记录了什么信息,分别记录了两次失败的登录和一次成功的登录
    在这里插入图片描述
    • 可以通过 secure 查看相关的安全方面的日志信息

      3. 日志管理服务 rsyslogd

  • CentOS 7.6 日志服务是 rsyslogd , CentOS 6.x 日志服务是 syslogd
  • rsyslogd 功能更强大。rsyslogd 的使用、日志文件的格式,和 syslogd 服务是兼容的。
  • 原理示意图:
    在这里插入图片描述

  • 查看 rsyslogd 配置文件

    more /etc/rsyslog.conf
    

    在这里插入图片描述

  • 查询 Linux 中的 rsyslogd 服务是否启动
ps aux | grep "rsyslog" | grep -v "grep"

在这里插入图片描述

-v 表示反向选择,挑选出前面不包含 grep
man grep 查看该参数的含义

在这里插入图片描述

  • 查询 rsyslogd 服务的自启动状态
systemctl list-unit-files | grep rsyslog

在这里插入图片描述

  • 配置文件:/etc/rsyslog.conf
  • 编辑文件时的格式为: *.* 存放日志文件
  • 其中第一个*代表日志类型,第二个*代表日志级别
    1) 日志类型分为:
auth  ## pam 产生的日志
authpriv ##ssh、ftp 等登录信息的验证信息
corn ##时间任务相关
kern ##内核
lpr ##打印
mail ##邮件
mark(syslog)-rsyslog ##服务内部的信息,时间标识
news ##新闻组
user ##用户程序产生的相关信息
uucp ##unix to nuix copy 主机之间相关的通信
local 1-7 ##自定义的日志设备

2) 日志级别分为:

debug ##有调试信息的,日志通信最多
info ##一般信息日志,最常用
notice ##最具有重要性的普通条件的信息
warning ##警告级别
err ##错误级别,阻止某个功能或者模块不能正常工作的信息
crit ##严重级别,阻止整个系统或者整个软件不能正常工作的信息
alert ##需要立刻修改的信息
emerg ##内核崩溃等重要信息
none ##什么都不记录

注意:从上到下,级别从低到高,记录信息越来越少
  • 如:local7 表示日志类型,后面的 * 表示任何一个级别的日志都需要记录
    在这里插入图片描述

  • 日志服务 rsyslogd 记录的日志文件,日志文件的格式包含以下四列:

1) 事件产生的时间
2) 产生事件的服务器的主机名
3) 产生事件的服务名或程序名
4) 事件的具体信息
  • 日志如何查看实例

    /var/log/secure 日志,这个日志中记录的是用户验证和授权方面的信息

  • 日志管理服务应用实例

/etc/rsyslog.conf 中添加一个日志文件/var/log/xdr.log,当有事件发送时(比如 sshd 服务相关事件),该文件会接收到信息并保存,(重启、登录的情况),看是否有日志保存

  • 如:增加所有类型和级别都记录的情况
    在这里插入图片描述

  • 创建日志文件:

> /var/log/xdr.log
  • 重启:
reboot
  • 查看 sshd 服务相关的信息
cat xdr.log | grep sshd

在这里插入图片描述

  • 上面自定义的类型和级别可以根据自身想要的情况去设置
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
10天前
|
Linux Docker 容器
Linux 中停止 Docker 服务报 warning 导致无法彻底停止问题如何解决?
在 Linux 系统中,停止 Docker 服务时遇到警告无法彻底停止的问题,可以通过系统管理工具停止服务、强制终止相关进程、检查系统资源和依赖关系、以及重置 Docker 环境来解决。通过以上步骤,能够有效地排查和解决 Docker 服务停止不彻底的问题,确保系统的稳定运行。
53 19
|
9天前
|
监控 Linux
Linux systemd 服务启动失败Main process exited, code=exited, status=203/EXEC
通过以上步骤,可以有效解决 systemd 服务启动失败并报错 `Main process exited, code=exited, status=203/EXEC` 的问题。关键在于仔细检查单元文件配置、验证可执行文件的有效性,并通过日志分析具体错误原因。确保可执行文件路径正确、文件具有执行权限,并且可以独立运行,将有助于快速定位和解决问题。
48 7
|
2月前
|
存储 运维 监控
Linux--深入理与解linux文件系统与日志文件分析
深入理解 Linux 文件系统和日志文件分析,对于系统管理员和运维工程师来说至关重要。文件系统管理涉及到文件的组织、存储和检索,而日志文件则记录了系统和应用的运行状态,是排查故障和维护系统的重要依据。通过掌握文件系统和日志文件的管理和分析技能,可以有效提升系统的稳定性和安全性。
52 7
|
2月前
|
监控 安全 Linux
启用Linux防火墙日志记录和分析功能
为iptables启用日志记录对于监控进出流量至关重要
|
3月前
|
Linux 应用服务中间件 Shell
linux系统服务二!
本文详细介绍了Linux系统的启动流程,包括CentOS 7的具体启动步骤,从BIOS自检到加载内核、启动systemd程序等。同时,文章还对比了CentOS 6和CentOS 7的启动流程,分析了启动过程中的耗时情况。接着,文章讲解了Linux的运行级别及其管理命令,systemd的基本概念、优势及常用命令,并提供了自定义systemd启动文件的示例。最后,文章介绍了单用户模式和救援模式的使用方法,包括如何找回忘记的密码和修复启动故障。
54 5
linux系统服务二!
|
3月前
|
Linux 应用服务中间件 Shell
linux系统服务!!!
本文详细介绍了Linux系统(以CentOS7为例)的启动流程,包括BIOS自检、读取MBR信息、加载Grub菜单、加载内核及驱动程序、启动systemd程序加载必要文件等五个主要步骤。同时,文章还对比了CentOS6和CentOS7的启动流程图,并分析了启动流程的耗时。此外,文中还讲解了Linux的运行级别、systemd的基本概念及其优势,以及如何使用systemd管理服务。最后,文章提供了单用户模式和救援模式的实战案例,帮助读者理解如何在系统启动出现问题时进行修复。
69 3
linux系统服务!!!
|
3月前
|
监控 Linux 开发者
如何在 Linux 中优雅的使用 head 命令,用来看日志简直溜的不行
`head` 命令是 Linux 系统中一个非常实用的工具,用于快速查看文件的开头部分内容。本文介绍了 `head` 命令的基本用法、高级用法、实际应用案例及注意事项,帮助用户高效处理文件和日志,提升工作效率。
50 7
|
3月前
|
Linux 数据库
Linux服务如何实现服务器重启后的服务延迟自启动?
【10月更文挑战第25天】Linux服务如何实现服务器重启后的服务延迟自启动?
502 3
|
3月前
|
关系型数据库 MySQL Linux
Linux系统如何设置自启动服务在MySQL数据库启动后执行?
【10月更文挑战第25天】Linux系统如何设置自启动服务在MySQL数据库启动后执行?
209 3
|
3月前
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
824 31
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板