¡¡¡Saludos Maestros!!!
Uso Windows 7 y tengo instalada la última versión de Activeperl (5.14). Sucede que quiero hacer una conexión por medio de SSH a una máquina remota y luego transferirle unos archivos usando SFTP (tema ampliamente comentado en este foro). De los pocos módulos que puedo usar (por compatibilidad de sistema operativo) uso el Net::SSH2, resulta que al querer acceder al equipo por SSH, el programa me tira error en Password, cosa que ya revisé cientos de veces y el password es el correcto. Coloco mi código para ver si ustedes me puede orientar
#!/usr/bin/perl
use Net::SFTP::Foreign;
my $host = '172.58.69.24';
my $user = 'pedro';
my $pass = 'marmol1';
use Net::SFTP::Foreign;
my $sftp = Net::SFTP::Foreign->new($host,
backend => 'Net_SSH2',
username => $user,
password => $pass);
$sftp->error and
die "No se puede establecer la conexionn SFTP: ". $sftp->error;
use Net::SSH2;
my $ssh2 = Net::SSH2->new();
$ssh2->connect($host)
or die "Conexion Fallida";
$ssh2->auth_password($user, $pass)
or die "Password incorrecto\n";
$sftp = Net::SFTP::Foreign->new(ssh2 => $ssh2,
backend => 'Net_SSH2');
$sftp->error and
die "No se puede establecer conexion SFTP: ". $sftp->error;
$sftp->get("foo", "foo") or die "get failed: " . $sftp->error;
La estructura del código que estoy usando es Net::SFTP::Foreign::Backend::Net_SSH2 - Run Net::SFTP::Foreign on top of Net::SSH2, cuyo autor es el amigo permalink... disculpen si mi tema es muy novato, pero es primera vez que intento hacer esto... ¡¡Gracias!!