日志由程序产生,在内存中产生。通过Rsyslog来将内存中程序产生的日志持久化到硬盘,并且支持udp、tcp等协议来进行不同服务器的日志同步。
/var/log/messages:大多数系统日志信息纪录在此
/var/log/secure:安全和身份认证相关的消息和错误的日志文件
/var/log/maillog:与邮件服务器相关的日志文件
/var/log/cron:与定时任务相关的日志文件
/var/log/boot.log:与系统启动有关的日志文件
pam:在linux中执行某些程序,这些程序在执行前要对启动它的用户进行认证,符合一定要求后才允许执行,例如login、su等,在linux中进行身份验证或是状态的验证程序由pam来进行。pam即可动态加载验证模块,因为可以按需要动态的对验证的内容进行变更,大大提高验证的灵活性。
Linux-pam:是一套共享库,使本地系统管理员可以随意选择程序的认证方式。使用配置/etc/pam.d/下的文件来管理对程序的认证方式。应用程序调用相应的配置文件,从而调用本地的认证模块,模块放置在/lib/secureity下,以加载动态库的形式进行,像我们使用su命令时,系统提示你输入root用户的密码,这就是su命令通过调用PAM模块实现的。
日志类型分为:
auth:pam产生的日志
authpriv:ssh,ftp等登陆信息的验证信息
cron:时间任务相关
kern:内核
lpr:打印
mail:邮件
mark(syslog)-rsyslog:服务内部的信息,时间标识
news:新闻组
user:用户程序产生的相关信息
uucp:unix to unix copy,unix主机之间相关的通讯
local 1-7:自定义的日志设备
日志级别:(由上到下,级别由低到高,记录信息越来越少)
debug:有调试信息的,日志信息最多
info:一般信息的日志,最常用
notice:具有重要性的普通条件的信息
warning:警告级别
err:错误级别,阻止某个功能或者模块不能正常工作的信息
crit:严重级别,阻止整个系统或者整个软件不能正常运行的信息
alert:需要立刻修改的信息
emerg:内核崩溃等严重信息
none:什么都不记录
可以使用vim /etc/rsyslog.conf命令来修改日志的配置文件,可以自己生成一个日志文件。
日志的远程同步:
在日志发送方,使用vim /etc/rsyslog.conf命令进入发送方配置文件,将接收方的IP以及发送的日志类型写在配置文件中,例如:*.* @ip地址(@代表udp传输协议,@@代表TCp传输协议)。配置完成后,使用systemctl restart rsyslog.service 重启rsyslog日志服务器。
日志接收方:使用vim /etc/rsyslog.conf命令进入配置文件,开启日志接收模块和接收端口。使用systemctl restart rsyslog.service重启rsyslog,关闭防火墙或者使用firewall-cmd --add-port 514/udp来放行此端口。