1、安装依赖包

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

2、安装libdnet

wget https://phoenixnap.dl.sourceforge.net/project/libdnet/libdnet/libdnet-1.11/libdnet-1.11.tar.gz
tar -zxvf libdnet-1.11.tar.gz
cd libdnet-1.11
./configure
make
make install

3、安装libpcap

wget http://www.tcpdump.org/release/libpcap-1.8.1.tar.gz
tar -zxvf libpcap-1.8.1.tar.gz
cd libpcap-1.8.1
./configure
make
make install

4、安装DAQ

wget https://www.snort.org/downloads/snort/daq-2.0.6.tar.gz
tar -zxvf daq-2.0.6.tar.gz
cd daq-2.0.6
./configure
make
make install

5、安装Snort

wget https://www.snort.org/downloads/archive/snort/snort-2.9.11.1.tar.gz
tar -zxvf snort-2.9.11.1.tar.gz
cd snort-2.9.11.1
./configure --prefix=/usr/local/snort --enable-pthread --enable-gre --enable-mpls --enable-targetbased make
make install

验证

输入:#snort -V

出现一头小猪,并显示正确的版本号,说明snort已经安装成功。

运行#snort –V出现:

错误:找不到命令。原因是系统找不到snort的路径。

解决:

执行命令:

  export PATH=$PATH:/usr/local/snort/bin

原因:

snort安装完毕,没有在系统路径变量PATH中,添加snort可执行文件路径。

6、配置Snort

mkdir /etc/snort
mkdir /var/log/snort #存放日志文件
mkdir /usr/local/lib/snort_dynamicrules
mkdir /etc/snort/rules #存放规则 cp /etc/snort/snort-2.9.11.1/etc/* /etc/snort/rules

#编辑配置文件

vi /etc/snort/snort.conf
#修改路径
var HOME_NET 10.60.250.0/24
var RULE_PATH /etc/snort/rules
var EXTERNAL_NET !$HOME_NET



#设置log目录

config logdir:/var/log/snort
#配置输出插件
Snort输出设置在snort.conf文件的
Step #6: Configure output plugins
output unified2: filename merged.log, limit 128, nostamp, mpls_event_types, vlan_event_types

7、安装mysql

yum install -y mysql mysql-server mysql-devel
mysql --version #查看mysql版本
service mysqld start #启动mysql

要启动MySQL数据库是却是这样的提示

Failed to start mysqld.service: Unit not found

解决方法如下:

  首先需要安装mariadb-server

  ~]# yum install -y mariadb-server

  启动服务

  ~]# systemctl start mariadb.service

  添加到开机启动

  ~]# systemctl enable mariadb.service

8、配置mysql

mysql -u root -p #使用root登录,默认不用密码
use mysql
update user set password=password('root') 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 #退出
wget https://codeload.github.com/firnsy/barnyard2/zip/master 下载barnyard2
mv master /etc/snort/barnyard2.zip
cd /etc/snort
unzip barnyard2.zip
cd barnyard2-master
mysql -u snort -p -Dsnort < /etc/snort/barnyard2-master/schemas/create_mysql #根据特定的格式创建数据库表 #进入mysql验证表是否创建成功
mysql -u root -p
123456 #密码
use snort;
show tables; #查看snort数据库中表是否创建成功,

成功如图

9、配置默认规则

vi /etc/snort/snort.conf
7) Customize your rule set
部分下面进行配置。
在其下添加include $RULE_PATH/etc/snort/rules
把其余的注释掉

配置文件中要把所有的没有 \的未注释的都加上 \ (注意是空格和斜杠)

10、测试Snort

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

参数解释:

-T 指定启动模式:测试

-i 指定网络接口

-c 指定配置文件

成功

11、安装barnyard2

#之前解压过barnyard2,所以直接cd到解压后的目录
cd /etc/snort/barnyard2-master
sudo yum -y install libtool //安装libtool,否则出现no libtoolize错误。
./autogen.sh
./configure --with-mysql --with-mysql-libraries=/usr/lib64/mysql/
make
make install

12、配置barnyard2

sudo groupadd snort
useradd snort –g snort //创建snort组、snort用户
sudo mkdir /var/log/snort /var/log/barnyard2
touch /var/log/snort/barnyard2.waldo
chown snort.snort /var/log/snort/barnyard2.waldo
sudo chown -R snort.snort /var/log/snort
sudo chown -R snort.snort /var/log/barnyard2 //创建日志目录,并授权

#修改配置文件

cp /usr/local/etc/barnyard2.conf /etc/snort
vi /etc/snort/barnyard2.conf

1、找到 output alert_fast: stdout 改为:

output alert_fast

2、访问数据库设置

在database设置部分,找到mysql相关的,去掉注释符号#,并修改为:
output database: log, mysql, user=snort password= 123456 dbname=snort host=localhost

13、测试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文件

出错1:barnyard2 error while loading shared libraries libmysqlclient.so.21

解决:

sudo find –name libmysqlclient.so.21      //找到了,在/usr/local/mysql/lib目录下
ln -s /usr/local/mysql/lib/libmysqlclient.so.21 /usr/lib/libmysqlclient.so.21 //32位系统
ln -s /usr/local/mysql/lib/libmysqlclient.so.21 /usr/lib64/libmysqlclient.so.21 //64位系统

出错2:Unable to open SID file ‘/etc/snort/sid-msg.map’

解决:

将规则文件community-rules.tar解压到/etc/snort/目录下。
wget https://www.snort.org/downloads/community/community-rules.tar.gz
tar -zxvf community-rules.tar.gz
mv community-rules /etc/snort

出错3:database mysql_error: Access denied for user ‘root’@‘localhost’ (using password: YES)

解决:

vim /etc/snort/barnyard2.conf

出现下图,说明配置成功



至此snort和barnyard2的安装配置已完成

下面的就可以进行 Apache+php安装了。这里就不再演示了。自行安装完成,然后就可以进行测试了。

安装配置Snort和barnyard2的更多相关文章

  1. Windows 下如何安装配置Snort视频教程

    Windows 下如何安装配置Snort视频教程: 第一步: http://www.tudou.com/programs/view/UUbIQCng360/ 第二部: http://www.tudou ...

  2. 基于snort、barnyard2和base的 网络入侵检测系统的部署与应用

    1.项目分析 1.1.项目背景 伴随着互联网产业的不迅猛发展,新兴技术层数不穷,互联网通讯技术逐渐成为了各行各业不可替代的基础设施,越来越多的业务都是依靠互联网来得以实现.随着我国科技产业的飞速发展, ...

  3. linux入侵检测系统snort安装配置

    队长让俺瞅瞅snort,没想到安装配置都遇到问题...整理下过程,给跟我一样的家伙看看.. 由于本人机器是ubuntu,apt-get 几下就可以了,其实网上有不少这样的文章...之所以还要写就是.. ...

  4. 实验 snort安装配置与规则编写

    1 实验目的 在linux或windows任意一个平台下完成snort的安装,使snort工作在NIDS模式下,并编写符合相关情景要求的snort规则. 2 实验环境 物理机:windows 8.1 ...

  5. 配置snort

    0.如果要输出到mysql,请安装barnyard2 在此之前,请启动并配置mysql git clone https://github.com/firnsy/barnyard2 cd barnyar ...

  6. centos平台基于snort、barnyard2以及base的IDS(入侵检测系统)的搭建与测试及所遇问题汇总

    centos平台基于snort.barnyard2以及base的IDS(入侵检测系统)的搭建与测试及所遇问题汇总 原创 2016年12月19日 01:20:03 标签: centos / snort  ...

  7. wstngfw中配置snort

    wstngfw中配置snort 概述 Snort是入侵检测和预防系统.它可以将检测到的网络事件记录到日志并阻止它们.Snort使用称为规则的检测签名进行操作. Snort规则可以由用户自定义创建,或者 ...

  8. Hive安装配置指北(含Hive Metastore详解)

    个人主页: http://www.linbingdong.com 本文介绍Hive安装配置的整个过程,包括MySQL.Hive及Metastore的安装配置,并分析了Metastore三种配置方式的区 ...

  9. Hive on Spark安装配置详解(都是坑啊)

    个人主页:http://www.linbingdong.com 简书地址:http://www.jianshu.com/p/a7f75b868568 简介 本文主要记录如何安装配置Hive on Sp ...

随机推荐

  1. iOS 如何监听用户在手机设置里改变了系统的时间?

    如何监听用户未退出APP但通过Home键在手机设置里改变了系统的时间? 用户虽未退出APP,但是当它按Home键退到后台时 ,会调用该方法: - (void)applicationDidEnterBa ...

  2. MyBatis动态SQL和缓存

    1. 什么是动态SQL 静态SQL:静态SQL语句在程序运行前SQL语句必须是确定的,SQL语句中涉及的表的字段名必须是存在的,静态SQL的编译是在程序运行前的. 动态SQL:动态SQL语句是在程序运 ...

  3. OpenHarmony移植案例与原理:startup子系统之syspara_lite系统属性部件

    摘要:本文介绍下移植开发板时如何适配系统属性部件syspara_lite,并介绍下相关的运行机制原理. 本文分享自华为云社区<openharmony移植案例与原理 - startup子系统之sy ...

  4. MyBatis缓存Cache包

    Mybatis默认使用了一级缓存为数据查询提供效率,其底层数据结构为PerpetualCache.同时MyBatis不止实现了PerpetualCache,还有其他实现提供其他功能,如下: 可以从UM ...

  5. [LeetCode]1480. 一维数组的动态和

    给你一个数组 nums .数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]-nums[i]) . 请返回 nums 的动态和. 示例 1: 输入:nums = [1, ...

  6. 教你如何使用flask实现ajax数据入库

    摘要:在正式编写前需要了解一下如何在 python 函数中去判断,一个请求是 get 还是 post. 本文分享自华为云社区<[首发]flask 实现ajax 数据入库,并掌握文件上传>, ...

  7. [题解]hihoCoder挑战赛18——题目1 神奇字符串

    题目地址:http://hihocoder.com/problemset/problem/1264 时间限制:20000ms 单点时限:1000ms 内存限制:256MB 描述 我们说两个字符串是非常 ...

  8. 苹果如何控制android手机,安卓手机怎么控制苹果?

    小编经常通过手机远程控制别人手机,帮助他人解决一些电脑问题,另外还经常需要通过远程电脑控制服务器,管理脚本之家的服务器等等,可能这些对大家都没有什么诱惑,今天笔者为大家带来一个非常有趣的手机控制电脑的 ...

  9. Echarts图表类型

    每个系列通过 type 决定自己的图表类型: type: 'bar':柱状/条形图 type: 'line':折线/面积图 type: 'pie':饼图 type: 'scatter':散点(气泡)图 ...

  10. Java:Collections

    说明 工具类,提供了许多静态方法,用于操作集合. 模块:java.util.Collections 方法:全是static方法,使用时直接Collections.xxx( ... ) 返回值类型 方法 ...