实验简介
实验所属系列:入侵检测与入侵防御/防火墙技术
实验对象:本科/专科信息安全专业
相关课程及专业:信息网络安全概论、计算机网络技术
实验时数(学分):4 学时
实验类别:实践实验类
实验目的
1)了解入侵检测系统的基本概念和工作原理。
2)掌握 snort 入侵检测系统的安装和使用方法。
预备知识
1)入侵检测系统
入侵检测系统(intrusion detection system,简称“IDS”)是一种对网络传输进行即时监视,在发
现可疑传输时发出警报或者采取主动反应措施的网络安全设备。它与其他网络安全设备的不同之处便在于,
IDS 是一种积极主动的安全防护技术。
2)入侵检测系统的分类及部署
IDS 是计算机或网络的监视系统,它通过实时监视系统,一旦发现异常情况就发出警告。IDS 入侵检测
系统以信息来源的不同和检测方法的差异分为几类:根据信息来源可分为基于主机 IDS 和基于网络的 IDS,
根据检测方法又可分为异常入侵检测和滥用入侵检测。
3)不同于防火墙,IDS 入侵检测系统是一个监听设备,没有跨接在任何链路上,无须网络流量流经它便可
以工作。因此,对 IDS 的部署,唯一的要求是:IDS 应当挂接在所有所关注流量都必须流经的链路上。
实验步骤一
安装 snort 入侵检测系统
1、登录 ids 系统
登录实验机后,打开桌面上的 putty 程序,输入 10.1.1.106,再点击 Open.。
输入用户名:root,密码:bjhit
2、安装 LAMP 环境(省略)
在 putty 里面输入如下命令进行安装
apt-get install mysql-server libapache2-mod-php5 php5-mysql libphp-adodb
注意:因为下载时间太长,会耽误过多的时间,所以提前已经安装好了。
这里给 mysql 的 root 用户,设置的密码是 123456。
3、安装 snort 软件包(已安装)
#apt-get install snort-mysql
在安装过程中会提示下图所示信息。(这里是填写监听的网段)
4、创建 snortdb 数据库
root@IDS:~# mysql -u root -p123456 #登录 mysql
进入数据库后,创建一个数据库命名为 snortdb。
mysql> create database snortdb;
mysql> grant create, insert, select, update on snortdb.* to snort@localhost;
mysql> set password for snort@localhost=password('snortpassword');
创建一个数据库用户,用户名为 snort,密码为 snortpassword。
将 snort-mysql 自带的软件包中附带的 sql 文件,导入到数据库中。
# cd /usr/share/doc/snort-mysql/
# zcat create_mysql.gz | mysql snortdb -u snort -psnortpassword
# rm /etc/snort/db-pending-config
5、配置 snort
配置好了数据库后,需要配置 Snort 配置文件(/etc/snort/snort.conf),告诉 snort 以后
日志写入到 snortdb 数据库中。
# vi /etc/snort/snort.conf
找到文件中“var HOME_NET any”一行,将其修改为要监控的网络段,
并启用下面几行,如下:
#var HOME_NET any
var HOME_NET 10.1.1.0/24
#
#var HOME_NET any
# Set up the external network addresses as well. A good start may be "any"
#var EXTERNAL_NET any
var EXTERNAL_NET !$HOME_NET
--------------------
# output database: log, mysql, user=root password=test dbname=db host=localhost
output database: log, mysql, user=snort password=snortpassword dbname=snortdb
host=localhost
检测 snort.conf 配置文件是否正常:
# snort -c /etc/snort/snort.conf
出现了小猪猪,就说明成功了,按 Ctrl+C 停止掉。
启动 snort:
# service snort start
实验步骤二
安装、配置基本分析与安全引擎(BASE)
1、安装 acidbase 软件包(已安装)
apt-get update 更新源列表
apt-get install acidbase
这里选择 mysql,前面还有两个对话框,一个是 ok,
一个是 yes,我这里就没截图了。
这里密码都输入 123456,要输入几次。
这里需重新创建 snort 用户
mysql -u root -p123456
mysql> grant create, insert, select, update on snortdb.* to snort@localhost;
mysql> set password for snort@localhost=password('snortpassword');
2、配置 Apache 文件
将 acidbase 的安装目录复制到/var/www 目录中
# cp -r /usr/share/acidbase/ /var/www/
修改 apache 配置文件:(如下图)
vi /etc/apache2/sites-available/default
在文件底部一行之前加入 acidbase 相关内容(上图红框框部分)
配置好了后,需要重启 apache2
# service apache2 restart
修改 php.ini 文件
vi /etc/php5/apache2/php.ini
将 acidbase 目录的权限设置为 777
chmod 777 -R /var/www/*
3、配置 BASE
将现有的配置文件改名,否则无法使用 web 界面配置 base。
# mv /etc/acidbase/base_conf.php /etc/acidbase/base_conf.php-orig
还有软链接文件
#rm /var/www/acidbase/base_conf.php
现在通过浏览器打开 http://10.1.1.106/acidbase/
开始配置我们的基本安全分析引擎了。
打开上面的网址,出现了如下界面:
单击 Continue 按钮,进入 Step1of5 界面,如下图所示:
这里我选择的是简体中文
输入 ADODB 的路径“/usr/share/php/adodb”,单击提交按钮。
提醒:这里 ADODB 的路径,可以用如下命令去搜索
find / -name adodb
提交后,进入了 Step 2 of 5 界面,如下图所示:
输入数据库信息,Pick a Database type:MySQL,Database Name:snortdb,Database Host:
127.0.0.1,Database User Name:snort,Database Password:snortpassword
单击下面的提交按钮进入 Step 3 of 5,如下图所示:
设置用户名和密码
单击提交按钮,进入 Step 4 of 5 界面,如下图所示:
单击上图红框框部分,在数据库中创建 BASE 用到的表。
如果出现: