プライマリサーバーに接続する必要があります。これをserver1と呼びます。その後、そこから他の多くのサーバー(host1、host2、... host99)にアクセスできます。私のautosshは問題なくserver1で動作します。回復されます。私の接続は次のとおりです。ネットワーク接続が切断されるたびに server1 に送信されます。しかし、server1への接続を維持することは私の唯一の目標ではありません。このコンピュータを使用するときは、ホスト1、2などに接続し続けたいと思います。
私はこれを使用してserver1にアクセスします。
autossh server1
Host1 で autossh を試みると、次のような結果が表示されます。
local autossh[867] <Error>: bind on 127.0.0.1:12346: Address already in use
現在、私の監視ポートは12345(〜/ .bash_profile)に設定されています。
export AUTOSSH_PORT=12345
...localhostポートが1234のようです。6次回試しましたが失敗しました。
私の~.ssh/configには次の転送設定があります。
Host server1
User jacob
HostName server1.mydomain.com
Port 722
ForwardAgent yes
LocalForward 1124 1:22
RemoteForward 52698 127.0.0.1:52698 #for sublime text / rmate
IdentityFile ~/.ssh/id_rsa
Host host1
User jacob
HostName localhost
RemoteForward 52698 127.0.0.1:52698
Port 1124
ForwardAgent yes
IdentityFile ~/.ssh/id_rsa
.... "アドレスが既に使用されています"エラーに関するすべての内容を読み、設定ファイルを修正してetc / hostsファイルにホストを追加しようとしましたが、まだ同じ結果が表示されます。どんなアイデアがありますか?
ベストアンサー1
(manページ)によると、man autossh
モニタリングポートは単一の番号で指定され、autossh
モニタリング機能にはそのポートとポート+1の両方を使用します。ここで後者を「エコーポート」(モニタリング応答受信用)といいます。これは、ポート+1でリッスンしてそのポートを要求することを意味します。後続のプログラムにはautossh
別のポートを提供する必要があります。
または、接続テストを終了してからシャットダウンssh
時に再起動するポート0を使用できます。マニュアルページを引用すると、次のようになります。
監視ポートを0に設定すると、監視機能はオフになり、autosshはsshが終了したときにのみsshを再起動します。たとえば、最新バージョンのOpenSSHを使用している場合は、次のようにナビゲートできます。 サーバー活動間隔そしてサーバーの最大アクティビティ数SSH クライアントがサーバーに接続されていないことを検出したら、シャットダウンを選択できます。多くの点で、これはモニタリングポートよりも優れたソリューションです。