基本的に1つのシステムにtelnetで接続し、「ssh -f -N」をさらに2つのシステムに接続し、最後にscreen/tmuxセッションを開いてsshuttleを実行し、screen/tmuxから切断するプロセスをperlで自動化しようとしています。
「-f -N」オプションを指定して ssh を実行する場合、これは Net::SSH::Expect、Net::Expect、system、または exec で処理するのが最適ですか?
私は Net::SSH または Net::Expect に関心があります。最初に、SSH セッションが成功したことを Net::Expect/SSH に認識させるにはどうすればよいですか? つまり、Net::Expect をプログラムし、これらのパラメーターを使用して ssh セッションを生成し、その後ログインすると、「expect」が表示する出力がなくなります。期待されるタイムアウト以外のものに依存したいと思います。
それは理にかなっていますか?質問を明確に表現しているかどうかわかりません。
また、バックグラウンドに移行する ssh セッションを生成した場合に perl がどのように動作するかもわかりません。私の perl プログラムは決して終了しませんか? バックグラウンド SSH セッションが終了するのを待っていますか?
この最後の質問のために、システム呼び出しまたは exec 呼び出しの使用を検討する必要があるかどうかについて追加の質問をしNet::Expect
ます。