• Publicidad

Instalación de Net::SFTP

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Notapor Kiloko » 2008-06-05 18:27 @810

Efectivamente ese módulo es la solución aunque sería:
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
use Net::SFTP::Foreign;
use Net::SSH::Expect;
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


Pero no logro hacer que funcione y en teoría es muy simple.

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#!/usr/bin/perl
use Net::SFTP::Foreign;
use Net::SSH::Expect;
##################################
        # You can do SSH authentication with user-password or without it.
        # Making an ssh connection with user-password authentication
        # 1) construct the object
        my $ssh = Net::SSH::Expect->new (
            host => "XXX.XXX.XXX",
            password=> 'elpasword',
            user => 'apolo',
            raw_pty => 1
        );
        # 2) logon to the SSH server using those credentials.
        # test the login output to make sure we had success
        my $login_output = $ssh->login();
        if ($login_output !~ /Welcome/) {
            die "NO SE PUDO CONECTAR $login_output";
        }
#############################
my $remote = "/usr/users/equipo/";
my $local = "/home/apolo/Desktop/";

Net::SFTP::Foreign->new($sftp->get($remote,$local,))or die "No se Puede logear ", $sftp->message."\n";

$sftp->quit;
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4
Nunca interrumpas a tu enemigo cuando está cometiendo un error
Napoleón Bonaparte
Avatar de Usuario
Kiloko
Perlero nuevo
Perlero nuevo
 
Mensajes: 243
Registrado: 2007-07-10 18:26 @810
Ubicación: MOnterrey NL

Publicidad

Notapor explorer » 2008-06-05 20:25 @892

Ese código es muy curioso... ¿de dónde lo has sacado?

Yo he instalado Expect, no el módulo Net::SSH::Expect.

A mí me funciona muy bien, pero claro, la comunicación con el servidor se basa, no en contraseñas, sino que cada máquina se intercambia las cables públicas. Como dice el módulo, es mucho mejor ese tipo de verificación.

Si no puedes hacer lo de la verificación por claves, este es el código que a mi me funciona, usando el clásico usuario/contraseña.

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
#!/usr/bin/perl
use Net::SFTP::Foreign;

my $host = 'aproxi38.aproxi.net';
my $port = 2222;
my $user = 'jferrero';
my $pass = 'defensor';

my $sftp = Net::SFTP::Foreign->new(
    host     => $host,
    port     => $port,
    user     => $user,
    password => $pass,
#    more     => '-v',   # No es compatible esto con la opción 'password' anterior
);

$sftp->error and die "SSH connection failed: " . $sftp->error;

print $sftp->cwd, "\n";

my $ficheros = $sftp->ls;
print join("\n", map { $_->{filename} } @$ficheros );
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: 14476
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Notapor Kiloko » 2008-06-06 13:01 @584

Efectivamente mi buen Explorer, sí funcionó, creo que mi confusión vino del siguiente párrafo de Net::SFTP::Foreign:

password => $password
passphrase => $passphrase

Use Expect to handle password authentication or keys requiring a passphrase. This is an experimental feature!
An explicit check for errors should be included always after the constructor call:
my $sftp = Net::SFTP::Foreign->new(...);
$sftp->error and die "SSH connection failed: " . $sftp->error;


Voy a investigar más adelante el módulo que bajé, porque también funciona; solamente que hace la entrada al equipo y hasta ahí se queda, pero por mientras voy a utilizar la otra aplicación, solo faltaría poner
Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
$sftp->get($remote,$local);
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


Y todo listo...
Nunca interrumpas a tu enemigo cuando está cometiendo un error
Napoleón Bonaparte
Avatar de Usuario
Kiloko
Perlero nuevo
Perlero nuevo
 
Mensajes: 243
Registrado: 2007-07-10 18:26 @810
Ubicación: MOnterrey NL

Anterior

Volver a Básico

¿Quién está conectado?

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