电脑技术学习

用Syslog 记录UNIX和Windows日志的方法

dn001

  在比较大规模的网络应用或者对安全有一定要求的应用中,通常需要对系统的日志进行记录分类并审核,默认情况下,每个系统会在本地硬盘上记录自己的日志,这样虽然也能有日志记录,但是有很多缺点:首先是管理不便,当服务器数量比较多的时候,登陆每台服务器去管理分析日志会十分不便,其次是安全问题,一旦有入侵者登陆系统,他可以轻松的删除所有日志,系统安全分析人员不能得到任何入侵信息。

  因此,在网络中安排一台专用的日志服务器来记录系统日志是一个比较理想的方案。本文以FreeBSD下的syslog为例,介绍如何利用freebsd的syslogd来记录来自Unix和Windows的log信息。

  一、记录UNIX类主机的log信息

  首先需要对Freebsd的syslog进行配置,使它允许接收来自其他服务器的log信息。

  在/etc/rc.conf中加入:

  syslogd_flags="-4 -a 0/0:*"

  说明:freebsd的syslogd参数设置放在/etc/rc.conf文件的syslogd_flags变量中

  Freebsd对syslogd的默认设置参数是syslogd_flags="-s",(可以在/etc/defaults/rc.conf中看到)

  默认的参数-s表示打开UDP端口监听,但是只监听本机的UDP端口,拒绝接收来自其他主机的log信息。如果是两个ss,即-ss,表示不打开任何UDP端口,只在本机用/dev/log设备来记录log.

  修改后的参数说明:

  -4 只监听IPv4端口,如果你的网络是IPv6协议,可以换成-6

  -a 0/0:* 接受来自所有网段所有端口发送过来的log信息。

  如果只希望syslogd接收来自某特定网段的log信息可以这样写:-a 192.168.1.0/24:*

  -a 192.168.1.0/24:514或者-a 192.168.1.0/24表示仅接收来自该网段514端口的log信息,这也是freebsd的syslogd进程默认设置,也就是说freebsd在接收来自其他主机的log信息的时候会判断对方发送信息的端口,如果对方不是用514端口发送的信息,那么freebsd的syslogd会拒绝接收信息。即,在默认情况下必须:远程IP的514端口 发送到本地IP的514,

标签: