系统日志管理
系统默认的日志分类记录文件说明
1./var/log/lastlog
##记录每个用户最近登录系统的时间, 可以通过lastlog指令读取
2./var/run/utmp
##记录每个用户登录系统的时间, who、 users、finger 等指令会查这个文件
3./var/log/wtmp
##记录每个用户登入与登出的时间, last这个指令会查这个文件。这个文件也记录 shutdown及reboot的动作
4./var/log/secure
##ssh登录的记录信息包括失败的记录信息,可以通过查看些日志查看机器是否被人扫描
5./var/log/maillog
##记录sendmail及pop等相关讯息
6./var/log/cron
##记录crontab的相关信息
7./var/log/dmesg
##dmesg会将这个文件显示出来,它是开机时的系统自检的信息,同时也会记录硬件错误信息
8./var/log/xferlog
##记录ftp相关的日志信息
9./var/log/messages
##系统大部份的日志信息,包括login、check password、failed login、ftp、su等等
系统日志信息等级
debug 级别最低,详细的了解系统程序的运行情况,在任何地方都可以用;
info 重要,输出信息:用来反馈系统的当前状态给用户,以便定位问题;
notice 最具有重要性的普通条件的信息
warning, 可修复,系统可继续运行下去;
err 错误级别,阻止某个功能或者模块不能正常工作的信息,可修复性,但无法确定系统会正常的工作下去
crit 严重级别,阻止整个系统或者整个软件不能正常工作的信息
alert 需要立刻修改的信息
emerg 内核崩溃等严重信息
none 什么都不记录
示例
把系统中所有日志采集到/var/log/westos文件中
1. vim /etc/rsyslog.conf
2. *.* /var/log/westos
3. systemctl restart rsyslog ##重启服务
4. systemctl restart sshd ##生成日志
5. cat /var/log/westos
日志的远程同步
在日志发送方:
vim /etc/rsyslog.conf
*.* @172.25.254.204 ##"@"表示udp协议发送,“@@”表示tcp协议发送
systemctl restart rsyslog
在日志接收方:
vim /etc/rsyslog.conf
15 $Modload imudp ##日志接受模块
16 $UDPServerRun 514 ##开启接收端口
systemctl restart rsyslog ##重启服务
systemctl stop firewalld ##关闭火墙
systemctl disable firewalld ##设定火墙开机关闭
测试:
1. 清空rc.local文件
> /etc/rc.d/rc.local
2.然后重新启动reboot
3.在发送端和接受端都清空日志文件
> /var/log/messages
4.在日志发送方
logger testmsg
5.在接收端
cat /var/log/messages