Snort搭建

来源:互联网 发布:博罗县网络问政 编辑:程序博客网 时间:2024/06/06 02:51

最近搭建Snort,踩了不少坑,终于找到了一篇靠谱的文章,CentOS6.6基于snort+barnyard2+base的 入侵检测系统的搭建,感谢这位作者的分享,以下是我按照文章步骤进行实验的笔记。

一、准备工作

环境:Vmware+CentOS 6
snort+barnyard2+base
文件下载

备注:
- base:基于PHP,可以搜索、处理各种IDS、防火墙、网络监视工具生成的安全事件数据;
- libdnet:提供的简单、可移植的接口来操作底层网络,包括:网址操作、内核 arp(4) 缓存和 route(4) 表查找和操作、网络防火墙 (IP filter, ipfw, ipchains, pf, PktFilter, …)、网络接口查找和操作、IP tunnelling (BSD/Linux tun, Universal TUN/TAP device)、原始 IP包和以太网帧传输

二、安装配置LMAP

1、安装apache

yum install -y httpd
  • 配置文件路径:/etc/httpd/conf/httpd.conf
  • web目录:/var/www/html
  • Apache模块路径:/usr/sbin/apachectl

2、安装php及插件

yum install -y php php-mysql php-mbstring php-mcrypt php-gd mcrypt libmcrypt libmcrypt-develphp --version #查看php版本
  • php的配置文件:/etc/php.ini

3、安装pear

yum install -y php-pearpear upgrade pearpear channel-update pear.php.netpear install mailpear install Image_Graph-alpha Image_Canvas-alpha Image_Color Numbers_Romanpear install  mail_mime

4、安装mysql

yum install -y mysql mysql-server mysql-develmysql --version #查看mysql版本
  • mysql数据目录:/var/lib/mysql
  • mysql配置文件:/etc/my.cnf
  • mysqldump文件位置:/usr/bin/mysqldump

5、安装adodb

tar -zxvf adodb5.20.9.tar.gz -C /var/www/htmlmv /var/www/html/adodb5 /var/www/html/adodb #重命名

6、安装base

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

7、修改php.ini

vi /etc/php.ini error_reporting = E_ALL & ~E_NOTICE

8、修改权限

chown -R apache:apache /var/www/htmlchmod 755 /var/www/html/adodb

9、配置mysql

tar -zxvf barnyard2-1.9.tar.gzservice mysqld start #启动mysqlmysql -u root #使用root登录,默认不用密码use mysqlupdate user set password=password('123456') where user='root'; #设置用户root的登录密码create database snort;grant create,select,update,insert,delete on snort.* to snort@localhost identified by '123456'; #创建名为snort、密码为123456的数据库用户并赋予名为snort数据库权限exit #退出mysql -u snort -p -Dsnort < /root/Desktop/snort/barnyard2-1.9/schemas/create_mysql #根据特定的格式创建数据库表#进入mysql验证表是否创建成功mysql -u root -p123456 #密码use snort;show tables; #查看snort数据库中表是否创建成功,成功如图

10、配置base

service mysqld start #启动mysqlservice httpd start #启动apachechkconfig iptables off #关闭防火墙

(1)用浏览器打开127.0.0.1/base/setup/index.php

(2)选择【Continue】后,选择显示语言,设置adodb路径

(3)配置数据库,名称为snort,用户名密码是之前设置过的snort,123456

(4)设置admin用户名密码

(5)选择【Create BASE AG】

(6)成功会显示红色”successfully created”

(7)选择【step 5】,成功安装

三、安装配置Snort和barnyard2

1、安装依赖包

yum install –y gcc flex bison zlib libpcap tcpdump gcc-c++ pcre* zlib* libdnet libdnet-devel

2、安装libdnet

tar -zxvf libdnet-1.12.tgzcd libdnet-1.12./configuremakemake install

3、安装libpcap

tar -zxvf libpcap-1.0.0.tar.gzcd libpcap-1.0.0./configuremakemake install

4、安装DAQ

tar -zxvf daq-2.0.4.tar.gzcd daq-2.0.4./configuremakemake install

5、安装Snort

tar -zxvf snort-2.9.7.0.tar.gzcd snort-2.9.7.0./configuremakemake install

6、配置Snort

mkdir /etc/snortmkdir /var/log/snort #存放日志文件mkdir /usr/local/lib/snort_dynamicrulesmkdir /etc/snort/rules #存放规则touch /etc/snort/rules/white_list.rules /etc/snort/rules/black_list.rules #黑白名单cp /root/Desktop/snort/snort-2.9.7.0/etc/gen-msg.map threshold.conf classification.config reference.config unicode.map snort.conf /etc/snort/#编辑配置文件vi /etc/snort/snort.conf#修改路径var RULE_PATH /etc/snort/rulesvar SO_RULE_PATH /etc/snort/so_rulesvar PREPROC_RULE_PATH /etc/snort/preproc_rulesvar WHITE_LIST_PATH /etc/snort/rulesvar BLACK_LIST_PATH /etc/snort/rules#设置log目录config logdir:/var/log/snort#配置输出插件output unified2:filename snort.log,limit 128

7、配置默认规则

tar -zxvf snortrules-snapshot-2970.tar.gz -C /etc/snort/cp /etc/snort/etc/sid-msg.map /etc/snort/

8、测试Snort

snort -T -i eth1 -c /etc/snort/snort.conf

参数解释:
-T 指定启动模式:测试
-i 指定网络接口
-c 指定配置文件

出现下图”successfully”,说明配置完成

9、安装barnyard2

#之前解压过barnyard2,所以直接cd到解压后的目录cd root/Desktop/snort/barnyard2-1.9./configure --with-mysql --with-mysql-libraries=/usr/lib64/mysql/makemake install

10、配置barnyard2

mkdir /var/log/barnyard2touch /var/log/snort/barnyard2.waldocp /root/Desktop/snort/barnyard2-1.9/etc/barnyard2.conf /etc/snort#修改配置文件vi /etc/snort/barnyard2.confconfig logdir:/var/log/barnyard2config hostname:localhostconfig interface:eth0config waldo_file:/var/log/snort/barnyard.waldooutput database: log, mysql, user=snort password=123456 dbname=snort host=localhost

11、测试barnyard2

barnyard2 -c /etc/snort/barnyard2.conf -d /var/log/snort -f snort.log -w /var/log/snort/barnyard2.waldo

参数解释:
-c 指定配置文件
-d 指定log目录
-f 指定log文件
-w 指定waldo文件

出现下图”waiting for new data”,说明配置成功

四、测试IDS

1、添加规则

vi /etc/snort/rules/local.rules#添加一条检查ping包的规则alert icmp any any -> any any (msg: "IcmP Packet detected";sid:1000001;)

规则注解:
alert:触发规则后做出的动作
icmp:协议类型
第一个any:源IP(网段),any表示任意
第二个any:源端口,any表示任意
“>”:表示方向
第三个any:目标IP(网段),any表示任意

第四个any:目标端口,any表示任意

Msg字符:告警名称

Sid:id号,个人编写的规则使用1,000,000以上
注意空格

2.启动IDS

service mysqld start service httpd start   chkconfig iptables offbarnyard2 -c /etc/snort/barnyard2.conf -d /var/log/snort -f snort.log -w /var/log/snort/barnyard2.waldo -Dsnort -c /etc/snort/snort.conf -i eth0 –D#-D选项用来让命令转入后台运行

3.测试IDS

向安装了Snort的机器的IP发送ping包,刷新base页面,可以看到ICMP告警

tail /var/log/snort/alert #查看告警日志

手动停止IDS命令:

killall -9 snort barnyard2

参考:

http://www.secbox.cn/skill/8796.html
http://blog.csdn.net/u013816144/article/details/53729153
http://www.cnblogs.com/shadowturtle/archive/2012/11/16/2773445.html

原创粉丝点击