2

以下の perl スクリプトを実行するために必要なすべてのモジュールをダウンロードしました。

use Net::SSH::Perl;

my $host = "172.16.170.116";
my $user = "HGamit";
my $password = "";

#-- set up a new connection
my $ssh = Net::SSH::Perl->new($host);
#-- authenticate
$ssh->login($user, $pass);
#-- execute the command
my($stdout, $stderr, $exit) = $ssh->cmd("perl C:/Monitor/ltp.pl C:/monitor");

しかし、エラーは次のとおりです: 172.16.170.116、ポート 22 に接続できません: ターゲット マシンがアクティブに拒否したため、接続できませんでした。C:/Perl/site/lib/Net/SSH/Perl.pm の 206 行目で、telnet を試しましたが、うまくいきません。

use warnings;
use Net::Telnet;

$telnet = new Net::Telnet ( Timeout=>2, Errmode=>'die');
$telnet->open('172.16.170.116');
$telnet->waitfor('/HGamit\s*/');
$telnet->print('admin');
$telnet->waitfor('/\s*/');
$telnet->print('Blue');

#$telnet->cmd('ver > C:\\log.txt');
$telnet->cmd('perl C:/Monitor/ltp.pl C:/monitor');

誰でもこの問題を解決するための解決策を提供できますか?

4

1 に答える 1

0

IO::Socket を使用して、クライアント サーバー プログラムを作成できます。暗号化とユーザー認証を実装することもできます。このモデルでは、コマンドの送信を制御し、実行が完了したときにクライアントにデータを返します。セキュリティを強化するために、サーバー プログラムで継承された PATH 変数を変更することにより、サーバー上で実行されるコマンドの数を制限できます。コードに関するヘルプが必要な場合。コードを投稿できます。

ありがとうございました、

スクビール・ディロン

アドテック

于 2012-06-05T19:48:22.780 に答える