欢迎光临散文网 会员登陆 & 注册

常用的系统日志管理

2022-02-10 11:57 作者:Vecloud_  | 我要投稿


/var/log


常用的系统日志如下:


核心启动日志:/var/log/messages


系统报错或重启服务等日志:/var/log/messages


邮件系统日志:/var/log/maillog


cron(定制任务日志):/var/log/cron #计划日志执行成功与否,在这个文件中


验证系统用户登录: /var/log/secure


记录所有的登录和登出:/var/log/wtmp


每个用户最后登入信息:/var/log/lastlog


错误的登入信息:/var/log/btmp


>/var/log/wtmp #清空登入登出记录


last #查看wtmp


lastlog #查看用户最后登录时间


lastb #查看错误登入信息,可以判断是否存在暴力破解


2.日志记录方式: 先分类,然后每个类中再分级别


主要7种日志分类(FACILITY):


authpriv安全认证相关


cron at和cron定时相关


daemon后台进程相关


kern内核产生


lpr打印系统产生


mail邮件系统相关


syslog日志服务本身


news新闻系统 (和BBS差不多,新闻组)


uucp uucp系统产生 。Unix-to-Unix Copy(UNIX至UNIX的拷贝),Unix系统的一项功能,允许计算机之间以存储-转发方式交换e-mail和消息。在Internet兴起之前是Unix系统之间连网的主要方式。


local0到local7 #共8个类型,系统保留的:8个系统日志类型,给其它程序使用。或用户 自定义用


8个日志级别:以下排列,由轻到重


级别(PRIOROTY):


debug排错信息。开发人


info正常信息


notice稍微要注意的


warn警告


err(error) 错误


crit(critical)关键的错误


alert警报警惕


emerg(emergency)紧急,突发事件


日志服务:


1).rhel5:


服务名称:syslog


配置文件:


#vim /etc/syslog.conf


2) .RHEL6:rsyslog


配置文件:


#vim /etc/rsyslog.conf


3).RHEL7:rsyslog


配置文件:


#vim /etc/rsyslog.conf


进入配置文件显示内容如下:


1. kern.*内核类型的所级别日志


2 *.info;mail.none;news.none;authpriv.none;cron.none:由于 mail, news, authpriv, cron 等类别产生的讯息较多,因此在 /var/log/messages 里面不记录这些项目。除此其他讯息都写入/var/log/messages 中。所以messages 文件很重要


3. authpriv.*认证方面的讯息均写入 /var/log/secure 档案;


4. mail.*:邮件方面的讯息则均写入 /var/log/maillog 档案;


5. cron.*:例行性工作排程均写入 /var/log/cron 档案;


6. local7.*:将本机开机时应该显示到屏幕的讯息写入到 /var/log/boot.log 档案中;


/etc/rsyslog.conf中日志输入规则:


例:


. :代表『比后面还要高的等级都被记录下来』的意思,


例如: mail.info 代表只要是 mail 类型的信息,而且该信息等级高于 info (包括 info 本身)时,就会被记录下来的意思。


.=:代表所需要的等级就是后面接的等级而已, 其他的都不要!


.!:代表不等于,亦即是除了该等级外的其他等级都记录。


举例:


cron.none对于cron类型日志不记录任何信息


cron.=err对于cron类型日志只记录err级别的信息


cron.err对于cron类型日志记录大于err级别的信息


cron.!err对于cron类型日志不记录err级别的信息,其他级别都记录。


记录日志的位置:


1、日志的相对路径:通常就是放在 /var/log中


2、 存在远程日志服务器上


3、有时日志会直接弹出在屏幕上。类似于wall命令。


扩展:


wall命令介绍:


 wall -- send a message to everybody’sterminal.


[root@localhost ~]#wall Today is nice day!!!


wall Today is nicedayvim /etc/rsyslog.conf !


Broadcast message fromroot@localhost.localdomain (pts/0) (Thu Dec 17 22:10:28 2015):


Today is nice dayvim/etc/rsyslog.conf !


这样所有登录Linux的虚端的用户都会收到这个信息。


[root@localhost ~]# vim /etc/rsyslog.conf


mail.*-/var/log/maillog




在上面的第四行关于 mail 的记录中,在记录的档案 /var/log/maillog 前面还有个减号『 - 』是干嘛用的?


由于邮件所产生的讯息比较多,因此我们希望邮件产生的讯息先储存在速度较快的内存中 (buffer) ,等到数据量够大了才一次性的将所有数据都填入磁盘内,这样将有利于减少对磁盘读写的次数,减少IO读写开销。另外,由于讯息是暂存在内存内,因此若不正常关机导致登录信息未写入到文档中,可能会造成部分数据的遗失。




自定义sshd服务的日志


[root@localhost ~]# vim /etc/rsyslog.conf


local0.* /var/log/sshd.log


[root@localhost ~]#systemctl restart rsyslog.service




配置sshd服务的配置文件


[root@localhost ~]# vim /etc/ssh/sshd_config


SyslogFacility local0


[root@localhost ~]#systemctl restart sshd




[root@localhost ~]# ls /var/log/sshd.log


/var/log/sshd.log


[root@localhost ~]# cat!$


cat /var/log/sshd.log


Dec 17 22:18:38localhost sshd[35876]: Server listening on 0.0.0.0 port 22.


Dec 17 22:18:38localhost sshd[35876]: Server listening on :: port 22.




日志查看方式


时间 主机 进程ID 执行的操作


如何防止日志被***删除呢?


[root@localhost ~]#chattr +a /var/log/sshd.log


[root@localhost ~]#lsattr /var/log/sshd.log


-----a----------/var/log/sshd.log




加入了这个属性后,你的 /var/log/messages 登录档从此就仅能被增加,而不能被删除,直到 root 以『 chattr -a /var/log/messages 』取消这个 a 的参数后,才能被删除移!




5.日志回滚:


logrotate(日志回滚过程: 创建新文件、改名旧文件。)


配置文件:


#vim/etc/logrotate.conf


[root@localhost ~]# vim /etc/logrotate.conf


weekly <==预设每个礼拜对日志档进行一次 rotate 的工作


rotate 4<==保留几个日志文档呢?预设是保留四个!


create <==回滚日志后,创建一个新的空文件来存储新的数据。




/var/log/wtmp {


 monthly


 create 0664 root utmp


 minsize 1M


 rotate 1


说明:


/var/log/wtmp { <==仅针对 /var/log/wtmp 所设定的参数

了解更多相关内容欢迎关注http://www.vecloud.com/

常用的系统日志管理的评论 (共 条)

分享到微博请遵守国家法律