一.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
查看服务主机
总结:说明我们实现了客户主机的日志信息发送到服务主机中。