SSHトンネル実践ガイド:ローカル&リモートポートフォワーディング
本チュートリアルでは、SSHトンネルを利用したローカルポートフォワーディングとリモートポートフォワーディングについて、実践的な観点から解説する。具体的なコマンド例やユースケースを通して、ファイアウォールの内側にあるサービスへの安全なアクセス方法や、ローカルサービスを外部に公開する方法を学ぶことができる。
背景メモ
- SSH(Secure Shell)はリモートサーバーに安全に接続するためのプロトコルだが、その「ポートフォワーディング」機能を使うと、暗号化されていない通信やファイアウォールで遮られる通信をSSH経由でトンネリングできる。
- 「ローカルポートフォワーディング」は、自分のPCの特定ポートへのアクセスを、SSH先のサーバー経由で別の場所に転送する仕組み。例えば「localhost:8080 → 社内サーバー:80」のように使う。
- 「リモートポートフォワーディング」は逆に、SSH先のサーバーのポートへのアクセスを自分のPCに転送する。外部から直接アクセスできない自宅PCなどを公開するのに便利。
- 実務では、踏み台サーバー(bastion)経由でデータベースに接続する、開発中のWebアプリを一時的に公開する、ファイアウォールを迂回して内部ツールにアクセスする、といった用途が一般的。ネットワークエンジニアやDevOps、バックエンド開発者にとって必須のスキル。