Chinaunix首页 | 论坛 | 博客
  • 博客访问: 226396
  • 博文数量: 171
  • 博客积分: 1410
  • 博客等级: 上尉
  • 技术积分: 1795
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-15 14:01
文章分类

全部博文(171)

文章存档

2010年(1)

2009年(168)

2008年(2)

我的朋友

分类: 网络与安全

2010-03-04 17:06:41

以下参官方手册和无数先行者经验以及自己的实践写成的
 
一. 运行环境
 
   系统环境: Microsoft Windows Server 2003 Enterprise Edition with Service Pack 2
 
   硬件环境: Intel (R) Pentium(R) 4 CPU 3.00GHz, 1G Ram,
             Broadcom NetXtrem NIC + 3Com 3C996B Gigabit Server NIC
 
   软件环境:
   Snort_2.8.5.3 For windows 主程序 以及Snort规则包snortrules-snapshot-2[1].8.tar.gz
   WinPcap_4.1.1 网络数据包截取驱动程序
   BASE-1.4.4 基于php 的入侵检测数据库分析控制台 http://base.secureideas.net/
   Apache 2.2.14 web server for windows
   PHP 5.2.13 for windows 提供 php 脚本环境支持,请注意要下载zip包,
   ADODB 5.10 PHP5的数据库连接组件(支持MySQL/MSSQL/PostageSQL等)
   Mysql 5.1.44 MySQLGUITools5.0r17 MySQL数据库及管理工具
 
二. 安装过程
 
1. Snort
   先安装WinPcap, 然后在安装Snort。建议将Snort安装在非系统分区,如 D:\Snort;
   然后将另外下载的snort规则包解压拷贝到snort安装目录下,会有rules和doc两个文件夹;、
   接着修改snort的设置文件:D:\Snort\etc\snort.conf  
 

#设置规则包路径:
var d:\snort\rules
#设置数据库连接:
output database: log, mysql, user=snortuser password=snort dbname=snortdb host=localhost
#设置动态预处理库目录
dynamicpreprocessor directory D
:\Snort\lib\snort_dynamicpreprocessor
dynamicengine D:\Snort\lib\snort_dynamicengine\sf_engine.dll

 
2. 数据库
   安装 mysql-essential-5.1.44-win32.msi 和 MySQLGUITools5.0r17.msi,
   设置数据库实例流程:
   使用GUI Tools建立snortdb和snortarc两个数据库,注意数据库和用户命名不要包含符号,由于Snort可能存在无法正确识别带符号数据库名或用户名的Bug,因此尽量使用英文字母和数字命名。BASE有数据库存档功能,这里建立的snortdb是snort存储的数据库,而snortarc是BASE的存档数据库,这两个数据库在安装BASE的时候需要设置进去。
   然后对这两个数据库建立用户snortuser并授予CREATE/SELECT/INSERT/UPDATE/DELETE权限。
   接着导入数据库信息
   mysql -u root -p < ./snort/schemas/create_mysql snortdb
   mysql -u root -p < ./snort/schemas/create_mysql snortarc
   完成后查看数据库情况, 确认创建成功。
 
3. WEB平台
   之所以选择Apache+PHP搭建WEB平台主要是考虑到这个组合的运行效率较高而且安全配置更为简单。
使用支持SSL的Apache可以构建更加安全的WEB平台,不过这里对于Apache SSL的配置不作介绍,请参考相关资料。
 
i. Apache的安装配置:
编辑D:\Application\Apache\conf\httpd.conf 文件,
更改下面内容,注意在Apache配置文件中目录层次一律使用正斜杠分隔:
 

#设置网站根目录:
DocumentRoot "D:/Application/wwwroot"
<Directory "D:/Application/wwwroot">
#添加php默认目录索引:
DirectoryIndex index.html index.htm index.php

 
ii. PHP的安装配置
使用PHP非安装软件包可以避免开启不必要的功能和插件。解压软件包至目录D:\Application\php
在安装目录下,复制php.ini-dist为php.ini并编辑其内容:
 

;设置扩展库目录:
extension_dir = "D:\Application\php\ext"
;开启所需的扩展插件
extension=php_gd2.dll
extension=php_mysql.dll
;禁用http文件上传,封堵一切可能的不安全因素
file_uploads = off


iii. PHP与Apache的整合
其实也就是在Apache的设置文件D:\Application\Apache\conf\httpd.conf中添加对PHP的支持:
#自定义设置,注意使用正斜杠
 

PHPIniDir "d:/Application/php"
LoadFile "d:/Application/php/php5ts.dll"
LoadModule php5_module "d:/Application/php/php5apache2_2.dll"
AddType application/x-httpd-php .php


设置完成后重启Apache确认是否运行正常,假如出现错误,可以使用Apache的Test Configuration查找错误原因。请务必注意语法和空格,否则会导致Apache重启失败,如以下启动失败错误信息:
 
[Tue Mar 02 16:28:23 2010] [warn] pid file D:/Application/Apache2.2/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?
 
vi. PHP插件的安装设置
 
ADODB是用于PHP的数据库连接插件,因为它是基于php的,所以只需要将软件包复制到WEB发布目录下,即:D:\Application\wwwroot\adodb,后面在配置BASE时会需要设定这个目录进行调用。
Pear插件的安装脚本默认包含在PHP的主目录下,运行go-pear.bat对pear安装选项进行配置,安装前需要保证Internet连接正常。
设置好安装目录就会自动下载安装所需内容,完成安装后,还需要通过Pear安装图表支持的插件
在CMD中进入pear.bat所在目录,这里就是D:\Application\php运行下面命令:
   pear install image_color
   pear install image_canvas-alpha
   pear install image_graph-alpha
   pear list (查看当前 pear 安装情况)
注意:如果由于网速原因导致pear install无法安装组件,则必须到下载插件的压缩包,然后放到D:\Application\PHP\tmp中,接着再用pear install 压缩包名称
 
通过pear config-show 查看配置参数和 pear config-set 修改配置参数
 
4. BASE安装调试
 
复制BASE软件包至WEB发布目录:D:\Application\wwwroot\base
在浏览器中输入进行初始配置。
 
假如提示PHP的Logging Level过高可以根据提示内容修改PHP.ini中的内容为:
error_reporting = E_ALL & ~E_NOTICE
 
然后输入adodb组件的安装目录,BASE会对它进行调用。
 
输入前面设置好的数据库相关信息
设置BASE的用户认证与管理员账号信息
最后创建BASE的AG数据库,完成设置。
使用地址可以登录使用BASE。不过由于还没开启Snort的抓包服务,此时的IDS数据库中是没有可用信息的,当然BASE中也看不到任何数据。
 
 
5. Snort监控服务
 
使用 d:\snort\bin\snort.exe –W可以查看主机上的所有NIC的信息,以便在设置抓包接口时能够选择正确的监听网卡。

使用 d:\snort\bin\snort -v –i1 测试网络抓包是否正常,(-i2中的数值就是前面使用-W参数查看到的网卡的编号)。注意完成后的统计信息,确保掉包率为0%。

使用 d:\snort\bin\snort -c d:\snort\etc\snort.conf -l d:\snort\log -K ascii -i1 测试最终使用的命令行参数运行正常。
在命令行下进入Snort程序目录执行:

snort /SERVICE /INSTALL -c d:\snort\etc\snort.conf -l d:\snort\log -K ascii -i1

收到'[SNORT_SERVICE] Successfully added the Snort service to the Services database. '信息就表示Snort已作为系统服务安装到主机中,进入services.msc启动Snort服务并设置为自动启动。
查看系统Eventlog无错误信息以确认Snort服务运行正常。此时Snort以Windows系统服务的方式执行网络监听。登录BASE即可看到记录下来的数据包和报警信息了。
阅读(3244) | 评论(0) | 转发(0) |
0

上一篇:意外的发现源于艰苦的过程

下一篇:没有了

给主人留下些什么吧!~~