サーバーからクライアントへのSSH接続を開始する


10

sshパブリックIPを持つリモートマシンに簡単に接続できます。

しかし、今はパブリックIPのないリモートマシンがあり、パブリックIPのあるマシンからそれに接続する必要があります。そのため、リモートマシンはこの接続を開始する必要があります(クライアントを追加)。

私の祖父がパブリックIPのないコンピューターを使用しているので、私はそれを必要とします。

Windowsで同様の状況でVNC接続(TightVNCによる)を使用した場合、TightVNCサーバーには[クライアントの追加]オプションがあります。 「サーバー」がクライアントを追加すると、接続が初期化されます。

それでは、SSH接続で同じトリックを実行することは可能ですか?

回答:


12

定義上、クライアントは接続を開始するクライアントです。

あなたの問題については、簡単な解決策は逆トンネルを構築することだと思います。

パブリックIPのないコンピューター:

ssh -R 2222:localhost:22 loginOfServerWithPublicIP@publicIP

これはSSHでサーバーに接続し、ポート2222にパブリックIPがあるサーバーから、ポート22(SSH)にパブリックIPがないコンピューターへのトンネルを構築します。

そしてサーバー上で:

ssh -p 2222 loginOfComputerWithoutPublicIP@locahost

接続は、最初のトンネルによってサーバーのポート2222からコンピューターのポート22にリダイレクトされます。などのツールを使用autosshして、トンネルの回復力を高めることができます(つまり、シャットダウン時にトンネルを自動的に再起動します)。


とても便利で簡潔です。ありがとうございます。詳細とその他の便利なオプションについては、この質問への回答を参照してください。
AstroFloyd
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.