开源安全运维平台OSSIM疑难解析:提高篇
上QQ阅读APP看书,第一时间看更新

Q012 如何搭建基于BASE的可视化入侵检测系统?

在Q009、Q010和Q011这3个问题中,我们已经安装了Snort系统并将报警信息存入数据库。这里将讲解安装BASE(Basic Analysis and Security Engine)的步骤,Barnyard将MySQL中的Snort报警信息通过Web展示的具体原理如图1-6所示。

图1-6 Barnyard存储原理

要将存储在数据库中的日志展现在Web端,需要安装BASE(入侵检测事件展示的前端程序),这里用到的版本是base-1.4.5.tar.gz。既然用到了Web服务,那么首先需要安装好LAMP环境,然后再安装BASE包。此处服务器IP地址为192.168.1.120。具体安装步骤如下。

步骤1.安装httpd、mysql-server、mysql-devel、php、php-mysql、php-mbstring、php-mcrypt。

命令如下所示。

#yum install –y httpd mysql-server php php-mysql php-mbstring php-mcrypt mysql-devel php-gd

步骤2.安装PHP插件(mcrypt、libmcrypt、libmcrypt-devel),命令如下所示。

#yum install –y mcrypt libmcrypt libmcrypt-devel php-pear

更新插件的时间比较长,操作如下所示。

#pear upgrade pear

步骤3.继续执行下列命令。

#pear channel-update pear.php.net

安装Image_Graph-alpha、Image_Canvas-alpha、Image_Color、Numbers_Roman这4个包。

操作如下所示。

#pear channel-update pear.php.net
#pear install Image_Graph-alpha Image_Canvas-alpha Image_Color Numbers_Roman

步骤4.安装ADOdb包。

虽然PHP是建构Web系统强有力的工具,但是PHP存取数据库的功能并未标准化,MySQL使用了另一种不同且不兼容的应用程序接口。此时需要使用ADOdb作为中介进行转换。ADOdb的最大优点是不管后端数据库如何,存取数据库的方式都是一致的。目前ADOdb的最新版本是5.20,它支持的数据库种类非常多,例如MySQL、PostgreSQL、Oracle等。下面开始安装ADOdb,首先将adodb520.tar.gz解压到/var/www/html/目录下。

#tar zxvf adodb519.tar.gz –C /var/www/html/

解压后发现增加了一个目录adodb5,将这个目录改名为adodb。

#mv /var/www/html/adodb5 /var/www/html/adodb

步骤5.解压BASE包。

#tar zxvf base-1.4.5.tar.gz –C /var/www/html

解压后发现增加了一个目录base-1.4.5,接着需要对它重命名。

#mv /var/www/html/base-1.4.5/ /var/www/html/base

步骤6.修改PHP配置文件。

#vi /etc/php.ini

将第513行内容改成如下内容。

error_reporting = E_ALL & ~E_NOTICE

修改完毕保存并退出。

步骤7.改变属组并设置权限。

#chown –R apache:apache /var/www/html
#chmod -R 755 /var/www/html

步骤8.重启MySQL、Web和防火墙服务。

#service mysqld restart     //启动数据库
#service httpd restart      //重启Web服务
#service iptables stop      //关闭防火墙

步骤9.在Web界面设置BASE。

打开浏览器输入网址http://192.168.1.120/base/setup/index.php,输入完毕后弹出安装界面,如图1-7所示。

图1-7 开始设置BASE

单击Continue按钮,开始选择语言和ADOdb路径,如图1-8所示。

图1-8 设置ADOdb路径

语言项选择中文,ADOdb路径中输入/var/www/html/adodb,单击Continue按钮。接下来输入数据库名称、访问用户名和密码,如图1-9所示。

图1-9 设置数据库

下一步将管理员名称设置为root,密码依然是“123456”,Full Name不必设置,如图1-10所示。

图1-10 设置root密码

下一步开始创建BASE表结构,如图1-11、图1-12所示。

图1-11 准备创建BASE表结构

图1-12 BASE表创建完成

如果看到表acid有创建完成的提示并且BASE tables状态显示为“DONE”,则表示安装完成。单击屏幕最下方的step5…按钮结束安装。在客户机终端命令行中ping主机192.168.1.120,随后就能在BASE界面中收到ICMP报警,如图1-13所示。

图1-13 收到报警

如果在Web的BASE界面中收到ICMP报警,则表明BASE安装设置完成。

步骤10.安装phpMyAdmin。

#yum install phpmyadmin
修改配置文件
#vi /etc/httpd/conf.d/phpMyAdmin.conf
注销第24行的Deny from ALL
#service httpd restart
在Web界面下输入用户名snort,密码为123456

如果要删除报警,首先勾选需要删除的报警,然后在“动作”下拉菜单中选择“删除报警”选项,如图1-14所示。

图1-14 删除报警