2012-04-03 8 views
-1

CPANを使用してモジュールをインストールする際にいくつかの問題があるため、Net :: SSH :: Perlライブラリの使用を避けようとしています。私がそれが他のPerlモジュールの長いリストに依存しているのを見ると、手作業によるインストールはあまり面倒なようです。PerlでNet :: SSHを使ってパスワードを渡すには?

私が達成しようとしているのは、私のユーザ名とパスワードでSSHにログインすることです。次に、いくつかのコマンドを実行して、SSHを使ってサーバからいくつかのファイルを取得する必要があります。

「ssh($ username、 "$"、$ command)を使ってユーザー名、ホスト名、コマンドを渡す方法が分かっています。 XX.XX.XX.XXXは私のコンピュータのホスト名またはIPアドレスであると私はからファイルを取得しようとしていますサーバーとしてサブネット内にある

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

:しかし、私はこのエラーメッセージを取得しておきます。

SSHにパスワードを渡したり、Net :: SSHの良いチュートリアルを紹介する方法を知っている人はいますか?私がオンラインで見つけたチュートリアルのほとんどはNet :: SSH :: Perlであり、Net :: SSHではありません。

+0

これは役に立ちます。同様の議論のように見える。 http://stackoverflow.com/questions/9766780/perl-script-to-execute-ssh-command-without-using-password – rpg

+0

こんにちは。 Net :: SSH :: Perlの代わりにNet :: SSHのヘルプが必要です。なぜなら私はNet :: SSH :: Perlをインストールできないため、CPANと手動インストールのいくつかの問題が原因です。あなたが私に与えたリンクは、Net :: SSH :: Perlです。 – Sakura

+1

「接続が拒否されました」は、クライアントがサーバーと通信できず、サーバーが資格情報を拒否していないことを意味します。 – Quentin

答えて

0

Net :: SSHのドキュメントのこのFAQのセクションを見ましたか?

Q:どのようにネットを使用してperlの スクリプト内でのsshで接続するためのパスワードを指定します:: SSHモジュール?

A:あなたは(少なくともこのモジュールではない) RSAキーまたはDSAキーを使用します。次のセクションのクイックヘルプである とssh-keygen(1)のマンページを参照してください。

A#2:代わりにNet :: SSH :: Expectを参照してください。

Net :: SSH :: Expectを試してみることをお勧めします。あなたが言ったことに基づいて、それはあなたの必要に合っていると思います。 Net :: SSH :: Expectをかなり使いました。何かをすばやく手に入れようと思っているなら、シンプルさを証明できます。