バックエンドSSHトンネル(ポート転送)

バックエンドSSHトンネル(ポート転送)

次のように、マイコンピュータからサーバーにポートを転送するコマンドがあります。

ssh -L 8000:localhost:8888 myserver.com

このコマンドをバックグラウンドで実行したいと思います。公開鍵をすでに設定しているため、ユーザー名とパスワードを入力する必要はありません。

&最後に、次のように追加しようとしました。 ssh -L 8000:localhost:8888 myserver.com& ただし、次のエラーが発生します。

[1]  + 30825 suspended (tty output)

私もnohup次のように試しました。

nohup ssh -L 8000:localhost:8888 myserver.com&
exit

ただし、ポートは転送されません。

最後に、次のように試しましたssh -f

ssh -L 8000:localhost:8888 myserver.com

そして、次のエラーが発生します。

Cannot fork into background without a command to execute.

私の目標は、端末を開いたままにせずにバックグラウンドでSSH接続をアクティブに保つことです。助けが必要ですか?

答え1

あなたが言及したssh -fのは正しいですが、あなたは見逃しました-N。これはパズルの残りの部分です:

-Nリモートコマンドを実行しないでください。これはポート転送に役立ちます。 [...]

非常に近い!この試み

ssh -fN -L 8000:localhost:8888 myserver.com

関連情報