miércoles, 4 de agosto de 2010

Guardar los registros del nat translation en un servidor Linux

Situación:
Deseo guardar en un servidor Linux las entradas de NAT en un router Cisco de tal manera de conocer siempre que dirección IP y puerto tenian asignado en un moment especifico.


Solución:

Salvar cada uno de los registros NAT creado por el Router Cisco en un servidor Linux (Debian) usando rsyslog...

Procedimiento:
Comencemos con el servidor Linux...

Para lograr esto, empezamos creando el archivo que vamos a utilizar para guardar todo los registros que nos va a enviar el router.

#touch /var/log/cisco-nat.log
#chmod 640 /var/log/cisco-nat.log

Una vez hecho esto, procedemos a editar el siguiente archivo "/etc/rsyslog.conf" y tenemos que quitarle el símbolo de "#" (usados para documentar) a las siguientes entradas:


# provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514

Quedando de la siguiente manera,

# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

Adicionalmente, agregamos las siguientes entradas

$UDPServerAddress 0.0.0.0
$AllowedSender UDP, 3.3.3.3

La primera usada para decirle que use toda las interfaces que tenga disponible, y la segunda, "3.3.3.3" la usamos para permitirle a la dirección 3.3.3.3 enviar los registros.

Luego, procedemos a colocar la siguiente linea

local7.* /var/log/cisco-nat.log

(Opcional)

Una vez que hayamos colocado las entradas mencionadas anteriormente, es posible que estas se empiecen a duplicar en los archivos "syslog" o "messages", etc...

Para evitar que esto ocurra y tengamos las entradas duplicadas en los archivos, podemos editar las entradas que mencionan "syslog" y "messages"

Por ejemplo,

Esta linea:
*.* -/var/log/syslog
La modificamos para que quede de la siguiente manera

*.*;local7.* -/var/log/syslog

De esta manera evitamos que los registros se dupliquen...

Una vez hecho esto, reiniciamos el servicio de la siguiente manera:

/etc/init.d/rsyslog restart


Luego, en el equipo cisco, es bastante sencillo lo que tenemos que hacer...

Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)# no logging console
Router(config)# no logging monitor
Router(config)# ip nat log trans sys
Router(config)# logging host 1.1.1.1


Listo!!!!!

Ya deberíamos de comenzar a ver los registros de nuestro Router en el archivo cisco-nat.log


Revisión:
A continuación, una muestra de como quedaría


2010-08-04T16:52:23.759260-04:18 3.3.3.3 2178773: 14w1d: %IPNAT-6-NAT_CREATED: Created tcp 10.58.50.50:64807 11.11.11.11:30079 192.69.239.224:445 192.69.239.224:445
2010-08-04T16:52:23.764009-04:18 3.3.3.3 2178774: 14w1d: %IPNAT-6-NAT_CREATED: Created tcp 10.58.51.2:3019 11.11.11.11:30167 69.63.190.18:80 69.63.190.18:80

Cualquier comentario se agradece.

Suerte!

1 comentario:

  1. buenas tardes tengo algunas preguntas:

    hay otro procedimiento para guardar los registreos del NAT en un servidor linux

    el procedimiento es compatible con todos los router cisco o se puede usar cualquier otro

    ResponderEliminar

¿Algo adicional que quieras mencionar? ¿Algun consejo?, ¿truco? Gracias!

Una mejora práctica en el Transporte DNS sobre UDP en IPv6

Por Hugo Salgado y Alejandro Acosta Introducción y planteamiento del problema En el presente documento queremos discutir sobre un draft (bor...