CentOS7 和 Ubantu 18.04 安装suricata 6.0.0

安装suricata 6.0.0


  
详情参考官方文档: https://suricata.readthedocs.io/en/suricata-6.0.0/
文档第3章详细的安装步骤和需求,是英文,看不懂的下个翻译软件慢慢看
  

一、CentOS7 下安装suricata

1、初始化 Linux 环境

因为某些产品原因,小型主机(服务器)内存极小,所以需要安装迷你版的linux。
1、首先配置好服务器网卡。

2、centos7 minimal 因为是精简版,很多东西都没有,所以先安装一些常用的工具,安装不了就用root权限安装

# 为了方便bash使用,先安装一个自动补全命令的工具bash-completion
yum install bash-completion -y

# 常用的工具
yum install -y perl
yum install -y net-tools
yum install -y gcc
yum install -y wget

2、下载并解压suricata 6.0.0

早上7点左右下载特别快,几秒就搞定,下午或者晚上下载就慢如乌龟,可能要个把小时

wget https://www.openinfosecfoundation.org/download/suricata-6.0.0.tar.gz
tar xzvf suricata 6.0.0.tar.gz

3、安装依赖

依赖项很多,一时间也不知道需要多少,先把常用的安装好,之后安装若是出错(ERROR)都会有提示缺什么东西。

yum install -y libpcap zlib libyaml libpcap-devel jansson-devel pcre-devel lua-devel libmaxminddb-devel epel-release  libnetfilter_queue-devel nss-devel libyaml-devel zlib-devel luajit-devel

yum install -y rustc cargo


  

4、开始安装

# 进入suricata 目录
cd suricata.6.0.0

# 以下三步非常重要,可能会出现各种ERROR,解决方法就是提示缺什么就安装什么(因为依赖没安装好的原因)
# 配置
./configure --disable-gccmarch-native --localstatedir=/var --prefix=/usr/ --sysconfdir=/etc --enable-lua --enable-geoip
# make
# make install
# make install-conf    # 生成conf 目录

接下来应该执行 make install-rules (生成规则文件),但是有些suricata版本没有安装PIP是无法执行的,无法执行该指令的要先安装pip

yum -y install epel-release
yum -y install python-pip
pip install --upgrade pip

# 安装suricata-update
pip install --upgrade suricata-update
# 执行
suricate-update

#  回到suricata.6.0.0目录,继续执行
make install-rules

在终端输入 suricata
如果没有安装好依赖会出现错误提示,错误提示其实就是依赖没安装好,搜索一下如何安装相关依赖就OK,安装好了会出现如下界面:

在这里插入图片描述

现在只要在输入正确的.yaml文件路径 .rules路径 网卡名称(例如eth0),就能够正常运行起来了。

二、Ubantu 18.04 环境安装suricata调优

suricata是流量检测和拦截引擎,而pf_ring就是加速优化,功能基本等于零拷贝,原理类似与绕过内核,直接传送给suricata,很有必要安装。
以下安装能够实现pfring、IPS、IDS模式。
全程进入root 账户下安装

1、安装pf_ring

apt-get install -y git
git clone https://github.com/ntop/PF_RING.git
# 安装依赖
apt-get install -y build-essential bison flex linux-headers-$(uname -r) ethtool
# 开始编译
cd PF_RING
make
cd kernel
make && make install
insmod pf_ring.ko
cd ../userland/lib
./configure && make && make install
cd ../libpcap-1.9.1/
./configure && make && make install

2、安装hyperscan

# 安装依赖
apt-get install -y cmake ragel python-dev libbz2-dev doxygen

# 安装boost
wget https://dl.bintray.com/boostorg/release/1.66.0/source/boost_1_66_0.tar.gz
tar xvzf boost_1_66_0.tar.gz
cd boost_1_66_0
./bootstrap.sh --prefix=~/tmp/boost-1.66
# 下面一步比较漫长i5处理器30分钟左右
./b2 install
# 如果嫌安装时间太长,可以安装最新版的boost,最新版的优化了很多东西,安装速度很快
https://dl.bintray.com/boostorg/release/1.74.0/source/boost_1_74_0.tar.gz


# 安装hyperscan
git clone https://github.com/intel/hyperscan
cd hyperscan
mkdir build
cd build
cmake -DBUILD_STATIC_AND_SHARED=1 ../
# 如果上一步失败,则执行下面一步
cmake -DBUILD_STATIC_AND_SHARED=1 -DBOOST_ROOT=~/tmp/boost-1.66 ../
# 开始编译,又是漫长的等待,i5处理器40分钟左右
make && make install

3、安装suricata

# 安装依赖,下面依赖从官方文档复制过来的最全依赖,而且还包含了支持IPS模式的依赖
# 由于每个人的ubantu环境也不太一样,所以过程中还是可能缺依赖,缺啥补啥就行
apt-get install -y libpcre3 libpcre3-dbg libpcre3-dev build-essential libpcap-dev libnet1-dev libyaml-0-2 libyaml-dev pkg-config zlib1g zlib1g-dev libcap-ng-dev libcap-ng0 make libmagic-dev libnss3-dev libgeoip-dev liblua5.1-dev libhiredis-dev libevent-dev python-yaml rustc cargo libnetfilter-queue-dev libnetfilter-queue1 libnetfilter-log-dev libnetfilter-log1 libnfnetlink-dev libnfnetlink0 libjansson-dev libmaxminddb-dev
wget https://www.openinfosecfoundation.org/download/suricata-6.0.0.tar.gz
tar xzvf suricata 6.0.0.tar.gz
cd suricata-6.0.0
# 如果不在虚拟机装就不需要第一个--disable-gccmarch-native 但是如果需要移植suricata到其他机器上一定要加上这个参数,因为每台机器的CPU架构不同
LIBS="-lrt" ./configure --disable-gccmarch-native --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-pfring --with-libpfring-includes=/usr/local/pfring/include --with-libpfring-libraries=/usr/local/pfring/lib --enable-lua --enable-geoip --enable-nfqueue 
# 编译suricata
make && make install && ldconfig
make install-conf

只要编译之后没有出现“ERROR” 就说明安装成功了。

suricata-6.0.0默认是没有规则文件的,需要另外安装。
由于我是自己测试,自己写一个简单规则文件就行,所以暂时不用下载庞大的规则文件,如果需要安装规则文件,请参考我记录的另外一篇文档:
https://blog.csdn.net/qq_31507523/article/details/110092228

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值