开源入侵检测系统OSSEC搭建之一:服务端安装

OSSEC是一款开源的多平台的入侵检测系统,可以运行于Windows, Linux, OpenBSD/FreeBSD,

以及 MacOS等操作系统中。主要功能有日志分析、完整性检查、rootkit检测、基于时间的警报和主动响应。

除了具有入侵检测系统功能外,它还一般被用在SEM/SIM(安全事件管理(SEM: Security Event Management)/

安全信息管理(SIM:SecurityInformation Management))解决方案中。因其强大的日志分析引擎,

ISP(Internet service provider)(网络服务提供商)、大学和数据中心用其监控和分析他们的防火墙、

入侵检测系统、网页服务和验证等产生的日志。


一、环境准备

  》OSSEC服务器端:VMware下CentOS7系统

  》OSSEC客户端:VMware下KaliLinux 2.0系统

二、工具准备

  》安装ossec 安装过程中所需要用到的管理库以及软件等

  》下载最新版的ossec即ossec-hids-2.8.3.tar.gz

  》下载图形分析工具analogi

三、开始安装

  1.  安装管理库及软件 -->mysql服务。

    需要注意的是ossec需要用到mysql数据库,而直接yum install mysql的话会报错,原因在于yum安装库里

    没有直接可以用的安装包,此时需要用到MariaDB了,MariaDB是MySQL社区开发的分支,也是一个增强型的替代品。

    具体安装步骤请参考另一篇文章CentOS7安装mysql-server

  2. 安装管理库及软件 -->wget gcc make httpd php php-mysql服务

[root@localhost ~]# yum install wget gcc make httpd php php-mysql sendmail

  3. 启动httpd、mysql、sendmail服务,详细启动、查看过程请参考Ossec常用命令

  》 启动httpd服务并查看状态

[root@localhost ~]# systemctl start httpd
[root@localhost ~]# systemctl status httpd.service

  》 启动mysql服务并查看状态

[root@localhost ~]# systemctl start mariadb
[root@localhost ~]# systemctl status mariadb.service 

  》 启动sendmail服务并查看状态

[root@localhost ~]# systemctl start sendmail.service 
[root@localhost ~]# systemctl status sendmail.service 

   4. 创建数据库以方便我们下面的安装配置,连接到本机的MySQ

[root@localhost ~]# mysql -uroot -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 13
Server version: 5.5.47-MariaDB MariaDB Server

Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database ossec;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant INSERT,SELECT,UPDATE,CREATE,DELETE,EXECUTE on ossec.* to ossec@localhost;
Query OK, 0 rows affected (0.04 sec)

MariaDB [(none)]> set password for ossec@localhost=PASSWORD('ossec');
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> exit
Bye
[root@localhost ~]# 

  5.  安装ossec服务器端

  》官网下载最新版ossec即ossec-hids-2.8.3.tar.gz并解压

wget https://bintray.com/artifact/download/ossec/ossec-hids/ossec-hids-2.8.3.tar.gz
tar zxf ossec-hids-2.8.3.tar.gz
cd ossec-hids-2.8.3/

  》为了使OSSEC支持MySQL,安装前执行make setdb命令

    看到最后一行[Info: Compiled with MySQL support.]的信息时说明可以正常支持MySQL

[root@localhost ossec-hids-2.8.3]# cd src; make setdb; cd ..

Error: PostgreSQL client libraries not installed.

Info: Compiled with MySQL support.

  》执行install.sh脚本

  具体安装的信息可以参考另一篇文章OSSEC 安装执行./install.sh详细信息,当看到如下信息时

  说明安装服务器端已经成功。

 - 系统类型是  Redhat Linux.
 - 修改启动脚本使 OSSEC HIDS 在系统启动时自动运行 

 - 已正确完成系统配置.

 - 要启动 OSSEC HIDS:
        /opt/ossec/bin/ossec-control start

 - 要停止 OSSEC HIDS:
        /opt/ossec/bin/ossec-control stop

 - 要查看或修改系统配置,请编辑  /opt/ossec/etc/ossec.conf



    感谢使用 OSSEC HIDS.
    如果您有任何疑问,建议或您找到任何bug,
    请通过 contact@ossec.net 或邮件列表 ossec-list@ossec.net 联系我们.    
    ( http://www.ossec.net/en/mailing_lists.html ).

    您可以在 http://www.ossec.net 获得更多信息

    --- 请按 ENTER 结束安装 (下面可能有更多信息). ---

  6. 配置ossec服务端

  》执行下面命令启用数据库支持

[root@localhost ossec-hids-2.8.3]# /opt/ossec/bin/ossec-control enable database

  》导入MySQL表结构到MySQL中

[root@localhost ossec-hids-2.8.3]# mysql -uossec -p ossec < ./src/os_dbd/mysql.schema

  》修改部分配置文件的权限

[root@localhost ossec-hids-2.8.3]# chmod u+w /opt/ossec/etc/ossec.conf

  》编辑ossec.conf文件,在ossec_config中添加MySQL配置

    编辑ossec.conf文件,在ossec_config标签内部添加如下MySQL配置

  <database_output>
    <hostname>192.168.218.136</hostname>
    <username>ossec</username>
    <password>ossec</password>
    <database>ossec</database>
    <type>mysql</type>
  </database_output>

  》由于服务端安装过程中设置了支持接受远程机器的syslog,所以需要对ossec.conf文件中的

    syslog部分进行配置,修改ossec.conf文件,将需要收集的网段全添加进去。配置后的ossec.conf

  <remote>
    <connection>syslog</connection>
    <allowed-ips>192.168.0.0/16</allowed-ips>
  </remote>

  7. 添加ossec客户端并导出Key

[root@localhost ~]# /opt/ossec/bin/manage_agents


****************************************
* OSSEC HIDS v2.8.3 Agent manager.     *
* The following options are available: *
****************************************
   (A)dd an agent (A).
   (E)xtract key for an agent (E).
   (L)ist already added agents (L).
   (R)emove an agent (R).
   (Q)uit.
Choose your action: A,E,L,R or Q: A

- Adding a new agent (use '\q' to return to the main menu).
  Please provide the following:
   * A name for the new agent: agent-kali
   * The IP Address of the new agent: 192.168.218.137
   * An ID for the new agent[001]: 
Agent information:
   ID:001
   Name:agent-kali
   IP Address:192.168.218.137

Confirm adding it?(y/n): y
Agent added.

客户端Name为agent-kali,ip地址为192.168.218.137的记录已经添加完毕,但是需要导出一个Key,

这个Key的作用是在客户端中导入并使得服务端与客户端达到联动的效果。导出Key步骤如下

****************************************
* OSSEC HIDS v2.8.3 Agent manager.     *
* The following options are available: *
****************************************
   (A)dd an agent (A).
   (E)xtract key for an agent (E).
   (L)ist already added agents (L).
   (R)emove an agent (R).
   (Q)uit.
Choose your action: A,E,L,R or Q: E

Available agents: 
   ID: 001, Name: agent-kali, IP: 192.168.218.137
Provide the ID of the agent to extract the key (or '\q' to quit): 001

Agent key information for '001' is: 
MDAxIGFnZW50LWthbGkgMTkyLjE2OC4yMTguMTM3IDQ0NTg0MTQ5ZjMzODc2YzA4MDA0MTdlY2JkYWQ5ODc1NDRhZjc1ZmEyYWY0ZmFkMzU4OTBmMDYxMjE0ODA2ZTE=

** Press ENTER to return to the main menu.

导出的Key值:

MDAxIGFnZW50LWthbGkgMTkyLjE2OC4yMTguMTM3IDQ0NTg0MTQ5ZjMzODc2YzA4MDA0MTdlY2JkYWQ5ODc1NDRhZjc1ZmEyYWY0ZmFkMzU4OTBmMDYxMjE0ODA2ZTE=

至此,OSSEC服务端已经安装结束并且导出了客户端的Key,但是不安装客户端的情况下直接启动服务端会报错,

客户端的安装请参考文章开源入侵检测系统OSSEC搭建之二:客户端安装

posted @ 2016-07-14 10:15  北海悟空  阅读(5079)  评论(0编辑  收藏  举报