Suricata 1.0.0 setup on Ubuntu 10.04

» 03 July 2010 » In Uncategorized »

A few days ago was released Suricata 1.0.0 the new open source-based intrusion detection system (IDS). The main  feature of this IDS is the multi-threaded engine, this  feature is very usefull when you have to monitor a high speed links, having a multi-core monster machine allow you to use all the cores available. Other IDSs use only a  signle core with with the risk to be ineffective by  dropping packets due the CPU overload. Other feaures present on Suricata are: IpReputation, MultiPacketMatching, HardwareAccelerationSupport.

In this short How-To I’m going to cover an easy and effective way to compile and install Suricata on Ubuntu Server 10.04.

Add the suricata user and prepare the required folders:

useradd suricata -s /bin/false -c suricata_user
mkdir /etc/suricata
mkdir /var/log/suricata/
chown suricata.suricata /var/log/suricata/

Install the packages needed for compiling:

apt-get install libpcre3-dev libpcap-dev libyaml-dev zlib1g-dev libnet1  libnet1-dev libcap-ng-dev libhtp1 libnetfilter-queue-dev libnetfilter-queue1 libnfnetlink-dev libnfnetlink0 build-essential checkinstall

Get suricata and decompress:

cd /tmp/
wget http://openinfosecfoundation.org/download/suricata-1.0.0.tar.gz
tar xvfz suricata-1.0.0.tar.gz
cd suricata-1.0.0

Run ./configure –help to see all the build options.

This will build suricata with IPS capabilities

./configure –enable-nfqueue

Suricata Configuration:
NFQueue support:          yes
IPFW support:             no
PF_RING support:          no
Prelude support:          no
Unit tests enabled:       no
Debug output enabled:     no
Debug validation enabled: no
CUDA enabled:             no
DAG enabled:              no
Profiling enabled:        no
GCC Protect enabled:      no
GCC march native enabled: yes
GCC Profile enabled:      no
Unified native time:      no
Non-bundled htp:          no

make

checkinstall

**********************************************************************

Done. The new package has been installed and saved to

/tmp/suricata-1.0.0/suricata_1.0.0-1_i386.deb

You can remove it from your system anytime using:

dpkg -r suricata

**********************************************************************

Install suricata with dpkg -i suricata_1.0.0-1_i386.deb

Copy the configuration files

cp classification.config suricata.yaml /etc/suricata/

Edit the configuration file suricata.yaml according to your  need. In the file are present some main sections to be configured.

Logging section, where you can define which kind of output is suitable, plain text, unified2-alert to be used with Barnyard2
The network interface, where you can define the network interface/s where you are runnin suricata, eth,wlan,br.
The rule-path, where suricata will look for the rules. In my case I’m sharing the same rules used by snort /etc/snort/rules
The HOME_NET, where you need to define the local addresses of your system/network.
The  libhtp config, where is possible to configure the web servers variables.

To start suricata:

suricata -D  -c /etc/suricata/suricata.yaml -s /etc/suricata/classification.config -i eth0

This is Suricata version 1.0.0
CPUs Summary:
CPUs online: 1
CPUs configured 1
Output module “AlertFastLog” registered.
Output module “AlertDebugLog” registered.
Output module “AlertUnifiedLog” registered.
Output module “AlertUnifiedAlert” registered.
Output module “Unified2Alert” registered.
Output module “LogHttpLog” registered.

You can tail the suricata log to check if is working, and run Inundator to create some allerts. So far so good.

tail -f /var/log/suricata/fast.log

[1:2001219:18] ET SCAN Potential SSH Scan [**]
[Classification: Attempted Information Leak]
[Priority: 3] {6} 173.244.197.210:27041 -> victim_ip

[1:2002911:4] ET SCAN Potential VNC Scan 5900-5920
[**] [Classification: Attempted Information Leak]
[Priority: 3] {6} 173.244.197.210:27041 -> victim_ip

Thanks to all the Suricata developers for all the efforts placed to meet the 1st July deadline.

Did you like this? Share it:
Scridb filter

Tags: ,

Trackback URL

7 Comments on "Suricata 1.0.0 setup on Ubuntu 10.04"

  1. pbailey
    nvucinic
    15/07/2010 at 10:44 am Permalink

    apt-get install libpcre3-dev libpcap-dev libyaml-dev zlib1g-dev libnet1 libnet1-dev libcap-ng-dev libhtp1 libnetfilter-queue-dev libnetfilter-queue1

    *** THIS *** ***
    ibnfnetlink-dev
    *****TO*******
    libnfnetlink-dev
    *****************

    libnfnetlink0 build-essential checkinstall

  2. pbailey
    claytonh
    22/07/2010 at 7:13 pm Permalink

    ibnfnetlink-dev should be libnfnetlink-dev

    Great thanks!

  3. pbailey
    parag paril
    27/01/2011 at 11:57 am Permalink

    Please send me procedure to add B.A.S.E support when suricata is configured as IPS.
    added to that please advice on how to make use of IPS capabilities(modify existing rule signature + create new rule to drop intrusion packet).

  4. pbailey
    alecks2010
    03/02/2011 at 5:39 pm Permalink

    Suricata give me error when using snort rules, I’m using suricata 1.0.0. I also download the rules from http://rules.emergingthreats.net/open/suricata/rules/ without success. Is there something am I missing?

  5. pbailey
    jawhar
    24/03/2011 at 8:18 am Permalink

    pleassssse i need help
    i confiqure suricata with ids mode
    how i can configure ips mode ?

  6. pbailey
    ElatedMInd
    05/04/2011 at 9:50 am Permalink

    I think this is only 70% of the manual. NFQueue support: yes – so where is the part of manual where U have to forward specific trafic in iptables?

  7. pbailey
    MedoZero
    04/06/2011 at 7:12 pm Permalink

    is Suricata has a web interface or any other interface to mange?

    Hello,
    please check this http://bailey.st/blog/smooth-sec/

    best,
    Phillip

Hi Stranger, leave a comment:

ALLOWED XHTML TAGS:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Subscribe to Comments