Linux日志管理服务 rsyslogd

简介: 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日志并进行多维度分析。
目录
相关文章
|
23天前
|
存储 监控 安全
Linux系统日志
【4月更文挑战第6天】Linux系统日志,关键用于记录系统状态和事件,包括内核、系统、安全和应用日志,助力管理员诊断问题、确保系统正常运行。日志管理涉及收集、分析、备份等,常用工具如rsyslog、systemd-journal和logrotate(用于日志轮转)。重视日志文件的存储管理,防止空间占用过多。
20 1
Linux系统日志
|
3天前
|
监控 Linux 开发者
【专栏】如何在 Linux 中优雅的使用 head 命令,用来看日志简直溜的不行
【4月更文挑战第28天】`head`命令是Linux系统中用于快速查看文件开头内容的工具,常用于处理日志文件。基本用法包括指定查看行数(如`head -n 10 file.txt`)和与其他命令(如`grep`)结合使用。高级用法涉及动态查看日志、过滤内容、管道操作及在脚本中的应用。实际应用案例包括监控系统日志、排查错误和分析应用日志。使用时注意文件存在性、行数选择及权限问题。熟练掌握head命令能提升工作效率,结合其他工具可实现更多功能,助力Linux用户提升技能。
|
12天前
|
数据可视化 Linux Docker
Linux系统使用Docker部署Dashy导航页服务并实现公网环境访问
Linux系统使用Docker部署Dashy导航页服务并实现公网环境访问
|
12天前
|
数据可视化 数据挖掘 Linux
如何在Linux部署DataEase数据分析服务并实现无公网IP远程分析内网数据信息
如何在Linux部署DataEase数据分析服务并实现无公网IP远程分析内网数据信息
|
12天前
|
存储 网络协议 Ubuntu
如何使用内网穿透远程访问Linux SVN服务?
如何使用内网穿透远程访问Linux SVN服务?
|
15天前
|
存储 关系型数据库 MySQL
Linux服务详解
Linux服务详解
29 0
|
16天前
|
网络协议 Ubuntu Linux
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
Linux 下 TFTP 服务搭建及 U-Boot 中使用 tftp 命令实现文件下载
|
16天前
|
SQL 监控 安全
Linux&Windows 日志分析 陇剑杯 CTF
Linux&Windows 日志分析 陇剑杯 CTF
|
16天前
|
存储 Linux 数据安全/隐私保护
如何在Linux搭建MinIO服务并实现无公网ip远程访问内网管理界面
如何在Linux搭建MinIO服务并实现无公网ip远程访问内网管理界面
|
23天前
|
监控 Java Linux
linux下监控java进程 实现自动重启服务
linux下监控java进程 实现自动重启服务