[科普]入侵检测系统ossec配置文件详解

OSSEC是一款开源的多平台的入侵检测系统,可以运行于Windows, Linux, OpenBSD/FreeBSD, 以及 MacOS等操作系统中。包括了日志分析,全面检测,root-kit检测。本文由FB会员Rozero带来的OSSEC系列文章第一篇,以下为原文:

之前看过@lion_00 关于ossec的连载,我个人对ossec也小有研究,之前用过很长一段时间,ossec难点主要在于其配置文件复杂,不好配置,另外ossec基本没有国内的文章也给学习造成了不便,使得ossec知道的人很有限,只有少数几家互联网公司在使用。趁着周末有空,翻译了下ossec文档里的部分比较常用的配置选项,希望可以给大家一些帮助。

在unix,linux或者bsd上安装ossec hids,默认安装路径是/var/ossec,在启动过程中ossec hids会将目录chroot,并且配置文件和规则也从该目录读取,下边科普下,ossec下目录结构及各个模块都有啥用:

#核心配置文件:

ossec.conf #ossec hids主要配置文件

internal_options.conf: #额外配置选项文件

decoders.xml: #文件解码器,各种规则都在这里写来调用

client.keys: #用于客户端与服务器认证通信

/var/ossec/bin #目录包含ossec hids使用的二进制文件。

/var/ossec/etc #目录包含所有ossec hids使用的配置文件

#日志文件:

/var/ossec/logs: #包含有关ossec hids所有的日志目录

ossec.log: #包含osse hids所有日志(error,warn,info和其他)

alerts/alerts.log #ossec hids报警日志

active-responses.log #ossec hids响应日志

#队列:

/var/ossec/queue #目录包含ossec hids队列文件

agent-info #目录包含操作系统版本、ossec hids版本等信息

syscheck #目录包含每个agent的数据校验日志

rootcheck #目录包含每个agent,rootkit检查数据和监控规则。

rids #目录包含agent ids信息

#规则

/var/log/rules #目录包含所有osse hids规则

/var/log/stats #目录包含每秒统计数据等文件


了解ossec hids配置文件:

我们将开始了解如何在unix,linux和bsd上本地/服务器进行配置。ossec hids主要配置文件名叫ossec.conf,该文件使用xml表记语言编写,ossec hids配置文件选择位于<ossec_config>中,该配置文件包含如下段落:

<global>                             #全局配置配置  <alerts>                             #邮件和日志报警选项  <email_alerts>                  #细力度邮件配置文件  <remote>                          #该选项只允许在server端配置  <database_output>         #数据库输出选项  <rules>                            #包含规则列表  <client>                           #agent有关配置文件选项  <localfile>                       #日志文件监控配置选项  <syscheck>                    #系统检查配置文件选项  <rootcheck>                   #rootki发现和规则监控选项  <command>                   #主机响应配置选项  <active-response>         #恶意主机响应配置选项

配置报警级别及收集所有日志:

每个报警都有一个严重级别报警等级,ossec的等级是这样分配的,0到15,15是最高等级,0是最低等级,默认情况下每个警报是从1到15,在ossec hids配置文件选项中报警级别7以上的都会发送邮件报警,如果修改ossec.conf中的报警配置选项,可以修改如下配置:

<ossec_config>  <alerts>  <log_alert_level>2</log_alert_level>  <email_alert_level>8</email_alert_level>  </alerts>  </ossec_config>

上边的配置文件,只记录2以上的报警级别日志,并且报警级别高于8以上的报警都会发送邮件。


收集日志:

除了记录每一条报警和每一个事件记录外你可以配置ossec hids接收所有日志,配置文件如下:

<ossec_config>  <global>  <logall>yes</logall>  </global>  </ossec_config>  <ossec_config>

配置邮件:

默认情况下,在安装ossec hids server的时候会提示你配置邮件发信,但这个发信里默认只写入一条收件人,假如我有多个收件人是不是没办法了呢?答案当然不是,ossec hids里可以这样配置多个收件人,这里以gmail为例子:

<ossec_config>  <email_notification>yes</ email_notification >  <email_to>root@gmail.com< email_to >  <smtp_server>smtp@gmail.com< smtp_server >  <email_from>webmaster@gmail.com</email_from>  <email_maxperhour>20</email_maxperhour>  </global>  </ossec_config>

默认的配置文件是这样,如添加其他人可以这样,<email_to>lost@gmail.com</email_to>即可添加lost这个用户加入收件人列表。如果不需要配置文件怎么办呢?ossec hids也可以关闭掉邮件选项,设置配置如下:

<ossec_config>  <global>  <email_notifi cation>no</email_notification>  </global>  </ossec_config>

也可以让某个邮箱只接受特定级别的邮件,配置文件可以这样写:

<ossec_config>  <email_alerts>  <email_to>oncall@fakeinc.com</email_to>  <level>10</level>  <format>sms</format>  </email_alerts>  </ossec_config>

安全选项配置:

众所周知,ossec收集日志的服务也是采用syslog,只不过它会开启个1514的udp端口来接收数据,这其实和514端口并无差别不是吗,但为了安全考虑,需要允许指定的机器来连接我们的syslog服务,配置文件可以这样写:

<ossec_config>  <remote>  <connection>secure</connection>  <allowed-ips>192.168.10.0/24</allowed-ips>  </remote>  </ossec_config>

上边的意思就是允许这个网段来连接syslog服务接收数据。

监控文件变化:

ossec还可以做为文件监控来监视网站目录下的变动情况,ossec检测文件的时候分为几个部分:check_all、check_sum、check_size、check_onwer、check_group、check_perm,如果是检测网站变动的话,可以在ossec.conf里写入如下配置:

<ossec_config>  <syscheck>  <directories check_all=“yes”>/var/www/htdocs</directories>  </syscheck>  </ossec_config>

上边的配置是检查网站的任何变动,包括文件大小发生变化,权限变化等。

1 comment on “[科普]入侵检测系统ossec配置文件详解

发表评论