linux下的日志服务(待补充)
一.rsyslog
此服务是用来采集系统日志的,他不产生日志,只是起到采集作用
实验如下图:
1.查看rsyslog服务的状态
systemctl status rsyslog.service
2.
> /var/log/messages 清空/var/log/messages
cat /var/log/messages 查看/var/log/messages内容
systemctl restart sshd.service 重新开启sshd服务
systemctl stop rsyslog.service 停止rsyslog服务
总结:说明此服务是用来采集系统日志信息的,当关闭采集服务时,日志内将不会接受任何消息,只有开启采集服务时,才会接受消息。
注意:如果出现以下这种情况
解决方法为:
> /etc/rc.d/rc.local
reboot
然后再去查看
二.rsyslog的管理
(1)日志的说明
日志 | 具体的作用 |
---|---|
/var/log/file | 日志采集规则 |
/var/log/messages | 服务信息日志 |
/var/log/secure | 系统登陆日志 |
/var/log/cron | 定时任务日志 |
/var/log/maillog | 邮件日志 |
/var/log/boot.log | 系统启动日志 |
(2)指定日志采集路径
什么类型的日志.什么级别的日志
日志类型分为:
日志 | 类型 |
---|---|
auth pam | 产生的日志 |
authpriv | ssh,ftp等登录信息的验证信息 |
cron | 时间任务相关 |
kern | 内核 |
lpr | 打印 |
邮件 | |
mark(syslog)-rsyslog | 服务内部的信息,时间标识 |
news | 新闻组 |
user | 用户程序产生的相关信息 |
uucp | unix to unix copy,unix主机之间相关的通讯 |
local 1-7 | 自定义的日志设备 |
日志级别分为:
日志 | 级别 |
---|---|
debug | 有调试信息的,日志信息最多 |
info | 一般信息的日志,最常用 |
notice | 最具有重要性的普通条件的信息 |
warning | 警告级别 |
err | 错误级别,阻止某个功能或者模块不能正常工作的信息 |
crit | 严重级别,阻止整个系统或者整个软件不能正常工作的信息 |
alert | 需要立刻修改的信息 |
emerg | 内核崩溃等严重信息 |
none | 什么都不记录 |
实验如下:
查看重启sshd的服务时的信息出现在日志中
<1>首先进入/etc/rsyslog.conf文件配置中并使配置立即生效
vim /etc/rsyslog.conf
配置中新增了所有类型级别的日志以及其被采集的路径如下:
*.* /var/log/westos 所有的日志类型和日志级别都保存在/var/log/westos
<2>重启rsyslog服务
systemctl restart rsyslog
ll /var/log/westos 查看这个目录信息
<3>查看日志信息
三.如何将客户主机的日志信息发送到服务主机中
注意:此时我是将server当作客户主机的,client当作服务主机
客户端的操作
<1>在客户主机中进入日志配置
vim /etc/rsyslog.conf
<2>对配置进行增加以下内容,表示任何级别的任何类型的日志都会发送至服务主机上(ip为172.25.66.115)
<3>使rsyslog服务立即生效
systemctl restart rsyslog
服务端的操作
<1>在客户主机中进入日志配置
vim /etc/rsyslog.conf
将15-16行前的注释取消掉
使rsyslog服务立即生效
systemctl restart rsyslog
<2>关闭防火墙,允许接收其他主机发送的内容
systemctl status firewalld 查看防火墙状态
systemctl stop firewalld 关闭防火墙
测试:
为了保持一个纯净的查看日志信息的环境,我们在客户主机和服务主机做以下操作
利用logger在系统中写入日志,我们写入的内容是test
查看服务主机
总结:说明我们实现了客户主机的日志信息发送到服务主机中。