私はautosshを使用してリバースSSHトンネルに接続しています。私は開始から実行します。
ところで、時々トンネルが崩れる問題にぶつかりました。
トンネルが実際に機能していることを確認し、そうでない場合はモデムを再起動するなど、他のタスクを実行するスクリプトを作成しました。
トンネルが機能していることを確認する唯一の方法は、autosshコマンドを再度使用して応答を確認することです。
autossh -M 0 -N -q -o ServerAliveInterval=20 -o ServerAliveCountMax=3 [email protected] -i id_rsa -R 13238:localhost:22 -v
私はこのautosshコマンドを使用するたびに新しい自動プロセスが開始されることに気づきました。現在、多くのautosshプロセスが実行されています。これは明らかに良くありません。
2つの質問があります。
1)autosshコマンドを再利用せずにトンネルが機能していることを確認するより良い方法はありますか? (他の方法が見つかりません)
2)私が考えた別のオプションは、スクリプトで使用されていないプロセスを終了し、autosshプロセスを1つだけ持つことでした。しかし、autosshというプロセスが複数ある場合は、そのプロセスのpidをどのように見つけることができますか?