• Publicidad

Error al conectarme a sftp con Net::SFTP

Así que programas sin strict y las expresiones regulares son otro modo de hablar. Aquí encontrarás respuestas de nivel avanzado, no recomendable para los débiles de corazón.

Error al conectarme a sftp con Net::SFTP

Notapor damian1510 » 2012-11-07 15:36 @691

Utilizando el siguiente script:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. my $host = '192.168.2.xxx';
  2.         my %args = (
  3.            user => "user",
  4.            password => "pass",
  5.            debug => 1,
  6.            ssh_args => {
  7.           protocol => 2,
  8.        },
  9.         );
  10.         $sftp = Net::SFTP->new($host, %args) or die("FTP Error: $@");
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


se queda esperando con este mensaje:

Waiting for NEWKEYS message.

y después de un tiempo:

Received disconnect message: Disconnecting
at /usr/local/share/perl/5.10.1/Net/SSH/Perl/Kex.pm line 103.


¿Podrían decirme cómo solucionarlo?

Buscando encontré esta publicación: https://rt.cpan.org/Public/Bug/Display.html?id=48338 que tiene un script al final pero no tengo idea de cómo aplicarlo y no está verificado.
Última edición por explorer el 2012-11-07 16:23 @724, editado 1 vez en total
Razón: Marcas de código Perl
damian1510
Perlero nuevo
Perlero nuevo
 
Mensajes: 6
Registrado: 2012-11-07 15:28 @686

Publicidad

Re: Error al conectarme a sftp con Net::SFTP

Notapor explorer » 2012-11-07 16:32 @731

Bienvenido a los foros de Perl en Español, damian1510.

En este hilo se comenta que hay que estar seguros de estar usando la última versión de Net::SFTP, pero es un módulo que está sin actualizar desde el 2005.

Salva recomienda usar su propio módulo: Net::SFTP::Foreign, que a su vez usa por debajo el comando ssh que tengas instalado en tu sistema.

El parche que comentas en rt.cpan.org, veo que consiste solamente en añadir dos líneas (las marcadas con un '+') al archivo Net/SSH/Perl/Channel.pm y al archivo Net/SSH/Perl/Handle/SSH2.pm, en las líneas que se indican. Lo puedes resolver con un simple editor de textos.
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: Error al conectarme a sftp con Net::SFTP

Notapor damian1510 » 2012-11-08 09:31 @438

Te agradezco por la rápida respuesta, hice algunas pruebas y parece que funciona correctamente.
Si tengo tiempo de probar el parche te comentaré los resultados.
¡Saludos!
damian1510
Perlero nuevo
Perlero nuevo
 
Mensajes: 6
Registrado: 2012-11-07 15:28 @686

Re: Error al conectarme a sftp con Net::SFTP

Notapor salva » 2012-11-10 19:02 @834

Efectivamente explorer, los módulos Net::SSH::Perl y Net::SFTP llevan años abandonados y tienen una larga lista de bugs... eso sin contar con que instalarlos es una pesadilla y que el rendimiento es pésimo (aún después de instalar Math::Pari).

Hoy en día, para automatizar tareas con SSH en Perl, mi recomendación es usar Net::SSH2 o Net::OpenSSH.

Últimamente también he estado trabajando en Net::SSH::Any que es un módulo que trata de ofrecer un API unificada de alto nivel y que por debajo puede utilizar cualquiera de los citados anteriormente para gestionar la conexión por SSH. Pero aún está muy verde.

En cuanto a SFTP, Net::SFTP::Foreign está muy por delante de Net::SFTP en todos los aspectos: funcionalidad, robustez, rendimiento, etc. Además de utilizar el binario de ssh para establecer la conexión como tu indicas, también es capaz de trabajar sobre Net::SSH2 si se instala en módulo Net::SFTP::Foreign::Backend::Net_SSH2.

Net::SSH2 incorpora también su propio módulo de SFTP (Net::SSH2::SFTP), pero es de muy bajo nivel lo que se traduce en más trabajo a la hora de trabajar con el mismo.
Avatar de Usuario
salva
Perlero nuevo
Perlero nuevo
 
Mensajes: 200
Registrado: 2008-01-03 15:19 @680


Volver a Avanzado

¿Quién está conectado?

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