タイトルの通り、両者の違いがよくわかりません。たとえば、トンネリングなしでSSHを介して特定のサーバーに接続すると、トンネリングで取得したものと同じシェルが取得されます。
SSHセッションにトンネリングを追加すると、同じ暗号化された接続を介したトンネル用に追加のデータストリームが作成されます。複数のトンネルを作成したり、インタラクティブセッションを開始しないこともできます(-N
パラメータ)。したがって、基本的に、実際の違いはありません。暗号化された接続を使用するための異なる方法のみです。
SSHは実際には、安全でない基本的なチャネルを介して任意のデータを転送できる、一般的な安全な通信メカニズムです。デフォルトでは、このデータはシェルセッションです(つまり、ローカルターミナルはリモートシステムで実行されているシェルに接続されています)が、転送できるデータにはさまざまなタイプがあります。
そのようなタイプの1つは、ストリームソケット接続(TCP接続)で、これはトンネリングと呼ばれます。SSHクライアントはTCPポートでリッスンし、すべての接続を転送しますセキュアチャネルを介してそのポートに送信され、リモートシステムからの接続を終了します。
デフォルトでは、トンネルを設定してもシェルが取得されます。つまり、SSHクライアントは同じ接続(トンネルとシェル)を介して2種類のデータを転送します。 -N
パラメータを使用してシェルを無効にすることができます。