1

リモートホストでいくつかのコマンドを実行する必要があります。このホストは「ルーター」になります。私は RPC 呼び出しを扱ったことがありません。Djangoもう 1 つの大きな問題は、 Web ベースのアプリケーションからこれらのコマンドを実行する必要があることです。手順は次のとおりです。

  • ユーザーがページを開き、実行するコマンドを選択します
  • ユーザーは、指定されたリストからリモート ホストを選択します
  • ユーザーが実行ボタンをクリック
  • その間、Django はセキュリティの問題をチェックします。を使用してリモートホストを承認することを意味しますSSH
  • そして、必要なコマンドがホスト上で実行され、メッセージが送り返されます"Done!"

この問題に取り組むにはどうすればよいですか?

ユーザー プロファイル ページからリモート ホストへの SSH 接続を作成するにはどうすればよいですか?

セキュリティ上の理由から、ユーザーの秘密鍵を使用して接続を作成したいと考えています。関連する質問もいくつか見つけましたが、正しい方向がわかりませんでした:)

4

1 に答える 1

2

paramikoライブラリから始める必要があります。それほど難しいAPIはありません。また、ライブラリにバンドルされている例がいくつかあります。

sshクライアントを作成し、コンストラクターでホスト名、ポート、ユーザー名、およびユーザーのキーファイルを渡し、シェルを作成し、コマンドを実行してコマンド出力を読み取ることができます(stdoutのみ)。stderrを個別に読み取ることも、stdoutと組み合わせることができます。

于 2012-08-06T09:06:42.990 に答える