2012-04-03 5 views
-1

Ich versuche zu vermeiden, Net :: SSH :: Perl-Bibliothek verwenden, da einige Probleme bei der Installation des Moduls mit CPAN. Die manuelle Installation scheint zu mühsam, wenn ich sehe, dass es von einer langen Liste anderer Perl-Module abhängt.Wie Passwort mit Net :: SSH in Perl übergeben?

Was ich versuche zu erreichen, ist in der SSH mit meinem Benutzernamen und Passwort anmelden. Dann muss ich einige Befehle ausführen und einige Dateien vom Server mit SSH abrufen.

Ich weiß, wie Sie den Benutzernamen, Hostnamen und Befehl mit "ssh ($ username." @ ". $ Ip, $ Befehl) übergeben oder die" SSH fehlschlägt! ";". Aber ich erhalte immer diese Fehlermeldung:

ssh: connect to host XX.XX.XX.XXX port 22: Connection refused 

wo XX.XX.XX.XXX ist die Host-Name oder die IP-Adresse meines Computers und ist in dem Subnetz wie der Server, die ich Dateien von bekommen versuchen.

Weiß jemand, wie ich das Passwort an SSH weitergeben oder mir gute Tutorials auf Net :: SSH vorstellen kann? Die meisten Tutorials, die ich online gefunden habe, sind auf Net :: SSH :: Perl und nicht auf Net :: SSH.

+0

wird es für Sie nützlich sein. sieht ähnlich aus wie eine Diskussion. http://stackoverflow.com/questions/9766780/perl-script-to-execute-ssh-command-without-using-password – rpg

+0

Hallo. Ich brauche Hilfe auf Net :: SSH anstelle von Net :: SSH :: Perl, da ich Net :: SSH :: Perl aufgrund einiger Probleme mit CPAN und manueller Installation nicht installieren kann. Der Link, den du mir gegeben hast, ist für Net :: SSH :: Perl. – Sakura

+1

"Verbindung abgelehnt" bedeutet, dass der Client nicht mit dem Server kommunizieren konnte und nicht, dass der Server die Anmeldeinformationen zurückgewiesen hat. – Quentin

Antwort

0

Haben Sie diesen FAQ-Abschnitt der Net :: SSH-Dokumentation gelesen?

F: Wie liefern Sie ein Passwort für die Verbindung mit SSH in einem Perl Skript mit dem Net :: SSH-Modul?

A: Sie nicht (zumindest nicht mit diesem Modul). Verwenden Sie RSA- oder DSA-Schlüssel. Siehe die Schnellhilfe im nächsten Abschnitt und die Hilfeseite ssh-keygen (1).

A # 2: Siehe Net :: SSH :: Expect stattdessen.

Der Vorschlag, Net :: SSH :: Expect auszuprobieren, ist ein guter Vorschlag. Es klingt, basierend auf dem, was Sie gesagt haben, dass es Ihren Bedürfnissen entspricht. Ich habe Net :: SSH verwendet :: Erwarten Sie ziemlich viel, und ich kann seine Einfachheit bestätigen, wenn Sie nur etwas schnell erledigt werden wollen

Verwandte Themen