前言

       CentOS 7系统生成的日志主要是通过systemd日志守护进程进行处理和记录的。其日志记录的内容包括系统和服务启动和关闭信息、系统运行过程中产生的错误警告通知信息等等。

系统日志通常被记录在/var/log目录下,主要的日志文件有:

  1. messages: 系统基本日志信息,包括系统启动、关闭网络等信息。

  2. secure: 系统认证授权相关的日志信息,如登录su操作sudo操作等。

  3. journalctl: 通过journalctl命令可以查看系统日志的详细信息,包括系统启动信息、服务启动信息、错误信息等。

       除此之外,系统日志还包括定时任务的日志信息、yum软件包管理器的日志信息、Apache Web服务器访问错误日志、MySQL数据库系统的日志信息等。管理员可以根据不同需求选择查看特定的日志文件,以了解系统的运行情况和问题

目录

1 引言

 1.1 日志的重要性

 1.2 常见的系统日志

2 rsyslog日志管理

 2.1 日志类型

 2.2 日志优先级

 2.3 自定义日志

3 logrotate日志轮转【重点!!!】

 3.1 日志轮转

 3.2 日志轮转实例

 3.3 日志安全,操作日志的隐藏权限


1 引言

 1.1 日志的重要性

Linux系统日志管理员来说,是了解系统运行的主要途径,因此需要对Linux日志系统有个详细的了解。

Linux 系统内核和许多程序会产生各种错误信息告警信息和其他的提示信息,这些各种信息都应该记录到日志文件中,完成这个过程的程序就是 rsyslogrsyslog 可以根据日志的类别优先级将日志保存到不同的文件中。

 1.2 常见系统日志

/var/log/messages记录Linux操作系统常见的系统和服务错误信息以及系统的各种事件(包括 kernel 日志、syslogauth 日志等)。

/var/1og/boot.log记录了系统在引导过程中发生的事件,就是Linux系统开机自检过程显示的信息。

/var/log/lastlog记录最后一次用户成功登陆时间、登陆IP等信息(一般通过命令lastlog 查看)。

/var/1og/secureLinux系统安全日志,记录用户工作组变坏情况、用户登陆认证情况。/var/log/yum.log:记录 yum管理器相关的信息,如软件安装更新等。

/var/log/httpd/:记录 Apache 访问日志和错误日志。

/var/log/mysql/:记录 MySQL 数据库访问日志和错误日志。

【单独讲述下/var/log/messages和/var/log/secure

(1)/var/log/messages

使用tail -f /var/log/messages”命令查看日志。

tail -f /var/log/messages

接下来我们重新打开窗口使用systemctl stop httpd”和“systemctl start httpd”命令,查看日志情况。

systemctl stop httpd
systemctl start httpd

 (2)/var/1og/secure

使用tail -f /var/log/secure”命令查看日志,接下来我们重新打开个窗口

tail -f /var/log/secure

测试一:

使用useradd mortalz7”命令创建一个新用户mortalz7,同时我们使用passwd mortalz7”命令更改用户密码

【在此过程中我们故意输错密码一次,观察下日志的变化】

useradd mortalz7
passwd mortalz7

查看/var/1og/secure系统日志的变化

测试二:

我们使用su mortalz7”命令切换用户到mortalz7并退出使用“exit”命令)。

su mortalz7

 

同时我们查看/var/log/secure系统日志的变化

我们将会发现系统日志出现如图所示情况。

 

2 rsyslog日志管理

 2.1 日志类型

authpam产生的日志

authpriv:ssh,ftp登录信息的验证信息

cron时间任务相关

kern:内核

lpr打印

mail:邮件

mark(syslog)-rsyslog:服务内部的信息,时间标识

news新闻

user:用户程序产生的相关信息

 2.2 日志优先级

日志级别分为:(7种日志级别 代号0-7)

0  debug调试信息的,日志信息最多

1  info 一般信息的日志,最常用

2  notice具有重要性的普通条件的信息

3  warning 警告级别

4  err 错误级别,阻止某个功能或者模块不能正常工作的信息

5  crit 严重级别,阻止整个系统或者整个软件不能工作的信息

6  alert 需要立刻修改的信息

7  emerg 内核崩溃等严重信息

none 不记录任何信息

【其中warningerr常见】

 2.3 自定义日志

rsyslog格式日志对象.日志级别+日志文件

. 表示大于或者等于后面指定的日志级别

.= 表示等于侯建指定的日志级别

.! 表示不要这个级别的信息

举例:

(1)*.*   

第一个*表示的是日志类型,要存储哪一方面的日志;后面的.*表示的是你想要定义什么级别。

(2)kern.err  /var/log/kernel.log  

err第四级别,大于错误级别写到/var/log/kernel.log(自己定义的文件)。

(3)mail.info  /var/log/mail.log  

所有大于等于info级别的mail邮件都写到/var/log/mail.log。

好了,了解的差不多了,最终你就可以使用vim /etc/rsyslog.conf命令开始编写啦~

编写成功后,记得重启日志服务,让本机的日志生效

systemctl restart rsyslog

logrotate日志轮转【重点!!!】

 3.1 日志轮转

首先先了解下配置文件

vim /etc/logrotate.conf

//全局配置

weekly 轮转周期默认一周轮转一次

rotate4 轮转次数 默认轮转4次(只保留四份文件,当第五份日志文件产生之后,将自动删除最旧的那份文件)

create 创建新文件

dateext轮转时刻的时间作为轮转文件的结尾

//局部配置

include /etc/logrotate.d

missingok 在文件不存在时候也不报错

create 0600 root utmp

强制轮转

logrotates /var/lib/logrotate/logrotate.status  /etc/logrotate.conf

s 指定最后的日志轮转记录文件为/var/lib/logrotate/logrotate.status

 3.2 日志轮转实例

测试日志轮转,轮转文件/var/log/yum.log

(1)配置轮转规则vim /etc/logrotate.d/yum

vim /etc/logrotate.d/yum

notifempty表示空文件不轮转(在notifempty前面加#,使空文件也轮转)

(2)为了验证实验的成功性,我们修改下文件内容(如图)。

(3)查看:ls /var/log/yum.*,只有/var/log/yum.log

ls /var/log/yum.*

(4)使用date命令查看当前时间

date

修改日期daily是以天来算的,不能等一天再来看效果,所以我们直接选择修改日期

date 09301805

date后面加“月日时分”

(5)执行手动轮转命令

logrotate /etc/logrotate.conf

(6)查看:ls /var/log/yum.*

多了个日志文件,成功啦~

 3.3 日志安全操作日志的隐藏权限

(1)建议测试时先把/etc/logrotate.d/syslogmessages删除vim命令进入/etc/logrotate.d/syslog中,删除/var/log/messages一行

vim /etc/logrotate.d/syslog

(2)删除完成后,在最下面添加如下命令:

/var/log/messages  {
prerotate
        chattr -a /var/log/messages
    endscript

#notifempty
 daily
 create 0777 root root
 missingok
 rotate 3

postrotate
        chattr +a /var/log/messages
    endscript
}

 添加成功后,输入“:wq”保存退出

(3)执行手动轮转命令

logrotate /etc/logrotate.conf

运行完毕后没有报错说明编写没有问题,如果报错说明刚才/etc/logrotate.d/syslog中编写有错。(比如说missingok没有空格或者postrotate打错字母等等。)

【为多个日志文件配置日志轮转】

vim命令进入/etc/logrotate.d/syslog中,删除所想要修改的在最下面进行添加即可(跟刚才同理)

创作不易,给个三连吧~

原文地址:https://blog.csdn.net/m0_64304713/article/details/133438972

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_30034.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注