martes, 3 de junio de 2008
Backup IOS Router Cisco
Bueno... ya falta cada vez menos para el examen final de CCNA. Repasando esta tarde, no recordaba(en realidad sí, pero era una escusa para postear!!!!) cómo hacer un backup del IOS y ni como cambiar password a un router.Es muy fácil.
Backup IOS.
File Length Name/status
1 4306080 c820-sy6-xxxxx.xxxxxxx
[4306144 bytes used, 4082464 available, 8388608 total]
8192K bytes of processor board System flash (Read/Write)
En pocos segundos tendremos en nuestra máquina una imagen del IOS sana y salva.Sólo falta quemar un CD para mayor seguridad y meterlo en la caja fuerte.Aunque muchos no lo sepan, las imágenes de IOS cuestan €, y bajarlas de la "mula" no es del todo "legal".
Recuperar contraseña.
TAC Support: http://www.cisco.co
Copyright (c) 2001 by cisco Systems, Inc.
C800/SOHO series (Board ID: 13-62) platform with 24576 Kbytes of main memory
pulsamos CTRL+Pausa.
rommon 2 > reset
Sencillo, no, pues a trastear!
Backup IOS.
- Tener un tftp server funcionando
- Modo enable, hacemos un show flash, y deberíamos ver algo como esto:
File Length Name/status
1 4306080 c820-sy6-xxxxx.xxxxxxx
[4306144 bytes used, 4082464 available, 8388608 total]
8192K bytes of processor board System flash (Read/Write)
- Luego un copy flash tftp, y deberíamos ver algo como esto:
En pocos segundos tendremos en nuestra máquina una imagen del IOS sana y salva.Sólo falta quemar un CD para mayor seguridad y meterlo en la caja fuerte.Aunque muchos no lo sepan, las imágenes de IOS cuestan €, y bajarlas de la "mula" no es del todo "legal".
Recuperar contraseña.
- Con el router mosqueado, lo reiniciamos y cuando veamos:
TAC Support: http://www.cisco.co
Copyright (c) 2001 by cisco Systems, Inc.
C800/SOHO series (Board ID: 13-62) platform with 24576 Kbytes of main memory
pulsamos CTRL+Pausa.
- Entramos en modo ROMmom, y escribimos
rommon 2 > reset
- Después de un par de minutos...voilá:
Sencillo, no, pues a trastear!
VPN y Perl
NO soy programador, con lo cual, asumo los errores y barbaridades de este post.
Supuesto: Se necesita chequear el acceso a una red, y en caso de no poder acceder a la misma, levantar el cliente de Cisco VPN para GNU/Linux.
Solucion: Script en perl que compruebe vía ICMP la disponibilidad el router remoto y en caso de no poder llegar a esta red,levantar el cliente de Cisco.He estado trasteando un poco con CPAN y demás, y esto es lo que he conseguido.
#!/usr/bin/perl
use Net::Ping;
$gateway = "192.168.1.254";
$p = Net::Ping->new();
if($p->ping($gateway))
{
print "El gateway $gateway responde\n";
}
else
{
print "El gateway no responde\n";
system ("matavpnc");
print "Lanzando conexion VPN\n";
system ("vpnc-connect miempresa");
system ("ping -c 5 192.168.1.254");
system ("route -n");
}
$p->close();
Pero esto no es todo.Como sabréis, el Cliente de Cisco crea subinterfaces del tipo tun0, tun1...por cada una de las conexiones VPN.Si sólo existe esa conexión el script anterior nos llega, pero qué sucede si existen más conexiones establecidas? Fácil. El cliente retorna un error indicando que no puede crear la interfaz tun0 por que ya está en uso.Para solucionarlo, he estado probando un script en bash que compruebe si está corriendo(muy fácil comprobando el pid o ps) ya el vpnc-connect, y en caso afirmativo, añada --local-port 0 o --local-port n+1 como parámetro a vpnc-connect..Con ps aux y awk encontré la pista para seguir adelante.
#!/bin/bash
for i in `ps aux|grep vpnc-connect| awk '{ print $2 }'`;
do
kill -9 $i
done
echo "Fin Script MataVPN"
Este ejemplo en concreto mata todos los procesos vpnc-connect, y no hace exactamente lo que queremos, pero el awk '{ print $2 }' creo que es la clave.
Salud y gnuismo para todos!
Supuesto: Se necesita chequear el acceso a una red, y en caso de no poder acceder a la misma, levantar el cliente de Cisco VPN para GNU/Linux.
Solucion: Script en perl que compruebe vía ICMP la disponibilidad el router remoto y en caso de no poder llegar a esta red,levantar el cliente de Cisco.He estado trasteando un poco con CPAN y demás, y esto es lo que he conseguido.
#!/usr/bin/perl
use Net::Ping;
$gateway = "192.168.1.254";
$p = Net::Ping->new();
if($p->ping($gateway))
{
print "El gateway $gateway responde\n";
}
else
{
print "El gateway no responde\n";
system ("matavpnc");
print "Lanzando conexion VPN\n";
system ("vpnc-connect miempresa");
system ("ping -c 5 192.168.1.254");
system ("route -n");
}
$p->close();
Pero esto no es todo.Como sabréis, el Cliente de Cisco crea subinterfaces del tipo tun0, tun1...por cada una de las conexiones VPN.Si sólo existe esa conexión el script anterior nos llega, pero qué sucede si existen más conexiones establecidas? Fácil. El cliente retorna un error indicando que no puede crear la interfaz tun0 por que ya está en uso.Para solucionarlo, he estado probando un script en bash que compruebe si está corriendo(muy fácil comprobando el pid o ps) ya el vpnc-connect, y en caso afirmativo, añada --local-port 0 o --local-port n+1 como parámetro a vpnc-connect..Con ps aux y awk encontré la pista para seguir adelante.
#!/bin/bash
for i in `ps aux|grep vpnc-connect| awk '{ print $2 }'`;
do
kill -9 $i
done
echo "Fin Script MataVPN"
Este ejemplo en concreto mata todos los procesos vpnc-connect, y no hace exactamente lo que queremos, pero el awk '{ print $2 }' creo que es la clave.
Salud y gnuismo para todos!
viernes, 30 de mayo de 2008
md5
MD5 es un algoritmo de reducción criptográfico de 128 bits, que nos permite entre otras muchas cosas, comprobar la integridad de un fichero. Es muy útil cuando copiamos ficheros entre sistemas, para verificar que no se han producido errores.Veamos un ejemplo:Necesitamos copiar(scp, siempre!!!), descargar... el fichero postfix_2.3.8.orig.tar.gz desde la máquina stewie a la máquina brian. Primero generamos la suma md5 en la máquina origen.
[user@stewie]#md5sum -b postfix_2.3.8.orig.tar.gz | awk '{ print $1 }' > postfix.md5
[user@stewie]#cat postfix.md5
[user@stewie]#a6c560657788fc7a5444fa9ea32f5513
Luego copiamos el fichero a la máquina destino
[user@stewie]# scp postfix_2.3.8.orig.tar.gz user@brian:/tmp
Generamos la suma md5 y comprobamos el resultado.
[user@brian]#md5sum -b postfix_2.3.8.orig.tar.gz | awk '{ print $1 }' > postfix2.md5
[user@brian]#diff postfix.md5 postfix2.md5
Si el resultado es positivo , diff no devuelve nada.Supongamos que el fichero es alterado en el proceso de copia.Aplicamos diff de nuevo, y obtendríamos:
[user@brian]#diff postfix2.md5 postfix.md5
1c1
< aa6c560657788fc7a5444fa9ea32f5513
---
> a6c560657788fc7a5444fa9ea32f5513
Probablemente esto no sirva de mucho a Administradores poco avispados, pero si lo sois ,o simplemente quereis verificar la integridad de vuestras copias o ficheros...aplícate md5sum!
Saludos! I'm back!
[user@stewie]#md5sum -b postfix_2.3.8.orig.tar.gz | awk '{ print $1 }' > postfix.md5
[user@stewie]#cat postfix.md5
[user@stewie]#a6c560657788fc7a5444fa9ea32f5513
Luego copiamos el fichero a la máquina destino
[user@stewie]# scp postfix_2.3.8.orig.tar.gz user@brian:/tmp
Generamos la suma md5 y comprobamos el resultado.
[user@brian]#md5sum -b postfix_2.3.8.orig.tar.gz | awk '{ print $1 }' > postfix2.md5
[user@brian]#diff postfix.md5 postfix2.md5
Si el resultado es positivo , diff no devuelve nada.Supongamos que el fichero es alterado en el proceso de copia.Aplicamos diff de nuevo, y obtendríamos:
[user@brian]#diff postfix2.md5 postfix.md5
1c1
< aa6c560657788fc7a5444fa9ea32f5513
---
> a6c560657788fc7a5444fa9ea32f5513
Probablemente esto no sirva de mucho a Administradores poco avispados, pero si lo sois ,o simplemente quereis verificar la integridad de vuestras copias o ficheros...aplícate md5sum!
Saludos! I'm back!
viernes, 23 de mayo de 2008
SSH
Muchos Administradores, piensan que sólo con usar OpenSSH para realizar las conexiones remotas a las máquinas GNU/Linux-Unix que administran, es suficiente.
Como la experiencia es un grado, nunca esta de más, securizar la máquina, sobre todo si está expuesta a una red como Internet, o los servicios de acceso remoto están habilitados.
Durante los dos últimos días, he revisado mis notas y apuntes sobre el uso de claves públicas/privadas en las conexiones SSH; he actualizado las configuraciones en las máquinas que no utilizaban RSA. Estos dos enlaces me ha ayudado a refrescar cosillas: [ 1 ] , [ 2 ] . Sé que no soy nadie para dar consejos, pero os recomiendo utilizar llaves RSA en vuestras conexiones SSH.
Saludos!
Suscribirse a:
Entradas (Atom)