这样一来,来自192.168.1.1的log会记录到192.168.1.1.log文件中,来自192.168.1.2的log会被记录在192.168.1.2.log文件中,分析和归类就比较方便了。当然这是一个最简单的例子,读者可以根据自己的需求写出更好的脚本,甚至把log信息分类后插入数据库中,这样日志的管理和分析就更方便了。
最后重启一下syslogd服务,让配置生效:
/etc/rc.d/syslogd restart
OK,服务端的配置完成。现在配置一下客户端:
这里所说的客户端,就是发送自己的日志到远程日志服务器上的主机。
修改/etc/syslog.conf文件:
我们举例你只要记录系统登入登出日志到远程日志服务器上,那么只需要修改以下一行:
authpriv.* @192.168.10.100
这里的192.168.10.100就是log服务器的IP,“@符号表示发送到远程主机。
OK,重启一下syslog服务:
Linux: /etc/init.d/syslogd restart
BSD: /etc/rc.d/syslogd restart
用logger测试一下是否配置成功:
logger –p authpriv.notice “Hello,this is a test
到log服务器上去看看,“Hello,this is a test应该已经被记录下了。最后在客户机上登陆登出几次,看看真实的authpriv信息是否也被成功的记录下。
二、Windows日志的记录
对于Unix类主机之间记录日志,由于协议、软件和日志信息格式等都大同小异,因此实现起来比较简单,但是windows的系统日志格式不同,日志记录软件,方式等都不同。因此,我们需要第三方的软件来将windows的日志转换成syslog类型的日志后,转发给syslog服务器。
介绍第三方软件evtsys (全称是evntlog to syslog)
文件才几十K大小,非常小巧,解压后是两个文件evtsys.dll和evtsys.exe
把这两个文件拷贝到 c:windowssystem32目录下。
打开Windows命令提示符(开始->运行 输入CMD)
C:>evtsys –i –h 192.168.10.100
-i 表示安装成系统服务
-h 指定log服务器的IP地址
如果要卸载evtsys,则:
net stop evtsys
evtsys -u
启动该服务:
C:>net start evtsys
打开windows组策略编辑器 (开始->运行 输入 gpedit.msc)
在windows设置-> 安全设置 -> 本地策略 ->审核策略 中,打开你需要记录的windows日志。evtsys会实时的判断是否有新的windows日志产生,然后把新产生的日志转换成syslogd可识别的格式,通过UDP 3072端口发送给syslogd服务器。
OK,所有的配置windows端配置完成,现在配置一下syslogd的配置文件,
参数的配置和上面相同,所不同的是evtsys是以daemon设备的方式发送给 syslogd log信息的。因此,需要在/etc/syslog.conf中加入:
daemon.notice |/var/log/filter_log.sh
关于syslog 记录设备和记录等级方面的知识可以参考syslog文档。
OK,所有配置设置完成。
Linux 、BSD和windows上的系统日志都可以统一记录到一台日志服务器上轻松管理了。
标签: