Archivo de la categoría: Redes

Plugin routerconfigs de cacti a traves de ssh

Actualmente uso cacti para recolectar datos sobre el estado de la red en el trabajo, también tenemos el Cisco Works para la administración de la misma y desde el principio lo usé para hacer copias de seguridad de las configuraciones de los dispositivos. La cuestión es que no me gusta nada el Cisco Works, creo que consume una cantidad absurda de recursos de la máquina, buscar información en los logs es una verdadera odisea y los servicios dejan de funcionar cuando les apetece, sí se pueden detectar las caidas de los servicios mediante la configuración de alertas de las tareas que ejecute, de modo que si dejas  de recibir correos sabes que ha caido el servicio de automatización de tareas: el JRN (seria algo equivalente al CRON de Unix o al planificador de tareas de Windows). Pero es que dejó de gustarme desde el principio, los que vendieron el servicio pretendias que se usase como plataforma de monitorización pero es muy poco flexible: tan solo permite el envío de alertas a una única cuenta de correo, las alerta son muy poco configurables y cuando he recibido algún correo de alerta no me ha notificado la recuperación del dispositivo. Debo decir que no he dedicado grandes esfuerzos ni tiempo a comprender este software pero la gente a la que he consultado mis dudas, que tienen certificaciones, no han sabido responder mis dudas. Así que desde el principio preferí enfocar mis esfuerzos a Nagios y posteriormente añadí Cacti obteniendo una plataforma con niveles de soporte a los que alertar diferentes criticidades en los dispositivos y tiempos de respuesta para cada nivel, algo mucho más flexible no? 🙂 además junté la capacidad de backup del Cisco Works a la de alerta de Nagios de modo que se envía la versión y la configuración del dispositivo que esté fallando junto a los datos de contacto y localización de la oficina, a eso le llamo yo un buen sistema de alertas.

Bueno ya vale de royos lo que sí tiene chulo el CiscoWorks es la capacidad de ver las diferencias entre dos versiones de las configuraciones de un dispositivo esa fué la razón de seguir usandolo para los backups, sino habría creado un servicio de Nagios que realizase la tarea, pero como ya lo realizaba un software preferí coger las configuraciones por sftp desde la máquina de Nagios… hasta que descubrí el plugin routerconfigs que también dispone de esta funcionalidad genial!. Tras instalarlo y configurarlo vi que no tenia soporte para Cisco ASA ni para CSS y que además tan solo realiza conexiones por telnet así que los dispositivos configurados para ssh no funcionan. Bueno es software libre tengo el código así que ha modificarlo. Las modificaciones que he realizado son:

  • Soporte para copiar a través de SSH
  • Mejoras en rendimiento (muy básicas, seguro que se pueden realizar más)
  • Agregado soporte para ASA y CSS
  • Integración con el sistema de logs de Cacti durante la conexión
  • Copiar el startup-config en lugar del running-config

He modificado la versión 0.1 que cuelgo aquí por si puede ser de utilidad para alguien:

para aplicar el patch una vez descargado el plugin y el patch en el mismo directorio:

tar zxf routerconfigs-0.1.tar.gz

patch -p0 < routerconfigs_0.1_ssh.patch

Espero que os sea útil 😉

Compilar madwifi para injectar paquetes con el chipset AR5008 de atheros en Ubuntu 9.04 (Jaunty)

1-Pasos rápidos (Todo está explicado en detalle en el siguiente punto)

  • SO:  Ubuntu 9.04 jaunty (ejecuta el comando lsb_release -a para obtenerla)
  • Tarjeta wifi: Atheros Communications Inc. AR5008 Wireless Network Adapter (rev 01) (ejecuta el comando lscpi)
  • Kernel: 2.6.28-11-generic (obtenido mediante el comando uname -a)
  • gcc del kernel: gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu4) (ejecuta: cat /proc/version)

Para los que tengan esta versión de ubuntu aquí dejo un paquete con el driver listo para ser usado 😉 madwifi-hal-01056-r4003_20090416-1_i386

1-Obtener los drivers de madwifi-hal de la página de snapshots del projecto madwifi

2-Obtener el parche desde esta web r3745-corregido o mediante la orden:

wget http://patches.aircrack-ng.org/madwifi-ng-r3745.patch

3-Preparar, compilar el código, cargar el módulo y probar la injección

cd src

tar zxf madwifi-hal-0.10.5.6-current.tar.gz

cd madwifi-hal-0.10.5.6-r4003-20090416/

sudo aptitude install patch

patch -p1 < ../r3745.patch-corregido

make && sudo make install

sudo modprobe -r ath9k && sudo modprobe ath_pci

sudo airmon-ng start wifi0

Found 5 processes that could cause trouble.
If airodump-ng, aireplay-ng or airtun-ng stops working after
a short period of time, you may want to kill (some of) them!

PID    Name
2834    wpa_supplicant
2851    avahi-daemon
2852    avahi-daemon
5332    NetworkManager
9426    dhclient
Process with PID 9426 (dhclient) is running on interface ath0

Interface    Chipset        Driver

wifi0        Atheros        madwifi-ng
ath0        Atheros        madwifi-ng VAP (parent: wifi0)
ath1        Atheros        madwifi-ng VAP (parent: wifi0) (monitor mode enabled)

sudo aireplay-ng -9 ath1
18:25:52  Trying broadcast probe requests…
18:25:52  Injection is working!
18:25:54  Found 5 APs

Perfecto listo y funcionando 😉

Sigue leyendo

Configurar la interfaz de gestión en un Cisco CSS

Los CSS de Cisco difieren bastante del resto de dispositivos en cuanto a comandos y configuración se refiere, mientras que en la mayoría de los dispositivos para configurar una intefaz hay que entrar en la consola de configuración y, acto seguido, entrar en la interfaz deseada para introducir los comandos que la configuran (ip address, description, vlan etc..) en los CSS no tiene absolutamente nada que ver y configuras las ipés de forma totalmente diferente. El caso que ocupa este post es configurar la interfaz de gestión. Una vez iniciada la sesión en el dispositivo hay que introducir:

CSS# config
CSS (config)# boot
CSS (config-boot)# ip address 10.54.9.8

%% System must be rebooted for IP address to take effect

CSS (config-boot)# subnet mask 255.255.255.0

%% System must be rebooted for subnet mask change to take effect

CSS (config-boot)# gateway address 10.54.9.1

Tal y como nos indica el propio CSS para que estos cambios surjan efecto es necesario reiniciar el dispositivo, así que si está en producción se debe realizar fuera del horario laboral o programar un reinicio teniendo en cuenta llegar al trabajo antes que el resto para comprobar que todo funcione como debe 🙁 gajes del oficio…

La verdad que estas divergencias en la administración de los dispositivos Cisco es algo que no acabo de asimilar y no deja de sorprenderme, se puede interpretar como una derivación de adquirir otras empresas y no acabar de pulir las cosas o quizás busque promover de esta forma la necesidad de certificarse con ellos… sea cual sea el motivo, el resultado es que dificulta la administración de una red compuesta por sus productos y da la impresión de no ser capaz de seguir una linea clara en el desarrollo de sus IOS, aunque supongo que se lo puede permitir por su posición en el mercado.

¿Como saber el CSS qué está activo?

Una de las primeras preguntas que me surgió al tratar con estos dispositivos es ¿Como qué CSS está activo? Para poder realizar esta pregunta hay que encontrarse en un escenario con dos CSS configurados para alta disponivilidad compartiendo una IP mediante HSRP claro está. Tras intentar usar el comando de los Cisco ASA «show failover» y ver que fallaba tuve que charlar sobre el tema con mi amigo Google quien, naturalmente, me mostró el camino. Una vez iniciada la sesión tan solo hay que ejecutar el comando «show virtual-routers» que produce está salida en el terminal:

CSS1# show virtual-routers

Virtual-Routers:

Interface Address: 10.30.4.5       VRID: 10
Priority:      253                     Config. Priority:  253
State:         Master                  Master IP:         10.30.4.5
State Changes: 23                      Last Change:       01/29/2009 04:59:01
Preempt:       True                    Last Fail Reason:  IF Down
Last Clearing of Stat Counters:  01/07/2009 19:04:10

Critical-Services:
CRITICAL                    State: Alive       Type: Scripted

Interface Address: 10.30.4.5       VRID: 100
Priority:      253                     Config. Priority:  253
State:         Master Master IP:         10.30.4.5
State Changes: 23                      Last Change:       01/29/2009 04:59:01
Preempt:       True                    Last Fail Reason:  IF Down
Last Clearing of Stat Counters:  01/07/2009 19:04:10

Critical-Services:
CRITICAL                    State: Alive       Type: Scripted

Interface Address: 17.16.4.13          VRID: 200
Priority:      253                     Config. Priority:  253
State:         Master Master IP:         17.16.4.13
State Changes: 2                       Last Change:       01/07/2009 19:04:15
Preempt:       True                    Last Fail Reason:  Critical Svc Down
Last Clearing of Stat Counters:  01/07/2009 19:04:10

Critical-Services:
CRITICAL                    State: Alive       Type: Scripted

La salida no será exactamente así ya que además de haber cambiado las ips se ha realizado con un solo CSS encendido, lo importante es ver que interfaz (en realidad qué IP) tiene el State en modo Master