日志管理
1 日志系统
在 centos7 中,系统日志消息由两个服务负责处理:systemd-journald和rsyslog
/var/log目录由 rsyslog 维护,里面存放一些特定系统和服务的日志文件。
日志文件 | 作用 |
---|---|
/var/log/messages | 大部分系统日志消息(不包括:安全和身份验证的消息日志、邮件服务器相关的消息日志) |
/var/log/secure | 安全和身份验证相关的消息和登录失败的日志文件(如ssh远程登录失败) |
/var/log/maillog | 与邮件服务器相关的消息日志文件 |
/var/log/cron | 与定期执行任务相关的日志文件 |
/var/log/boot.log | 与系统启动相关的消息记录 |
/var/log/dmesg | 与系统启动相关的消息记录 |
/var/log/wtmp | 记录每个用户的登录次数和持续时间等信息,可用last命令查看登录成功的记录,可用 -f 动态查看 |
/var/log/btmp | 查看登录系统失败的或者暴力破解系统的用户,一般小于1M,用lastb命令查看日志,可以使用防火墙拒绝该IP地址的ssh请求 |
清空日志的方法:
1、仅清空文件内容,不改变inode号(建议使用) 。
例如清空/var/log/btmp日志
echo "" > /var/log/btmp
2、删除再创建文件,inode号改变,要重启相应的服务。
rm -f /var/log/btmp && touch /var/log/btmp
日志可以分为八种类别,也可以分为八个级别。
日志类别 | 作用 | 级别(低–>高) | 优先级 | 严重性 |
---|---|---|---|---|
daemon | 后台进程相关的 | local7 | debug | 信息对开发人员调试应用程序有用,在操作过程中无用 |
kem | 内核产生的信息 | local6 | info | 正常的操作信息,可以收集报告,测量吞吐量等 |
lpr | 打印系统产生的 | local5 | notice | 注意,正常但重要的事件 |
authpriv | 安全认证 | local4 | warning | 警告,提示如果不采取行动,将会发生错误。比如文件系统使用 90% |
cron | 定时相关 | local3 | err | 错误,阻止某个模块或程序的功能不能正常使用 |
邮件相关 | local2 | crit | 关键的错误,已经影响了整个系统或软件不能正常工作的信息 | |
syslog | 日志服务自身的 | local1 | alert | 警报,需要立刻修改的信息 |
news | 新闻系统 | local0 | emerg | 紧急,内核崩溃等严重信息 |
2 rsyslog日志服务
# rsyslog服务配置文件
# 通过该配置文件,可以看到各类日志及其日志文件存放位置
[root@master ~]# cat /etc/rsyslog.conf
# rsyslog configuration file
# For more information see /usr/share/doc/rsyslog-*/rsyslog_conf.html
# If you experience problems, see http://www.rsyslog.com/doc/troubleshoot.html
#### MODULES ####
# The imjournal module bellow is now used as a message source instead of imuxsock.
$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)
$ModLoad imjournal # provides access to the systemd journal
#$ModLoad imklog # reads kernel messages (the same are read from journald)
#$ModLoad immark # provides --MARK-- message capability
# Provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514 是否允许514端口接收使用UDP协议转发过来的日志
# Provides TCP syslog reception
#$ModLoad imtcp
#$InputTCPServerRun 514 是否允许514端口接收使用TCP协议转发过来的日志
#### GLOBAL DIRECTIVES ####
# Where to place auxiliary files
$WorkDirectory /var/lib/rsyslog
# Use default timestamp format
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
# File syncing capability is disabled by default. This feature is usually not required,
# not useful and an extreme performance hit
#$ActionFileEnableSync on
# Include all config files in /etc/rsyslog.d/
$IncludeConfig /etc/rsyslog.d/*.conf
# Turn off message recepti