2

既存の SSH 接続を介して SSH を実行し、PHP でコマンドを実行するソリューションを探しています。簡単なコマンドでこれを機能させました。例:

$result = shell_exec("ssh user@server1 ssh user@server2 ls");

これは CLI で実行すると機能しますが、CGI では機能しません。PHPSecLib で少し作業しましたが、server1 に接続すると、2 番目の接続を開く方法がわかりません。

誰にもアドバイスはありますか?

4

2 に答える 2

1

CGIを介して実行する場合、PHPスクリプトはおそらくWebサーバーユーザーとして実行され、そのユーザーはSSHキーにアクセスできません。WebサーバーユーザーにSSHキーを与えるか、PHPスクリプトがユーザーとして実行されるように調整します(例:suPHPを使用) 。

また、キーが盗まれないように、アプリケーションを保護してください:)

于 2012-07-12T22:26:16.367 に答える
0

$ssh->exec('ssh user@server2 ls') はどうですか?

于 2012-07-18T04:58:52.793 に答える