web-dev-qa-db-ja.com

SSH転送ポートを削除する方法

ssh -L 10002:192.168.0.30:10002 192.168.1.135ポート転送を確立しますが、今はそれを削除する必要があります。

どうすればよいですか?

59
user16654

Linuxを使用している場合は、次の方法でプロセスを強制終了できます。

ps aux | grep ssh

次に使用します

kill <id>

プロセスを強制終了します。

Killコマンドが成功しない場合は、試すことができます

kill -9 <id>
60
zpon

Ssh多重化を使用する場合、sshプロセスを強制終了することは望ましくないことが多く(そのホストとの開いている接続をすべて強制終了します)、「多重化セッションではエスケープを使用できない」ため、エスケープに簡単にアクセスできません。正しい方法は、キャンセルしたい転送コマンドの類似物を実行することですが、-O cancelを追加します。例えば:

ssh -O cancel -L 10002:192.168.0.30:10002 192.168.1.135

これにより、セッションを終了せずにこのポート転送が無効になります。繰り返しますが、これは、192.168.1.135への接続にSSH多重化が使用されている場合にのみ機能します。

25
a3nm

すでに実行中のSSHセッションで転送されたポートをキャンセルする方法:

  1. 押す ~+C (チルド+大文字C)
  2. タイプ-KL port
  3. Enterキーを押します

あなたはこれを見るはずです:

ssh> -KL 10002
Canceled forwarding.
14
cambunctious

"エスケープキー"(通常は〜)に続けてCを押すと、接続を確立できます。接続を切断することなく、そこからトンネルを削除できます。

12
Jimmy Hedman

次のように入力して、インタラクティブコンソールに入ることができます ~C (大文字の「C」)。これにより、ポート転送を動的に追加および削除できます(他にもいくつかあります)。

このシーケンスは直後に復帰/改行でなければなりません。だから疑わしい、ただタイプして Enter~C (順番通りに)。

文字がコンソールに表示されない場合は、正しく実行しています:)

ssh>プロンプトが表示されます。

ポートを削除するには、単に-KL 10002の後に続けて入力します Enter10002は転送ポートです)。

逆-新しい転送の追加-次のように(開始から終了まで)実行できます。

Enter~C

ssh> -L 10002:192.168.0.30:10002

Enter

7
exhuma