ssh -N -L ポート番号:ホスト:ホスト側ポート番号
インターネット経由で遠隔地にあるサーバーを管理したいことはよくあるでしょう。ただし,telnetではやりとりが暗号化されないのでセキュリティ面での不安があります。このようなケースでは,遠隔地側のホストでsshサーバーを動かし,SSHプロトコルによる接続を可能としておけば,サーバーとクライアント間で張った暗号化トンネルの中でセキュアな通信を行うことが可能です。
例えば,遠隔地のsshサーバー(10.1.1.100)を経由して,遠隔地のホスト(192.168.100.100)と暗号化トンネル経由で通信する場合には,以下のようなコマンドを実行します(図1)。このコマンドでは,「10.1.1.100」のホストとssh接続をして,ローカルの10023番ポートへの通信をトンネル経由で「192.168.100.100」の23番ポートへ転送します。
ssh -N -L 10023:192.168.100.100:23 10.1.1.100
そのあとに,以下のコマンドを実行することで,ローカルの10023番ポートへのtelnet接続が「192.168.100.100」へ転送されます(図2)。
telnet localhost 10023