1

これは、cgi-perl スクリプトを試す最初のショットです。(root ユーザー) ローカル マシンとリモート マシンの間に SSH キーをセットアップしました。リモート ボックスでコマンドを実行し、ローカル マシンからホストされている Web ページに出力を表示しようとしています。スクリプトはコマンド ラインから正常に実行されますが、スクリプトを実行しているユーザーが root ではなく Apache であるため、Web ページから呼び出すと SSH キー エラーがスローされます。この問題を回避する方法はありますか?

4

1 に答える 1

2

制限付きアカウントをまだ持っていない場合は、アカウントを作成し、SSH キーを作成して、ユーザーが実行できるコマンドをファイルに追加しsudoます/etc/sudoers(例: visudomore aboutsudoers )。これは最も安全なアプローチです。これらのコマンドのみ
を実行 できるように、ユーザーを制限することもできます。為に

Perl についてはわかりませんが、通常は SSH 経由でログインするユーザーを指定できます。

ssh user@host

アップデート:

Net::SSH::Perlモジュールを使用していますか?その場合は、userそれに応じて設定してください:

my $host = "perlhowto.com";
my $user = "user";
my $password = "password";

#-- set up a new connection
my $ssh = Net::SSH::Perl->new($host);
#-- authenticate
$ssh->login($user, $pass);

(このコードを からコピーして貼り付けただけですperlhowto.com)

于 2010-05-24T18:42:41.763 に答える