Vmware: Virtual distributed switch

vmware_vds1

Para evitar la configuración de red en cada uno de los hosts, vamos a configurar en forma de virtual distributed switch (VDS), frente a los virutal standard switch (VSS).

http://www.vmware.com/files/pdf/virtual_networking_concepts.pdf

Un VDS se configura a nivel de datacenter.

En el momento de la creación, hay que definir el número de uplinks que vamos a utilizar. Aunque se pueden definir a posteriori, es mejor crear el número definitivo de uplinks, y añadir los interfaces físicos (vmnic) al uplink definitivo.

Consideraciones pre-migración

  • Hemos verificamos que los hosts mantienen la configuración de red, a pesar de tener una desconexión en el vcenter.
  • Si, en estado de desconexión del vcenter, se hacen cambios sobre VDS, hay problemas al conectarlo de nuevo.
  • La configuración de VDS se hace a nivel de datacenter. Eso significa que para hosts en distintos clusters, tenemos disponibles VDS’s con vlan’s que no tienen visibilidad. El control para evitar tráfico de red indeseado (tráfico de extranet o dmz, en zona interna) recae directemente sobre la electrónica de red.
  • A la hora de dimensionar el número de VDS, requerimos uno por cada canal físico o agregado (trunk) de red.
  • Borrar uplinks es extremadamente difícil. Es mejor hacer el diseño con el número de uplinks desde el comienzo de la definición del VDS.

Hosts y VDS

En un VDS, se pueden añadir o quitar hosts físicos.

Networking > VDS > Manage > Settings

vmware_vds_add_host

Añadir interfaces físicos a VDS y a uplink groups

vmware_vds_add_vmnic

Configuración vlan: virtual port group

Dentro de un VDS, se configuran virtual portgroup, que tienen la información de vlan, nic teaming y security igual que un portgroup tradicional.

Además, se les puede configura portmirroring.

Los virtual portgroup, se asignan en las máquinas virtuales igual que los tradicionales.

Powercli

Para gestionar virtual distributed switches, es necesario instalar el paquete  de VDSPowerCli , disponible en flings de vmware.

vmware_flings

 

pwcli1vmware

Cada vez que se vayan a invocar cmd-lets de VDS, es necesario cargar el módulo:

Add-PSSnapin VMware.VimAutomation.VdsComponent

Para ver todos los cmd-let disponibles

Get-Command –Module VMware.VimAutomation.VdsComponent

Snort: Consultas a la base de datos

Abrimos conexión con la base de datos

mysql -u root -p

En la base de datos de snort,

use snort;

Para ver el diagrama entidad relación de la base de datos:

Buscamos el identificador del evento que necesitamos:

select sig_id,sig_name from signature;

En mi caso, es

223 | COMMUNITY WEB-MISC mod_jrun overflow attempt

Seleccionamos los eventos de mi  signature:

select * from event where signature = 223;

En la tabla de eventos, tenemos las alertas con origen y destino

SELECT timestamp, inet_ntoa(ip_dest), inet_ntoa(ip_src) FROM iphdr WHERE  inet_ntoa(ip_src)="192.168.5.125";

 

Finalmente, hacemos el join entre ambas tablas, y ya podemos sacar el resultado a un fichero de texto:

select inet_ntoa(ip_src), inet_ntoa(ip_dst) from event,iphdr  where iphdr.cid=event.cid and event.sid=iphdr.sid and event.signature = 223  and inet_ntoa(ip_dst)="195.23.2.123" GROUP BY ip_src ORDER BY ip_src  INTO OUTFILE '/tmp/res.txt';

Sobre el acceso a snort a través de la base de datos, tienen un post estupendo en everything about nothing.

Sondas de intrusión : SNORT

Qué es snort

Sonda de intrusión opensource Instalación sobre Debian 7 Para la instalación, nos basaremos en este tutorial de binaryzone para instalar snort en debian lenny. Sin embargo, vamos a intentar instalar snort desde los paquetes oficiales de debian.

Prerequisitos:

apt-get install mysql-common mysql-client mysql-server php5

En caso de que no tengáis mucha práctica con los clientes en texto de mysql, os recomiendo poner también phpmyadmin apt-get install phpmyadmin

Creamos la base de datos que vamos a usar para snort:

mysql -u root -p
>create database snort;
> grant all on snort.* to snortuser@localhost identified by ‘snortpassword’;
>flush privileges;
>exit;

Para la instalación de snort, seguiremos los pasos de openmaniac apt-get install snort-mysql Direcciones: Any

Configuramos la base de datos que hemos creado:

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

 

Si cometemos algún error, podemos reejecutar:

dpkg-reconfigure snort-mysql

Tras esto, la instalación está completa:

root@srv /etc/snort# service snort restart
[ ok ] Starting Network Intrusion Detection System : snort (eth0 using /etc/snort/snort.conf …done).

Cambiar la interfaz donde se escucha:

root@server:/etc/snort# grep eth0 /etc/snort/*
/etc/snort/snort.debian.conf:DEBIAN_SNORT_INTERFACE="eth0"

Interfaz gráfica: BASE

Para la interfaz gráfica, usaremos Base. En las últimas versiones de debian, se ha discontinuado,por lo que instalaremos desde el repositorio.

# Se usará el directorio de apache2:
cd /var/www/
wget http://skylink.dl.sourceforge.net/project/secureideas/BASE/base-1.4.5/base-1.4.5.tar.gz
tar -xvzf base-1.4.5.tar.gz
mv base-1.4.5 base
cd base/
cp base_conf.php.dist base_conf.php

Editamos base_conf.php

$BASE_urlpath = "/base";
$alert_dbname   = 'snort_log';
$alert_host     = 'localhost';
$alert_port     = '';
$alert_user     = 'snortuser';
$alert_password =

En este punto, ya podemos acceder por la web:

http://server/base/

Si falta adodb, se puede instalar desde el repositorio de debian

Error loading the DB Abstraction library: from “/adodb.inc.php”

Descargar adodb  y ponerlo en una ruta accesible al servidor web:

tar -xvzf adodb518a.tgz
mv adodb5 /var/www/base/adodb
ls -la /var/www/base/adodb/

Y, editamos el fichero de configuración:grep -i dblib base_conf.php

$DBlib_path = ‘/var/www/base/adodb/’;

Finalmente, nuestro servidor ya está disponible:

http://myserver/base