SSHポートフォワーディングには、ローカルポートフォワーディングとリモートポートフォワーディングの2種類があります。ローカルポートフォワーディングでは、ローカルマシンのポートを中継してリモートサーバに接続します。リモートポートフォワーディングでは、リモートマシンのポートを中継してローカルマシンに接続します。
以下に、それぞれのポートフォワーディングの使い方とコード例を示します。
-
ローカルポートフォワーディングの使い方: ローカルポートフォワーディングでは、リモートサーバにアクセスするために、ローカルマシンのポートを中継します。以下のコマンドを使用します。
ssh -L <ローカルポート>:<リモートホスト>:<リモートポート> <ユーザ名>@<リモートホスト>
例えば、ローカルマシンのポート8080を中継してリモートサーバのポート80にアクセスする場合、以下のようにコマンドを実行します。
ssh -L 8080:localhost:80 [email protected]
-
リモートポートフォワーディングの使い方: リモートポートフォワーディングでは、リモートマシンのポートを中継してローカルマシンに接続します。以下のコマンドを使用します。
ssh -R <リモートポート>:<ローカルホスト>:<ローカルポート> <ユーザ名>@<リモートホスト>
例えば、リモートマシンのポート2222を中継してローカルマシンのポート22にアクセスする場合、以下のようにコマンドを実行します。
ssh -R 2222:localhost:22 [email protected]
このように、SSHポートフォワーディングを使用すると、セキュアなトンネルを通じてリモートサーバやローカルマシンにアクセスすることができます。さまざまなネットワーキングのシナリオで活用される便利な機能です。必要に応じて、ポート番号やホスト名を適切に設定し、安全なリモートアクセスを実現してください。