您的位置:首页 > 运维架构 > Linux

用 Logwatch 工具监控 Linux 系统 Log 日志

2014-04-07 23:37 746 查看
Logwatch,顾名思义,是一款专门监测Linux log文件(日志文件)的软件。安装以后只要稍微配置一下,就能每天将主机的log分析文件发送至指定的邮箱。为什么要这么做?因为这样能节省一个个手动查看日志的繁琐,为管理员节省时间,节省精力。并且每天(甚至更频繁)都能准确地接收到日志。从而对服务器的安全情况有所掌握。

以下安装方法适用于所有RPM格式的Linux发行版(比如Redhat等)。

首先到Logwatch的官方网站查找最新版的logwatch。

下载:

Code:

wget ftp://ftp.kaybee.org/pub/redhat/ ... -6.0.2-2.noarch.rpm

检查你的主机上是否已经存在Logwatch(Redhat默认已经安装了Logwatch,不过版本比较旧):

Code:

rpm -qa logwatch

如果主机上没有logwatch,则执行:

Code:

rpm -Ivh logwatch-6.0.2-2.noarch.rpm

如果有老版本的logwatch,则执行:

Code:

rpm -Uvh logwatch-6.0.2-2.noarch.rpm

安装完毕后,开始配置:

Code:

vi /etc/log.d/conf/logwatch.conf

查找 MailTo = ,然后改为你的实际Email地址,比如 MailTo = user@domain.com

Detail = 是细节度,推荐 10 ,即最高。

存盘退出。logwatch默认为每天执行一次(cron.daily)。手动执行logwatch的命令为:

Code:

perl /etc/log.d/scripts/logwatch.pl

logwatch --print这条命令将会把昨天的日志信息简要的打印出来. 比如用户登录失败信息、SSH 登录信息、磁盘空间使用等.

单独查看某个服务,比如 SSH 登录信息:

# logwatch --service sshd --print这条命令可以查看使用说明:

# logwatch --help最新版本的 LogWatch 默认有 70 多种 Log 的配置信息. 如果要对自己的特殊 Log 做监控, 定制也是比较容易的。简单记录一下:

基本的做法:

1) 创建一个日志文件组。指定自己的 Log 文件,可以是一个,可以是多个;
2) 创建一个新的服务。指明这个服务的名字, 指明 Log 文件来源(来自上一步的定义);
3) 创建一个过滤脚本;

整个原理就是,LogWatch 首先要知道针对哪一个服务, 从这个服务中得到需要处理的 Log 文件信息, 然后这个文件送给过滤脚本处理, 之后把处理后格式化的信息展现出来;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息