Thread Net::SSH::Expect custom Passwordprompt regex (1 answers)
Opened by fraggs at 2010-01-21 14:41

fraggs
 2010-01-21 14:41
#131046 #131046
User since
2006-09-11
179 Artikel
BenutzerIn
[Homepage] [default_avatar]
Servus,

Script laeuft soweit allerdings ist der Passwordprompt natuerlich von System zu System manchmal anders.

z.B. auf englischen Password: deutschen Passwort: oder mit dem hostname/ip vor dem Password/Passwort.

Dies ist der Fehler den ich bekomme, ein Timeout von SSH allerdings wird der Prompt noch angegeben d.h. ich denke SSH::Expect kann das nicht richtig interpretieren.

Quote
SSHAuthenticationError Login timed out. The input stream currently has the contents bellow: Passwort: at /usr/perl5/site_perl/5.8.4/Expect.pm line 828


SSH::Expect hat ein Feature um dies nunmal zu bewaeltigen aber ich denke ich wende es falsch an.

Hier mal ein Teil des codes:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
#define password prompt recognition
        my $password_prompt=qr/[Pp]assword.*?:|[Pp]assphrase.*?:|[Pp]asswort.*?:/;
        
        ##logging on to SSH
        my $login_output = $ssh->login([$password_prompt]);
        print "...Login output start...\n";
        chomp($login_output);
        print $login_output;
        print "\n";
        print "...Login output end...\n";


Hat da jemand eine Idee ? ich dachte ein punkt ersetzt jedes beliebige Zeichen d.h. *. muessten ja unendlich viele beliebige zeichen sein aber da meckert PERL und sagt mir was von m/ ...


danke schonmal !

gruss

-Stephan
mmm twix

View full thread Net::SSH::Expect custom Passwordprompt regex