• Publicidad

Realizar muchas conexiones a un mismo switch Cisco

¿Eres administrador de sistemas? Este foro es para todos aquellos temas relacionados con el uso de Perl para administración de sistemas.

Re: Realizar muchas conexiones a un mismo switch Cisco

Notapor seguridadenmimail » 2012-04-03 20:58 @915

Perdón pero estoy teniendo problemas, los cuales te paso a comentar.
  • El script me escribe 19 líneas en el log, donde siempre me pide "username".
  • Si hago telnet con la aplicación a tercera conexión el output es totalmente diferente, ya que me ingresó directamente a la aplicación
  • ¿Hay forma de enumerar los intentos en el log? Así sé cuál cambio

Saludos y gracias.
seguridadenmimail
Perlero nuevo
Perlero nuevo
 
Mensajes: 69
Registrado: 2011-08-30 19:28 @853

Publicidad

Re: Realizar muchas conexiones a un mismo switch Cisco

Notapor explorer » 2012-04-03 21:50 @952

Como tienes abierto el log, en $fh, lo único que tienes que hacer es un print a ese gestor de archivo, y se escribirá en el archivo lo que quieras.

Por ejemplo,
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1.     print $fh "Intento número $_\n";
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Realizar muchas conexiones a un mismo switch Cisco

Notapor seguridadenmimail » 2012-04-03 22:10 @965

Hice el cambio y obtengo:

Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
Intento número 1


User Access Verification

Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Username:
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


Digamos que parece que se conecta una vez y luego repite "Username".

Al script le agregué tu nuevo código en la línea 18:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. print $fh "Intento número $_\n";
  2.  
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


Al ejecutar el script obtengo en pantalla:

Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
  1. C:\Users\test\Desktop\ver>perl script.pl
  2. Host 192.168.3.110: timed-out during login process
  3. Can't return outside a subroutine at script.pl line 20.
  4.  
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
seguridadenmimail
Perlero nuevo
Perlero nuevo
 
Mensajes: 69
Registrado: 2011-08-30 19:28 @853

Re: Realizar muchas conexiones a un mismo switch Cisco

Notapor explorer » 2012-04-04 11:04 @503

seguridadenmimail escribiste:Al script le agregué tu nuevo código en la línea 18:
Ya veo que funciona...

seguridadenmimail escribiste:Al ejecutar el script obtengo en pantalla:

Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
  1. C:\Users\test\Desktop\ver>perl script.pl
  2. Host 192.168.3.110: timed-out during login process
  3. Can't return outside a subroutine at script.pl line 20.
  4.  
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
Se refiere a la presencia del return(). Debería estar dentro de una subrutina, pero no está.

Cambia "return warn" por "die".

No sé por qué sale continuamente el Username. Según la documentación (¿la has leído?) cuando llamas a login() queda esperando por la llegada de una cadena que coincida con /login[: ]*$/i o /username[: ]*$/i, lo cual es cierto.

¿No sale nada en el output_log()?

Quizás no quede más remedio que activar el dump_log()...
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Realizar muchas conexiones a un mismo switch Cisco

Notapor explorer » 2012-04-04 11:46 @532

Acabo de descubrir otro módulo interesante en CPAN: Net::Telnet::Wrapper, que permite hacer conexiones simultáneas y otras cosillas interesantes:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. use Net::Telnet::Wrapper;
  2.  
  3. ## connect to Cisco router and execute show version + show clock
  4. my $w = Net::Telnet::Wrapper->new('device_class' => 'Cisco::IOS', -host => 'routerA');
  5. eval {
  6.     $w->login( 'name' => "mwallraf", 'passwd' => "<mypass>", 'Passcode' => "<mypass>");
  7.     $w->enable( 'name' => "mwallraf", 'passwd' => "<mypass>", 'Passcode' => "<mypass>");
  8.     $w->cmd('show version');
  9.     $w->cmd('show clock');
  10. };
  11. die $@ if ($@);
  12. print join("\n", @{$w->GetOutput()} );
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Realizar muchas conexiones a un mismo switch Cisco

Notapor seguridadenmimail » 2012-04-09 18:27 @810

explorer, quería consultarte cómo puedo guardar el output a un archivo de la conexión, ya que solo necesito esa parte. Como no llego a conectarme porque las credenciales son incorrectas no sé cómo guardar la información.
seguridadenmimail
Perlero nuevo
Perlero nuevo
 
Mensajes: 69
Registrado: 2011-08-30 19:28 @853

Re: Realizar muchas conexiones a un mismo switch Cisco

Notapor explorer » 2012-04-10 14:42 @654

En mi mensaje 2012-04-04 03:08 @172 anterior, verás que hay un ejemplo de envío del input_log() a un gestor de archivo $fh, abierto unas líneas más arriba. Lo mismo puedes hacer con el output_log().
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Realizar muchas conexiones a un mismo switch Cisco

Notapor seguridadenmimail » 2012-04-17 17:42 @779

Como no puedo lograrlo estoy intentando directamente ejecutar el comando "telnet" del sistema operativo.

Script:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. if ( @ARGV != 2 ) {
  2.  
  3.     die "\nUse: $0 host port\n\n"
  4.       . "   <host>    Host a auditar [ej -> 127.0.0.1]\n"
  5.           . "   <port>    puerto de conexión [ej -> 23]\n"
  6.       ;
  7.  
  8. }
  9.  
  10. $reporte = "reporte.txt";
  11.  
  12. $host = $ARGV[0];
  13. chomp $host;
  14.  
  15. $port = $ARGV[1];
  16. chomp $port;
  17.  
  18. $comando = system("telnet $host $port");
  19.        
  20. print "Abriendo VTY...\n";
  21. open (F,">> $reporte");
  22.  
  23. for ( $f = 1; $f <= 3; $f++ ) {
  24.  print F "$comando";
  25. }
  26.  
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


Pero sigue sin funcionar, ya que no me guarda la salida del router, sino que guarda un "0" por cada "timeout expired!"

Saludos.
seguridadenmimail
Perlero nuevo
Perlero nuevo
 
Mensajes: 69
Registrado: 2011-08-30 19:28 @853

Re: Realizar muchas conexiones a un mismo switch Cisco

Notapor explorer » 2012-04-17 17:49 @784

system() devuelve el estado del resultado de la ejecución, no la salida de la ejecución.

Cambia system por qx.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Realizar muchas conexiones a un mismo switch Cisco

Notapor seguridadenmimail » 2012-04-17 18:40 @819

¿Cómo tendría que hacer para ejecutar los 5 telnet al mismo tiempo, y no esperar a que termine 1 para continuar?

Saludos.
seguridadenmimail
Perlero nuevo
Perlero nuevo
 
Mensajes: 69
Registrado: 2011-08-30 19:28 @853

AnteriorSiguiente

Volver a Administración

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados

cron