logcheck
在某些情况下,例如 netfilter 日志,如果我可以发送即将通过过滤器发送的报告,那就太好了。
logcheck(8)
似乎没有描述这样的事情,man
的页面也没有logcheck.conf
。
答案1
不直接与logcheck
.您唯一可以使用的就是过滤日志文件中的行。在这篇文章中,有一个不错的过滤器示例集合:logcheck — 各种过滤器。
然而,给出的logcheck
只是一个 shell 脚本,您可以修改它并创建您自己的版本。您还可以修改包中通常附带的 cronjoblogcheck
并通过 STDOUT 运行它,过滤内容,然后手动通过电子邮件发送出去。
( $ /usr/sbin/logcheck -o | ...your filter... ) | mail ...
定制过滤器
要设置过滤器,您可以将规则文件粘贴到logcheck
相应目录的目录树下,以使其过滤掉不相关的消息。
$ ls -ld /etc/logcheck/*
drwxr-xr-x. 2 root root 4096 May 30 16:36 /etc/logcheck/cracking.d
drwxr-xr-x. 2 root root 4096 May 30 16:36 /etc/logcheck/ignore.d.paranoid
drwxr-xr-x. 2 root root 4096 May 30 16:36 /etc/logcheck/ignore.d.server
drwxr-xr-x. 2 root root 4096 May 30 16:36 /etc/logcheck/ignore.d.workstation
-rw-r--r--. 1 root root 2647 Feb 16 2013 /etc/logcheck/logcheck.conf
-rw-r--r--. 1 root root 133 Feb 16 2013 /etc/logcheck/logcheck.logfiles
drwxr-xr-x. 2 root root 4096 May 30 16:36 /etc/logcheck/violations.d
drwxr-xr-x. 2 root root 4096 May 30 16:36 /etc/logcheck/violations.ignore.d
例如,它已经附带了许多流行服务的过滤器文件:
$ ls /etc/logcheck/ignore.d.server/ | head -10
acpid
amandad
amavisd-new
anacron
anon-proxy
apache
apcupsd
arpwatch
asterisk
automount
所以你可以结合规则来过滤那里的东西。
$ more /etc/logcheck/ignore.d.server/apache
^\w{3} [ :0-9]{11} [._[:alnum:]-]+ apache: nss_ldap: reconnect(ing|ed) to LDAP server(\.\.\.| after [0-9]+ attempt\(s\))$