1.1 基本介绍
日志文件是重要的系统信息文件,其中记录了许多重要的系统事件,包括用户的登录信息、系统的启动信息、系统的安全信息、邮件相关信息、各种服务相关信息等
日志安全:日志记录了系统每天发生的各种事情,通过日志来检查错误发生的原因,或者受到攻击时攻击者留下的痕迹
日志是用来记录重大事件的工具
1.2 系统日志文件保存位置
/var/log 目录 是系统日志文件的保存位置
1.3 系统常用的日志
2.1 日志管理服务 rsyslogd
Centos7.6日志服务是 rsyslogd,Centos6.x日志服务是syslogd。 rsyslogd功能更强大,且兼容syslogd
2.1.1 原理图
cat /etc/rsyslog.conf
2.1.2 常用命令
查询Linux中的rsyslogd服务是否启动:
ps aux | grep "rsyslogd" | grep -v "grep"
grep -v 指的是反向匹配(找到不包含“”的选项): --invert-match
查询rsyslogd服务的自启动状态
systemctl list-unit-files | grep "rsyslog"
2.1.3 配置文件:/etc/rsyslog.conf
编辑文件时格式为:*.* 存放日志文件
其中第一个*代表日志类型,第二个*代表日志级别 (如果是*则是全部的意思)
1. 日志类型分为:
2. 日志级别分为:
由日志服务rsyslogd记录的日志文件,日志文件格式包含以下4列:
事件产生的时间
产生事件的服务器的主机名
产生事件的服务名或程序名
事件的具体信息
应用实例:在/etc/rsyslog.conf中添加一个日志文件/var/log/hsp.log,当有事件发送时(比如sshd服务相关事件),该文件会接收到信息并保存。演示重启、登录 的情况,看看是否有日志保存(No.120)
2.2 日志轮替
日志轮替即把旧的日志文件移动并改名,同时建立新的空日志文件,当旧日志文件超出保存的范围之后,就会进行删除
2.2.1 日志轮替文件命名
2.2.2 logrotate配置文件
/etc/logrotate.conf 为 logrotate 的全局配置文件:
参数说明:
演示:把自己的日志加入日志轮替
2.2.3 日志轮替机制原理
日志轮替之所以可以在指定的时间备份日志,是依赖系统定时任务。在 /etc/cron.daily/目录,就会发现这个目录中是有 logrotate 文件(可执行),logrotate 通过这个文件依赖定时任务执行的
3.1 查看内存日志
journalctl 可以查看内存日志
3.1.1 常用指令
journalctl ##查看全部
journalctl -n 3 ##查看最新3条
journalctl --since 19:00 --until 19:10:10 ##查看起始时间到结束时间的日志,可加日期
journalctl -p err ##报错日志
journalctl -o verbose ##日志详细内容
journalctl _PID=1245 _COMM=sshd ##查看包含这些参数的日志(在详细日志查看)
或者 journalctl | grep sshd
注意:journalctl 看的是内存日志,重启清空
3.1.2 演示案例
使用 journalctl | grep sshd 来看看用户登录清空,重启系统,再次查询,看看日志有没有什么变化