Radio UNCION ACTIVA

Es

domingo, 31 de enero de 2010

Instalación de Snort + MySQL + Apache2 en Debian Lenny

Snort es un sniffer de paquetes y un detector de intrusos basado en red (se monitoriza todo un dominio de colisión). Es un software muy flexible que ofrece capacidades de almacenamien tanto en archivos de texto como en bases de datos. Implementa un motor de detección de ataques y barrido de puertos que permite registrar, alertar y responder ante cualquier anomalía previamente definida. Así mismo existen herramientas de terceros para mostrar informes en tiempo real (ACID) o para convertirlo en un Sistema Detector y Preventor de Intrusos. Snort está disponible bajo licencia GPL, gratuito y funciona bajo plataformas UNIX/Linux y Windows. Dispone de una gran cantidad de filtros o patrones ya predefinidos, así como actualizaciones constantes ante casos de ataques, barridos o vulnerabilidades que vayan siendo detectadas a través de los distintos boletines de seguridad.

—Primero vamos a instalar los paquetes necesarios: (suponiendo que no tengamos ya un apache corriendo)
# apt-get install mysql-server apache2 php5

—A continuación instalamos los paquetes de snort.
# apt-get install snort-mysql libio-socket-ssl-perl snort-doc

Nos realizara las siguientes preguntas:

Intervalo de direcciones para la red local

192.168.1.0/24 o la red en la que estemos.

¡OJO! Nos dará el siguiente error: (mas adelante lo reconfiguramos)

error_snort_mysql

—Ahora crearemos la base de datos para snort, el usuario snort y la contraseña snort y le garantizamos todos los permisos: (para acceder a MySQL como root, nos solicitara la contaseña del mismo)
# mysql -uroot -p
mysql> CREATE USER ’snort’@'localhost’ IDENTIFIED BY ’snort’;
mysql> GRANT ALL PRIVILEGES ON * . * TO ’snort’@'localhost’ IDENTIFIED BY ’snort’;
mysql> CREATE DATABASE IF NOT EXISTS `snort` ;
mysql> GRANT ALL PRIVILEGES ON `snort` . * TO ’snort’@'localhost’;

—Creamos las tablas dentro de la BBDD de snort con el usuario snort utilizando un script: (ponemos la contraseña de snort)
# cd /usr/share/doc/snort-mysql/
# zcat create_mysql.gz | mysql -u snort -h localhost -p snort

—Solucionamos el error anterior borrando el fichero que nos indica el error.
# rm /etc/snort/db-pending-config

—Para acabar de instalar snort-mysql ejecutamos:
# apt-get upgrade

—Reconfiguramos el paquete snort-mysql para que nos haga todas las preguntas: (también podriamos hacerlo manualmente modificando el archivo snort.conf)
# dpkg-reconfigure -plow snort-mysql

Nos formulará las siguientes preguntas:

1.- Método de arranque: arranque
2.- Indicamos la interfaz: eth0
3.- Indicamos la red: 192.168.1.0/24
4.- Desactivar el modo promiscuo de la interfaz: NO
5.- Cambiarse el orden de las pruebas: NO
6.- Opciones adicionales: no ponemos nada, Aceptamos
7.- Recibir mails con resumenes?: a la elecció del usuario
8.- Ocurrencias antes de incluir una alerta: 5
9.- Quiere configurar una base de datos: SI
10.- Servidor de base de datos: localhost
11.- Base de datos: snort
12.- Usuario base de datos: snort
13.- Contraseña del usuario: snort

—Verificamos que los ficheros de configuración sean correctos.
# snort -devyq -c /etc/snort/snort.conf -l /var/log/snort/ -D
# snort -c /etc/snort/snort.conf

—Comprobamos que este corriendo snort.
# ps -ef | grep snort
# /etc/init.d/snort status

—Por último reiniciamos snort y verificamos que este corriendo:
# /etc/init.d/snort restart
# ps -ef | grep snort

http://nekan.net/instalacion-de-snort-mysql-apache2-en-debian-lenny

jueves, 21 de enero de 2010

Como instalar y administrar una red de detección de intrusos.

Instalación

El software requerido es Snort compilado con soporte para la base de datos MySQL (snort-mysql), un conjunto de reglas de ataques para el Snort (snort-rules-default), la base de datos MySQL, soporte para ruby y como forma opcional un servidor web Apache.


MySQL
Antes de comenzar con la instalación es importante explicar que vamos a crear una contraseña para el usuario root en la base de datos, el cual tiene control total sobre MySQL. A su vez nos crearemos el usuario snort con contraseña contraseña_bbdd_snort y una base de datos donde escribirá Snort, que en el caso de la guía la he llamado snort28 (por la versión del Snort). Como nota final indicar que la contraseña que empleamos para el usuario snort que no contenga caracteres no numéricos o letras puesto que da problemas.

Instalamos la base de datos MySQL:

aptitude install libmysqlclient15-dev mysql-client mysql-server

En la instalación de la base de datos se nos pedira que introduzcamos la contraseña de root para la base de datos. En caso de no haberla introducido podremos usar la herramienta mysqladmin para generarla:

mysqladmin -u root password contraseña_bbdd_root

Accedemos a mysql como root para crear la base de datos de nombre snort28 y darle permisos al usuario snort para que tenga control total sobre dicha base de datos. Adicionalmente crearemos la contraseña para el usuario snort:

mysql -u root -p
(contraseña_bbdd_root)
> create database snort28;
> grant all on snort28.* to 'snort'@'localhost' identified by 'contraseña_bbdd_snort';
> flush privileges;
> quit

Creamos toda la estructura de la base de datos que requerirá snort para guardar sus datos:

cd /usr/share/doc/snort-mysql/
zcat create_mysql.gz | mysql -u snort -p snort28

Snort

Instalamos Snort y sus reglas:

aptitude install snort-mysql snort-rules-default

Configuramos snort modificando las siguientes líneas del fichero /etc/snort/snort.conf:

vim /etc/snort/snort.conf

var HOME_NET 192.168.0.0/16 #Poner nuestra red interna
var RULE_PATH /etc/snort/rules
dynamicpreprocessor directory /usr/lib/snort_dynamicpreprocessor/
dynamicengine /usr/lib/snort_dynamicengine/libsf_engine.so
output database: log, mysql, user=snort password=contraseña_bbdd_snort dbname=snort28 host=localhost

Para finalizar indicamos que ya tenemos tanto el Snort como la base de datos lista:

rm /etc/snort/db-pending-config

Snorby

Instalamos Ruby y sus dependencias para dar soporte a Snorby:

aptitude install git-core openssl ruby1.8-dev libopenssl-ruby libapr1-dev libaprutil1-dev rubygems1.8 rake

Nos bajamos snorby:

cd /var
git clone git://github.com/mephux/Snorby.git
cd /var/Snorby/config
cp database.yml.example database.yml
cp email.yml.example email.yml

Editamos database.yml:

production:
adapter: mysql
database: snort28
username: snort
password: contraseña_bbdd_snort
host: localhost

Ahora es donde empieza la fiesta... a descargarse dependencias toca:

gem install rake
gem install -v=2.3.2 rails
gem install mysql
gem install prawn
gem install passenger

Instalamos ya por fin Snorby:

cd /var/Snorby
rake snorby:setup RAILS_ENV=production
rake snorby:update RAILS_ENV=production

Ahora comprobamos que realmente esta funcionando levantando el servicio web de ruby:

ruby script/server -e production -b 127.0.0.1 -p 8888 -d

Nos conectamos por un navegador web a la siguiente dirección:

http://127.0.0.1:8888/

Si todo ha funcionado veremos una ventana de login, por defecto el usuario es snorby y la contraseña admin. Para cambiarlo vamos a la barra superior Settings -> MySettings -> Cambiamos el login y el password.

Captura de pantalla de interfaz Snorby: http://doc.ubuntu-es.org/Imagen:Snorby.jpg#filelinks

Servidor web Apache

Nos puede interesar emplear el servidor web Apache por SSL en vez del servidor web de Ruby. Para ello hay que seguir los siguientes pasos:

Instalamos las dependencias:

aptitude install apache2 apache2-prefork-dev build-essential

Creamos un servidor virtual:

vim /etc/apache2/sites-available/ids


SSLEngine On
SSLCertificateFile /etc/apache2/ssl/apache2.pem
LoadModule passenger_module /var/lib/gems/1.8/gems/passenger-2.2.8/ext/apache2/mod_passenger.so
PassengerRoot /var/lib/gems/1.8/gems/passenger-2.2.8
PassengerRuby /usr/bin/ruby1.8
ServerAdmin webmaster@localhost
DocumentRoot /var/Snorby/public

Options FollowSymLinks
AllowOverride None

ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined


Indicamos que queremos que el servidor virtual se cree en el arranque de apache:

ln -s /etc/apache2/sites-available/ids /etc/apache2/sites-enabled/ids

Agregamos el nuevo puerto a la lista de puertos:

vim /etc/apache2/ports.conf


Listen 8888


Habilitar módulos ssl

ln -s /etc/apache2/mods-available/ssl.conf /etc/apache2/mods-enabled/
ln -s /etc/apache2/mods-available/ssl.load /etc/apache2/mods-enabled/

Creamos los certificados:

mkdir /etc/apache2/ssl
cd /etc/apache2/ssl
openssl genrsa -out server.key 2048
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt
cat server.key server.crt >> apache2.pem

Instalamos la compatibilidad con apache <-> ruby mediante Passenger:

/var/lib/gems/1.8/gems/passenger-2.2.8/bin/passenger-install-apache2-module

Funcionamiento Snort

todo...


Construcción de reglas

todo..

Obtenido de "http://doc.ubuntu-es.org/IDS"

viernes, 1 de enero de 2010

Primer post del año

Para empezar presumo q llegue al 2010.
Pues este primer dia del 2010 puedo presumir q fui a playa linda aqui en la region costa de chiapas, estuvo chido, nos fuimos a la 1, salimos d aya a las 7 y llegue a mi casa a las 8:40, no vivo lejos sino q estuvo concurrido el tramo de la playa a mi casa, chequen estas fotos

Imagen010
fila trasera

Imagen013
fila delantera

tambien les comento q hubo mucha gente q venia atras y se metia y casi probocaban choques jeje aunq cuando vieron q andaba cerca el federal sintieron la presion porq se ponian quietos jajajaja q risa me dio jajjaja

bueno pues por el moemento solo es pongo cuidense hasta la proxima
Powered By Blogger