SafeChildren Banner

Havoc Oracle Solaris Experts

domingo, 24 de julio de 2011

Qué es Crossbow y Cómo Utilizarlo en Solaris/OpenIndiana - Parte 4

Introducción
En las primeras partes de Qué es Crossbow y Cómo utilizarlo hablábamos de cada una de sus partes principales, hoy, haremos un pequeño acercamiento a los sistemas de auditoría.

Estadísticas de Red
Ya hemos visto en Qué es Crossbow y Cómo utilizarlo - Parte 3 el comando <flowstat> que nos mostraba las estadísticas de uso de los flujos, pero siempre contando desde el último boot de nuestro sistema.

Pero, si queremos saber el consumo de un flujo en un determinado tiempo, por ejemplo, a primera hora de la mañana? La verdad es que entonces el comando <flowstat> -tal y como lo hemos visto- no nos sirve, pero tranquilos, que para ello tenemos soluciones.

Auditoría de Red
En Solaris/OpenIndiana tenemos un sistema de auditoría muy potente, en el que se incluyen el registro de red <net> y flujos <flow> entre otros.
Para ello, simplemente deberemos definir un archivo donde queremos que se almacenen los datos -en nuestro caso /var/log/ipqos/hseries/hseries.log- y el tipo de auditoría que queremos realizar.

Todo ello se realizará mediante el comando </usr/sbin/acctadm> que ahora veremos con más detalle.

Tipos de Auditorías
Tenemos dos tipos de auditorías: básica y extendida. Para ver qué tipos de datos incluyen cada una de las auditorías utilizaremos la opción <-r> que nos mostrará todas las opciones de auditoría.
havoc@h1000:~$ pfexec acctadm -r
process:
extended pid,uid,gid,cpu,time,command,tty,projid,taskid,ancpid,wait-status,zone,flag,memory,mstate
basic    pid,uid,gid,cpu,time,command,tty,flag
task:
extended taskid,projid,cpu,time,host,mstate,anctaskid,zone
basic    taskid,projid,cpu,time
flow:
extended saddr,daddr,sport,dport,proto,dsfield,nbytes,npkts,action,ctime,lseen,projid,uid
basic    saddr,daddr,sport,dport,proto,nbytes,npkts,action
net:
extended name,ehost,edest,vlan_pid,vlan_tci,sap,priority,bwlimit,devname,src_ip,dst_ip,src_port,dst_port,protocol,dsfield,curtime,ibytes,obytes,ipkts,opkts,ierrpkts,oerrpkts
basic    name,devname,ehost,edest,vlan_pid,vlan_tci,sap,priority,bwlimit,curtime,ibytes,obytes,ipkts,opkts,ierrpkts,oerrpkts
En nuestro ejemplo de hoy, vamos a centrarnos en el módulo <net> que nos permitirá auditar los eventos de red.


Activar el sistema de auditoría
La activación del sistema de auditoría se realiza mediante el comando y la opción <-e {módulo}>, o utilizando el servicio .

Antes de poder activarlo, debemos asignar un fichero donde realizaremos el registro -más adelante veremos otras opciones como utilizar para proteger el acceso al mismo-.

Como os he comentado, en nuestro ejemplo utilizaremos el archivo ; y el modo de auditoría
havoc@h1000:~$ pfexec mkdir -p /var/log/ipqos/hseries
havoc@h1000:~$ pfexec acctadm -e extended -f /var/log/ipqos/hseries/hseries.log net
Comprobar el estado de la auditoría
Podemos comprobar el estado de un sistema de auditoría utilizando el comando , en nuestro caso, queremos comprobar el estado del módulo
havoc@h1000:~$ pfexec acctadm net
     Net accounting: active
     Net accounting file: /var/log/ipqos/hseries/hseries.log
     Tracked net resources: extended
     Untracked net resources: none
Vemos que nos indica que está y que el modo de auditoría es

Desactivar el sistema de auditoría
Tenemos varias formas de desactivar la auditoría en función de cómo queramos actuar, por ejemplo, si queremos desactivar temporalmente la auditoría -por una necesidad puntual- o de forma permanente:

Para desactivar temporalmente -sin cerrar el archivo de auditoría-, utilizaremos la opción <-D {modulo}> del comando , por ejemplo, si queremos desactivar la auditoría del módulo :
havoc@h1000:~$ pfexec acctadm -D net
havoc@h1000:~$ pfexec acctadm net
    Net accounting: inactive
    Net accounting file: /var/log/ipqos/hseries/hseries.log
    Tracked net resources: extended
    Untracked net resources: none
Para desactivar definitivamente la auditoría, utilizaremos la opción <-x {modulo}>, por ejemplo, al igual que antes el módulo de

havoc@h1000:~$ pfexec acctadm -x net
havoc@h1000:~$ pfexec acctadm net
            Net accounting: inactive
       Net accounting file: none
     Tracked net resources: extended
   Untracked net resources: none
Debemos fijarnos en el valor de que ahora nos indica , es decir, está totalmente desactivada

Volver a activar las estadísticas
En ambos casos, deberemos utilizar la opción <-e -f {archivo}> para activar el sistema, por ejemplo, vemos cómo activarlo utilizando los dos métodos.

Si cerramos el sistema de auditoría
havoc@h1000:~$ pfexec acctadm -x net
havoc@h1000:~$ pfexec acctadm net
            Net accounting: inactive
       Net accounting file: none
     Tracked net resources: extended
   Untracked net resources: none
havoc@h1000:~$ pfexec acctadm -e extended -f /var/log/ipqos/hseries/hseries.log net
havoc@h1000:~$ pfexec acctadm net
            Net accounting: active
   Net accounting file: /var/log/ipqos/hseries/hseries.log
   Tracked net resources: extended
   Untracked net resources: none
Y ahora si tenemos desactivada la auditoría temporalmente
havoc@h1000:~$ pfexec acctadm -D net
havoc@h1000:~$ pfexec acctadm net
            Net accounting: inactive
   Net accounting file: /var/log/ipqos/hseries/hseries.log
   Tracked net resources: extended
   Untracked net resources: none
havoc@h1000:~$ pfexec acctadm -e extended -f /var/log/ipqos/hseries/hseries.log net
havoc@h1000:~$ pfexec acctadm net
   Net accounting: active
   Net accounting file: /var/log/ipqos/hseries/hseries.log
   Tracked net resources: extended
   Untracked net resources: none

Estadísticas Avanzadas de Red
Ahora que ya sabemos activar el sistema de auditoría para la red en Solaris/OpenIndiana, podemos utilizar las funciones avanzadas del comando

Para ello, utilizaremos las opciones <-h -f {archivo-de-auditoria}>, por ejemplo, siguiendo con nuestro ejemplo:
havoc@h1000:~$ pfexec flowstat -h -f /var/log/ipqos/hseries/hseries.log
Esto nos daría un resumen de los datos, por ejemplo:
havoc@h1000:~$ pfexec flowstat -h -f /var/log/ipqos/hseries/hseries.log
FLOW      DURATION  IPACKETS RBYTES OPACKETS OBYTES BANDWIDTH
dns-flow   2655      42       6330   42       3834  0 Mbps
http-flow  2655      5662     535659 7389     94452 0.04 Mbps
https-flow 2655      16       1391   24       946   0 Mbps

Estadísticas Utilizando un Rango de Fechas
Si queremos ver los datos capturados utilizando un rango de fechas, deberemos utilizar las opciones <-s {fecha,hora inicial} -e {fecha,hora final}>, por ejemplo, si queremos saber el tráfico entre las 22:00h y las 22:02h para el flow haremos
havoc@h1000:~$ pfexec flowstat -h -f /var/log/ipqos/hseries/hseries.log -s 07/24/2011,22:00:00 -e 07/24/2011,22:02:00 http-flow
FLOW         START      END      RBYTES   OBYTES   BANDWIDTH
http-flow    21:59:57  22:00:17  3105     5141     0.003 Mbps
http-flow    22:00:17  22:00:37  3518     5145     0.003 Mbps
http-flow    22:00:37  22:00:57  2913     4646     0.003 Mbps
http-flow    22:00:57  22:01:17  3568     5950     0.003 Mbps
http-flow    22:01:17  22:01:37  2676     4592     0.002 Mbps
http-flow    22:01:37  22:01:57  2971     5099     0.003 Mbps

<< Qué es Crossbow y Cómo Utilizarlo en Solaris/OpenIndiana - Parte 1
<< Qué es Crossbow y Cómo Utilizarlo en Solaris/OpenIndiana - Parte 2
<< Qué es Crossbow y Cómo Utilizarlo en Solaris/OpenIndiana - Parte 3



Conclusiones
Hemos visto cómo podemos utilizar el sistema de auditoría de Solaris/OpenIndiana para registrar los eventos de red.

Además, esto nos da las bases necesarias para poder explorar los sistemas de auditoría que nos aporta Solaris/OpenIndiana así que ... ya lo veremos dentro de nuestra serie RBAC, Privilegios y Permisos en Solaris