sshポートフォワーディング

提供: セキュリティ
2013年4月17日 (水) 23:58時点におけるDaemon (トーク | 投稿記録)による版 (ページの作成:「<!-- vim: filetype=mediawiki --> 読み方 __TOC__ == 概要 == sshコマンドでは、ポートフォワーディングをサポートしています。 ...」)

(差分) ←前の版 | 最新版 (差分) | 次の版→ (差分)
移動: 案内検索
スポンサーリンク


読み方

概要

sshコマンドでは、ポートフォワーディングをサポートしています。

ポートフォワーディング

ポートフォワーディングには、以下の種類があります。

  • ローカル
  • リモート
  • ダイナミック

ローカルポートフォワーディングの例

ローカルポートフォワーディングは、 -L オプションを利用します。

-L [bind_address:]local_port:remote_hostname:remote_port

クライアントからサーバに対して、sshトンネルを作成します。

localhost:8080 と foo:80 をつなぐ。

% ssh -L 8080:foo:80 foo

8080には、ローカルホストからしか接続ができません。 ローカルホストにログインできるユーザやプロセスが8080に接続できます。

ローカルホストが hoge だとして hoge:8080 と foo:80 をつなぐ。

% ssh -L hoge:8080:foo:80 foo

hoge のアドレスにアクセスできるプロセス、ユーザからhoge:8080を利用できます。

リモートポートフォワーディング

サーバからクライアントにポートフォワーディングします。

-R [bind_address:]port:hostname:port

リモートの syslog をローカルに飛ばしてくる、といったことができます。

ダイナミックアプリケーションレベルポートフォワーディング

ssh は、SOCKS4, SCOKS5 プロトコルをサポートしています。

-D [bind_address:]port


ゲートウェイポート

ポートフォワーディングは、デフォルトでは、別のホストから接続できません。 ssh に -g オプションをつけることで、0.0.0.0 でバインドするため、リモートからでも接続可能になります。

リモートポートフォワーディングは、サーバ側で許可が必要です。sshd_config で GatewayPorts yes と設定します。


関連項目




スポンサーリンク