autosshが構文を変更して以来、autosshを介して私のサーバーの逆SSHトンネルを設定するのは少し無理です。これは私が実行したいスクリプトです。
autossh -M 20000 -f -N -R 17999:localhost:22 user@server -pXXXX -i id_rsa
20000は監視ポート(autosshが現在必要と思われる)、17999はautosshがリッスンする必要がある私のサーバーのポート、22は私のローカルコンピュータの開いているポート、XXXXは私のサーバーの開いているSSHポートです。それにもかかわらず、私のJournalctlは次のことを示しています。
autossh[7891]: ssh exited with error status 255; restarting ssh
言葉なし。私は何が間違っていましたか?私が使用する純粋なSSHは次のとおりです。
ssh -fNC -R 17999:localhost:22 user@server -pXXXX -i id_rsa
これは素晴らしい作品です。
答え1
気にしないでください。私は直接問題を発見しました。 sshとは異なり、autosshは接続を開始すると現在のディレクトリを終了するようです。つまり、-i id_rsaは、接続しようとしたときに私のRSAキーにディレクトリを残したため、autosshから読み取ることができません。接続を確立します。私のキーへのフルパスを提供すると、autosshは期待どおりに機能します。