[IDS]CentOS6.6下搭建基于snort+barnyard2+base的入侵检测系统,超详细!!!

最详细的CentOS6.6下搭建基于snort+barnyard2+base的入侵检测系统
免责声明
一.如果因为使用本文档照成损失(系统崩溃、数据丢失等),作者不承担任何责任。
二.本文档只是个人使用本文档标注的软件版本成功搭建基于snort的IDS的过程,不代表在其他(相同或不相同)环境下也能安装成功,请仔细阅读并理解文档。
三.善用搜索!善用搜索!善用搜索!遇到错误请理解错误提示,优先用搜索引擎搜索解决办法

本人亲测可行(win10+VMware12-pro),百度网盘地址在末尾。
最详细的安装过程~
最详细的安装过程~
最详细的安装过程~

一、准备工作
1安装CentOS-6.6-x86_64-bin-DVD1(用CentOS7后面配置base会报错,尝试过没成功)
CentOS 6.6的DVD镜像文件可以去下载 http://vault.centos.org/6.6/isos/x86_64/

2.安装的过程中需要安装自定义软件。
(php支持以及mysql服务端以及客户端)

重点!!!先检查右上角是否连上网络(可以使用ifconfig查看是否获取到ip地址,
未连接的话就点击一下eth0连接

1.更换源
更换成阿里云源,更新系统、下载软件速度快

首先进入/etc/yum.repos.d目录,下载Centos-6.repo,并删除原文件,也可以备份删除

1.#cd /etc/yum.repos.d
2.#wget /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
3.#rm -rf CentOS-Base.repo

这里需要修改Centos-6.repo

4. #vi Centos-6.repo

将里面所有http都修改为https,然后保存退出,并运行清理源和保存软件缓存至本地

5.#yum clean all
6.#yum makecache

2.更新系统
这一步更新系统软件,时间较久

#yum -y upgrade 
#yum-y update

3.安装epel源,这一步一定要安装,不然后面搜索不到php组件

#yum install -y epel-release

4.传输安装文件
1.这里传输文件使用winSCP软件,先下载ssh服务,并打开允许ROOT登陆

#yum install openssh

2.进入/etc/ssh,修改sshd_config

 #vi /etc/ssh/sshd_config

找到PermitRootLogin 去掉前面的 #
3.点击ESC ,输入wq! 保存退出
4.重启sshd服务

#service sshd restart

5.在主机安装winSCP(软件包里有,或者直接百度下)
6.输入CentOS的ip地址,以及root账户密码
(如果连接超时,请检查网络适配器VMware Network Adapter VMnet1以及VMware Network Adapter VMnet18 是否开启)
7.将所有安装压缩包文件拖曳至root/root目录

二、安装配置LMAP
1.安装LMAP组件,搜索不到软件请注意上文,一、(3)

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

2.安装php插件,搜索不到软件请注意上文,一、(3)

#yum install -y mcrypt libmcrypt libmcrypt-devel

3.安装pear插件

#yum install -y php-pear
#pear upgrade pear
#pear channel-update pear.php.net
#pear install mail	
#pear install Image_Graph-alpha Image_Canvas-alpha Image_Color Numbers_Roman
#pear install  mail_mime

4.安装adodb(确保在root主目录)
1.首先以root模式登陆 (su)
2.输入cd 回到root主目录
3.后面带有~

#tar zxvf adodb519.tar.gz -C /var/www/html
#mv /var/www/html/adodb5 /var/www/html/adodb

5.安装base(确保在root主目录)
解压文件至 /var/www/html

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

移动文件至 /var/www/html/base

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

6.修改php.ini

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

7.设置html目录权限

#chown -R apache:apache /var/www/html

8.设置adodb权限

#chmod 777 /var/www/html/adodb

9.配置mysql
解压barnyard2(还是在root根目录解压,这里要用里面的文件创mysql表)

#tar zxvf barnyard2-1.9.tar.gz

启动mysql

#service mysqld start

设置root密码为123456(这里让输入密码时直接回车,第一次默认为空密码)

#mysqladmin -u root -p password 123456

以root登陆mysql (密码为123456)

#mysql -u root -p 

创建名为snort的数据库

#>create database snort;

创建名为snort、密码为123456的数据库用户并赋予名为snort数据库权限

#>grant create,select,update,insert,delete on snort.* to snort@localhost identified by '123456';

退出

#>exit

创建数据库表

#mysql -usnort -p -Dsnort < /root/barnyard2-1.9/schemas/create_mysql

10.配置base

#service mysqld start		启动mysql服务
#service httpd start		启动apache服务
#service iptables stop		关闭防火墙

用浏览器打开

http://localhost/base/setup/index.php

1.点击Continuue (如果这一页报错php loging lever to higher,不用理会)

2.选择语言为chinese或者simple chinese,设置adodb路径为**/var/www/html/adodb**

3.配置数据库(数据库名为snort 数据库主机为 localhost 用户为snort 密码为123456 )

4.设置base用户和密码(这里我自己设置admin 123456,自己记的住就好,影响不大)

5.点击“Createe BASE AG
6.成功的话会有红色successfilly created字样(Centos7没有,原因未知),点击“step 5”
7.安装成功

三、安装配置snort+barnyard2
1.安装依赖包

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

2.安装libdnet(确保在root根目录)

#tar zxvf libdnet-1.12.tgz
#cd libdnet-1.12
#./configure && make && make install

3.安装libpcap(确保在root根目录)

#tar zxvf libpcap-1.0.0.tar.gz
#cd libpcap-1.0.0
#./configure && make && make install

4.安装daq(确保在root主目录)

 #tar zxvf daq-2.0.4.tar.gz
 #cd daq-2.0.4
 #./configure && make && make install

5.安装snort (确保在root主目录)

#tar zxvf snort-2.9.7.0.tar.gz
#cd snort-2.9.7.0
#./configure && make && make install

6.配置snort
1.创建需要的目录以及文件

#mkdir /etc/snort
#mkdir /var/log/snort
#mkdir /usr/local/lib/snort_dynamicrules
#mkdir /etc/snort/rules
#touch /etc/snort/rules/white_list.rules /etc/snort/rules/black_list.rules 

2.将/root/snort-2.9.7.0/etc目录下的gen-msg.map threshold.conf classification.config reference.config unicode.map snort.conf拷贝至/etc/snort/,如果命令运行出错,手动使用winSCP复制

#cp /root/snort-2.9.7.0/etc/gen-msg.map /etc/snort/
#cp /root/snort-2.9.7.0/etc/threshold.conf /etc/snort/
#cp /root/snort-2.9.7.0/etc/classification.config /etc/snort/
#cp /root/snort-2.9.7.0/etc/reference.config /etc/snort/
#cp /root/snort-2.9.7.0/etc/unicode.map /etc/snort/
#cp /root/snort-2.9.7.0/etc/ snort.conf /etc/snort/

编辑配置文件(以下内容都是在snort.conf里修改)

 #vi /etc/snort/snort.conf

修改路径变量

   var RULE_PATH /etc/snort/rules
    var SO_RULE_PATH /etc/snort/so_rules
    var PREPROC_RULE_PATH /etc/snort/preproc_rules
    var WHITE_LIST_PATH /etc/snort/rules
    var BLACK_LIST_PATH /etc/snort/rules

设置log目录

config logdir:/var/log/snort

配置输出插件

output unified2:filename snort.log,limit 128

7.配置默认规则(确认在root主目录)

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

8.测试snort
切换到/etc/snort目录下执行以下命令

#snort -T -i eth0 -c /etc/snort/snort.conf

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

如果结尾出现“success/succesfully”的字样说明配置好了
按ctrl+c终止测试

9.安装barnyard2

#cd /root/barnyard2-1.9
#./configure --with-mysql --with-mysql-libraries=/usr/lib64/mysql/
#make && make install

10.配置barnyard2
创建需要的文件和目录

#mkdir /var/log/barnyard2
	#touch /var/log/snort/barnyard2.waldo	
	#cp /root/barnyard2-1.9/etc/barnyard2.conf /etc/snort

修改配置文件

#vi /etc/snort/barnyard2.conf 

找到以下选项并修改信息

config logdir:/var/log/barnyard2
config hostname:localhost
config interface:eth0
config waldo_file:/var/log/snort/barnyard.waldo
output 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 spool file”字样则表示barnyard2配置成功
按ctrl+c终止测试
四、测试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		启动mysql服务
#service httpd start		启动apache服务
#service iptables stop		关闭防火墙

手动运行ids(2条命令一定要按顺序运行)(后台运行)

  # barnyard2 -c /etc/snort/barnyard2.conf -d /var/log/snort -f snort.log -w /var/log/snort/barnyard2.waldo -D
  # snort -c snort.conf -A console -i eth0 -D

3.测试IDS
用主机向IDS的IP发送ping包,刷新base的页面会出现ICMP告警

ping 192.168.*.*

5.停止IDS

killall -9 snort barnyard2

另外附上所有安装包以及文档。百度云盘 地址

链接:https://pan.baidu.com/s/1SDQVqPORbzjgx5tx8OK9fw 提取码:o8lq

你可能感兴趣的:(网络安全实验)