Main Menu
Home
Search
Support
How To's
OpenWiki
Contact Us
Users Blogs
User HowTo's
Announcements
Google Translation

 

 

 

 

Snort IDS in Linux PDF Print E-mail
User Rating: / 0
PoorBest 
Written by salman   
This Howto will explain how to install and run snort (Intrusion Detection System) on Linux.

THIS IS A HOWTO TO SETUP SNORT WITH ACID ON

 RHEL 4.0

 

First of All we must know what is Snort and what Acid is.

 

Snort = Free program for Network Intrusion Detections System

Acid = Analysis Console for Intrusion Detection or We can say a Web frontend for Snort, as it works with the Snort’s log Alerts.

 

Please remember that your system must have php-4.3.5 or greater for the following to work you can check it by the following command.

 

#rpm –qa php ß

 

If you don’t have php-4 or greater downloads it and configures it.

 

Now let’s move to Configure Snort with Acid

 

First download all the necessary packages for its proper functioning.

1. Acid          2. Adodb       3.Acidlab       4. Mysql        5. Snort 6. Jpgraph

 

7. Php-4    8. Apache

Can be downloaded from www.sourceforge.net

 

Now let’s start the configurations.

First we will setup Snort from source code as follow:

 

#tar zxvf Snort.tar

The above will untar the Snort.tar and will create necessary directories in newly created snort directory. The main directories created are (etc and schemas)

We also have to download the latest rules from www.snort.org/dl

 

Now after the above step

We have to create following directories our selves.

# mkdir /etc/snort

&

#mkdir /etc/snort/rules

#mkdir /var/log/snort

 

Now copy the directories created by untar of Snort i.e its all files from etc to /etc/snort

 And copy the files from rules directory (which was downloaded from www.snort.org/dl) to our created /etc/snort/rules directory.

 

Now perform the following after completion of the above steps

 

#. /configure snort –with-mysql

# make

#make install

 

If all goes well the snort is installed yet not configured for its configuration we have to edit Snort.conf file found in  /etc/snort/snort.conf therefore we perform the following:

# vi /etc/snort/snort.conf and edit the configurations files as under

########################################## #################SNORT.CONF################

 

var HOME_NET any   Change to var HOME_NET 192.168.5.211 (or

any of your internal network ip or ip range)

 

          var EXTERNAL_NET any Change to var EXTERNAL_NET !$HOME_NET

 

var RULE_PATH ../rules Change to var RULE_PATH /etc/snort/rules

 

Also uncomment the line which says and change the user, password and dbname according to your preference e.g.

Output database: log, mysql, user=snort password=snort123 dbname=snort host=localhost

 

Now Snort configuration is finished now let’s check if snort is running so for this we will type the following command

 

# Snort –c /etc/snort/snort.conf

 

If all goes well the above command will successfully run the snort in nids (network intrusion detection system) mode.

 

The above will automatically create (alert file) if some one tries to intrude (hack or scan etc) in our network. The alert file will be created in the directory which we created that is /var/log/snort/.

By studying the alert file we can see who tries to penetrate in our network.

 

Now we will configure mysql

First we start mysql with the command.

#service mysqld start

and then we will perform as follows:

 

#mysql ß-Enter

mysql>

mysql>SET PASSWORD FOR ‘root’@’localhost=PASSWORD (‘your

Password’);ß

mysql>Enter new password: ****** ß

mysql>Repeat password: ***** ß

mysql>exit

And now enter the mysql with the following command

#mysql –u root –p ß

Provide the password and now at mysql prompt apply the commands as follows

mysql> create database snort; ß

mysql> grant INSERT, SELECT, on snort.* to snort@localhost; ß

mysql> SET PASSWORD FOR ‘snort’@’localhost’=PASSWORD(‘snort123’);

mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on snort.* to

     snort@localhost;

mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on snort.* to

   snort;

mysql>exit

 

Now at shell prompt type the following to create tables in the newly created database snort

#mysql –D snort –u root –p </root/snort-2.6.1.4/schemas/create_mysql

If no error occurs the tables in snort data base is created.

 

Now we need a front end for Snort which will make use of alert file and log it graphically on the web.

For such purpose we will utilize Acid (The package)

Perform the following steps:

 

#tar zxvf acid.tar ß

 

First create a new directory named acid as under:

 

#mkdir /var/www/html/acid ß

 

Now copy the content of the acid directory recently untarred to /var/www/html/acid. After this

 

#tar zxvf adodb.tar ß

 

Now copy the content of the adodb directory recently untarred to the same /var/www/html/acid directory

 

Now untar the jpgraph.tar the same way i.e.

 

#tar zxvf jpgraph.tar ß

 

Now copy the content of the jpgraph directory recently untarred to the same /var/www/html/acid directory

 

Now find the file named acid_conf.php in the /var/www/html/acid directory and edit as described below

 

 

 

 

#######################################################################acid_conf.php#####################

 

 

 

$DBlib_path = “/var/www/html/acid”;   (This line shows the path of adodb files

and we know that we copy the adodb    directory in /var/www/html/acid)

 

$DBtype = “mysql”;                              (This shows the database type)

 

 

Change the following in output plugin as well as in Archive DB

 

$alert_dbname =”snort”;                       (database name)

$alert_host    =”localhost”;                    (localhost name)

$alert_port = “3306”;                                     (mysql port for connection)

$alert_user = “snort”;                                    (user name)          

$alert_password = “snort123”;               (password for user snort)

 

 

 

 

 

Lastly we have to change the following

 

$ChartLib_path = “/var/www/html/acid/jpgraph/src”; (The path which leads

 

to Jpgraph.php)

 

That’s it we have done the entire configuration:

 

Now lets restart all the services:

 

# service httpd restart ß

# service mysqld restart ß

# snort –c /etc/snort/snort.conf ß

 

After restarting the service open you web browser and point it to http://localhost/acid and press enter.

 

If all goes well you will see the following but before this you have to crate AG by clicking on the create buttons.

 

I hope you guys have understood every step if you have problems just e-mail on my personal account i.e. E-mail : This e-mail address is being protected from spam bots, you need JavaScript enabled to view it

Last Updated ( Friday, 09 May 2008 )