在?您的rsyslog日志管理手册到了,请查收

article/2025/10/5 22:09:17

rsyslog日志管理和logrotate日志存储轮转

前言:

系统日志是记录服务器系统运行和软件运行状况的记录程序,如果系统和软件在运行中出错,我们就可以在日志中获取到问题发生时的记录,并以此寻求解决问题的方法。

在这里插入图片描述

一.rsyslog 系统日志管理系统

1.什么是 rsyslog 系统日志管理系统

基于TCP网络协议传输日志信息。
更安全的网络传输方式。
有日志信息的即时分析框架。
后台数据库。
在配置文件中可以写简单的逻辑判断。
与syslog配置文件相兼容

2.如何启动 rsyslogd 日志管理系统

#####查看
ps aux | grep "rsyslog"#####启动
systemctl  start rsyslog#####关闭
systemctl  stop rsyslog

3. 日志保存的目录

/var/log/massages
记录系统和服务运行的状态 信息和错误信息
/var/log/secuer
服务认证,用户登陆信息
/var/log/yum.log
yum相关的日志
/var/log/cron
任务计划相关的日志
/var/log/dmesg
开机启动相关的日志
/var/log/maillog
邮件日志
/var/log/boot.log
系统启动信息

日志内容分析,举栗查看:查看secuerl安全认证日志信息
可以看到下图,大致分为:
月份 日期 时分秒 服务器主机名 程序(sshd或则su) 模块 详细信息
可以看到在14点32分创建了一个king用户,并设置了密码,33分在10.8.161.61终端登陆king用户,35分 su切换到root用户,密码输入错误的动作的记录。
在这里插入图片描述

log目录下除了系统默认日志外,采用RPM模式安装的软件日志也会出现在/var/log/下,一般以程序软件的名字创建一个目录,用来单独存放该软件的日志文件。采用yum安装的,就不在这里,而在源码包安装的目录下。例如
/var/log/httpd/
RPM安装方式,apache网站程序的日志
/usr/local/httpd/logs/
YUM安装方式,apache网站程序的日志

4. rsyslog如何配置
/etc/rsyslog.conf
rsyslogd 的主配置文件(关键)。主要有三大项可以选择配置

MODULES********************: 相关模块配置

GLOBAL DIRECTIVES******: 全局配置

RULES************************: 日志记录相关的规则设置

1.)#### MODULES #### 说明,远程服务日志配置。
相关模块配置,这里可以选择多种监控方式,如果我们只是本地服务,那么这里直接全部注释掉就可以了。如果远程服务器日志,那么我们就要做以下配置:
在这里插入图片描述

服务端:192.168.1.1 客户端:192.168.0.2

步骤一:服务端选择tcp 514端口
步骤二:在服务端 路径etc/rsyslog.d/*附加配置文件加,客户要监控的客户端的配置文件,例如我监控的是192.168.1.2,就在路径下创建一个 192.168.1.2.conf的配置文件,
vim编辑下内容: :fromhost -ip, isequal ,“192.168.1.2” /var/log/client/192.168.1.2.log
fromhost 哪个主机名发过来的
fromhost-ip 哪个ip发过来的
msg 从日志信息里的内容判断
hostname 从日志中的主机名判断
比较操作符包括以下内容
contains 包含
isequal 等于
startswith 以…开头
步骤三: 192.168.1.2客户机打开 /etc/rsyslog.conf , 在行的末尾加上指定日志服务器的ip呆地址和端口号 *.*@@192.168.1.1:514 退出,重启即可。
在这里插入图片描述在这里插入图片描述
2.)#### GLOBAL DIRECTIVES #### 说明

在这里插入图片描述
3.)#### RULES #### 说明

由设备载体+安全级别+日志存放位置组成。

在这里插入图片描述设备:
关于设备或者设备载体,是系统默认的 ,我们可以在后面规定该类设备,监控日志的保存路径。
那么遇到第三方软件,它并不是rsyslog管理的,而我们想让它交给rsyslog管理,我们怎么操作呢?
思路: 我们想第三方软件交给rsyslog来管理日志,那么我们就需要修改第三方软件的配置文件。例如修改 vim /vsftpd.cofn 。如果不知道修改那个参数,我们可以先man一下vsftpd.conf 在帮助文档中搜索关键词:rsysylog就可以出现提示,我们按照提示,就可以知道如何修改配置交给rsyslog管理,归属于那个设备,或者设备载体,然后在设置管理后的日志文件放在哪里。
举个栗子:
在ssh配置中更改设备载体,然后在单独指定一个日志目录保存地
先打开ssh的配置文件,vim /etc/ssh/sshd-config ,

SyslogFanility  AUTHPRIV     #可以看到默认的这个载体指向的都是secure安全日志里
######我们给注释掉,然后改成没有用的设备载体,重新指向日志目录
SyslogFanility  local1       #这个设备载体不可以自己自定义。local1是空闲的载体,就设置这个了,随后在指定目录即可

在这里插入图片描述

在这里插入图片描述

符号:

在这里插入图片描述
安全级别:
在这里插入图片描述

在这里插入图片描述

存放日志目录:

在这里插入图片描述

二. logrotate 日志存储轮转

1.为什么要做日志轮转

1.避免日志过大,占用过多的 /var/log 空间
2.方便日志查看
3.日志的轮转程序是 logrotate
4. logrotate 本身不是系统的守护进程,他是通过计划任务crond每天执行的。

2.如何配置日志轮转

  1. 打开logrotate 的配置文件
vim /etc/logrotate.conf 
  1. 配置默认轮转条件
# see "man logrotate" for details
# rotate log files weekly
weekly  #一个礼拜# keep 4 weeks worth of backlogs
rotate 4   #保留四份# create new (empty) log files after rotating old ones
create     #创建一个新的日志文件# use date as a suffix of the rotated file
dateext    #时间戳,新日志文件# uncomment this if you want your log files compressed
#compress   #压缩日志文件,查看时候需要解压# RPM packages drop log rotation information into this directory
include /etc/logrotate.d    加载外部目录
  1. 配置自定义轮转条件
    除以上自定义文档 我们还可以自定义轮转方式
# no packages own wtmp and btmp -- we'll rotate them here
/var/log/wtmp {              #指定要配置的日志文件monthly                  #按照月来轮换,而不是上面默认的周create 0664 root utmp    #轮转后的新日志文件,权限是0664,属于root用户,utmp组minsize 1M           #大小不超过1Mrotate 1                 #保留1份,一月一次
}/var/log/btmp {missingok                #如果日志文件不存在,不报错monthlycreate 0600 root utmprotate }

所有日志都可以在这里设置,但是设置的款项多了,不好查找,于是我们可以设置子配置文件,在自定义设置目录里,一个程序日志一个配置规则。

在这里插入图片描述
举个栗子:
设置ssh自定义轮转,保留一个月的日志文件,日志大于15M直接轮转。
首先在子配置目录里创建一个sshd的轮转配置文件

vim /etc/logrotate.d/sshd

编辑以下配置内容,保存,重启服务。

/var/log/sshd.log {              #日志所在目录missingok                    #没有日志不报错monthly                      #每月进行轮转create 0664 root root        #创建新的日志权限为0664  属主是root  属组是rootminsize 15M              #最大15Mrotate 1                     #轮转1次 
}

======================================================================================================================================================================================================================================================================================================
辛苦浏览观看,如果对你有帮助,请顺手点个赞吧 (σ゚∀゚)σ…:*☆


http://chatgpt.dhexx.cn/article/fvCeYNnn.shtml

相关文章

日志审计与分析实验三(rsyslog服务器端和客户端配置)(Linux日志收集)

文章目录 Linux日志收集一、实验目的:1、掌握rsyslog配置方法2、配置rsyslog服务收集其他Linux服务器日志: 二、实验步骤:1、前期配置2. rsyslog的三种传输协议1、udp传输方式2、tcp传输方式3、relp传输方式 Linux日志收集 一、实验目的: 1…

Linux系统之rsyslog配置

目录 Rsyslog简介 Linux配置rsyslog 配置实验: 实验环境: 实验步骤: 实验准备: 针对UDP: 针对TCP: 针对RELP: 结果验证: 1、UDP: 2、TCP: 3、RE…

rSyslog日志

日志服务管理 系统日志管理 系统日志介绍 日志的作用: 软件的运行记录软件运行排错运行分析 日志记录的内容包括: 历史事件:时间,地点,人物,事件日志级别:事件的关键性程度,Lo…

Linux rsyslog详细介绍

转自:http://llei623.blog.163.com/blog/static/852075042010111482731766/ 作者:llei WEB服务器多的时候检查日志是一件痛苦的事情,用 perl 脚本登录到服务器上grep一些错误信息两次之后就觉得是纯体力活,想办法偷懒。 准备弄…

Linux系统日志rsyslogd

Linux系统日志rsyslogd Linux系统日志 Linux上使用rsyslogd守护进程接收用户进程输出的日志和接收内核日志。 用户进程是通过syslogd函数生成系统日志。该函数将日志输出到一个UNIX本地域socket类型(AF_UNIX)的文件/dev/log中,rsyslogd则监听该文件以…

Linux之 rsyslog、日志轮转

1.rsyslog 1.1rsyslog介绍 Rsyslog的全称是 rocket-fast system for log,它提供了高性能,高安全功能和模块化设计。rsyslog能够接受从各种各样的来源,将其输入,输出的结果到不同的目的地。rsyslog可以提供超过每秒一百万条消息给…

rsyslog日志服务简介

1、简介 rsyslog是一个linux系统日志服务的工具,主要用来监控收集系统从开机运行之后所发生的所有日志,包括内核日志,服务日志,应用日志等等;记录的日志全部都写到/var/log下面,常用的有dmsg(内…

Linux 日志管理 Rsyslog Loganalyzer

Syslog常被称为系统日志或系统记录,是一种用来在互联网协议(TCP/IP)的网上中传递记录档消息的标准。这个词汇常用来指涉实际的syslog 协议,或者那些提交syslog消息的应用程序或数据库。 syslog协议属于一种主从式协议&#xff1a…

建立 rsyslog 日志服务器

文章目录 1. rsyslog 介绍2. 实验目的3. 实验环境4. 配置服务端5. 配置客户端6. 在服务端验证效果 1. rsyslog 介绍 rsyslog 是一个快速处理收集系统日志的开源程序,提供了高性能、安全功能和模块化设计。rsyslog 是 syslog 的升级版,它将多种来源输入输…

rsyslog配置

rsyslog配置文件详解: #### MODULES #### #定义日志的模块。 $ModLoad imuxsock #imuxsock为模块名,支持本地系统日志的模块。 $ModLoad imjournal #imjournal为模块名,支持对系统日志的访问。 #$ModLo…

syslog 和 rsyslog

1. 介绍 rsyslog可以简单的理解为syslog的超集,在老版本的Linux系统中,Red Hat Enterprise Linux 3/4/5默认是使用的syslog作为系统的日志工具,从RHEL 6 开始系统默认使用了rsyslog。 其特性包括: 支持输出日志到各种数据库&…

rsyslog日志服务详解

rsyslog日志服务详解 原文出处:http://blog.51cto.com/6638225/1862902 内容: 1、rsyslog日志服务简介 2、rsyslog的配置详解 3、实现日志服务器收集日志及last、lastb、dmseg命令的使用 4、实现日志存储在mysql中 一、rsyslog日志服务简介 ​ 日…

【Linux】rsyslog日志服务(配置,测试、日志转储)

一、rsyslog简介 Rsyslog的全称是 rocket-fast system for log ,可用于接受来自各种来源的输入,转换 它们,并将结果输出到不同的目的地。 它提供了高性能、强大的安全功能和模块化设计。虽然rsyslog最初是一个常规的系 统日志,但它已经发展…

Linux原生日志系统Rsyslog详解

一、概述 Rsyslog 是一个 syslogd 的多线程增强版,依然基于Syslog协议(linux6之前默认使用syslog程序,centos6用rsyslog所取代)完成系统日志的处理转发,官方形容它是一个极速(如火箭般快速)的日…

N皇后问题-回溯法-C语言

关于对N皇后问题和回溯法的理解 个人非常推荐下面这个视频:算法与数据结构,回溯法求解八皇后,最经典的递归问题_哔哩哔哩_bilibili八皇后问题是计算机科学中最为经典的问题之一,该问题由国际西洋棋棋手马克斯贝瑟尔于1848年提出。…

Java——N皇后问题

题目链接 leetcode在线oj题——N皇后 题目描述 按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n &#xff…

N 皇后问题

n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。 每一种解法包含一个不同的 n 皇后问题 的棋子放置方案,该方案中 Q 和 . 分别代表了皇后和…

N皇后问题(C++)

n−皇后问题是指将 n 个皇后放在 nn 的国际象棋棋盘上,使得皇后不能相互攻击到,即任意两个皇后都不能处于同一行、同一列或同一斜线上。 现在给定整数 n,请你输出所有的满足条件的棋子摆法。 输入格式 共一行,包含整数 n。 输出…

回溯法求解n皇后问题

一、实验目的 1.掌握能用回溯法求解的问题应满足的条件; 2.加深对回溯法算法设计方法的理解与应用; 3.锻炼学生对程序跟踪调试能力; 4.通过本次实验的练习培养学生应用所学知识解决实际问题的能…

N皇后问题(java)

n皇后问题是一个以国际象棋为背景的问题:在nn的国际象棋棋盘上放置n个皇后,使得任何一个皇后都无法直接吃掉其他的皇后,即任意两个皇后都不能处于同一条横行、纵行或斜线上。 我们通过回溯的方法将所有可能的情况遍历一遍 假设现在有一个4*4…