Hatena::ブログ(Diary)

IT memorandum

2009年11月09日

SSHでポートフォワード

11:59

ポートフォワードについての説明は省きます。

想定しているのはOpenSSHを用いて「ローカルのLinuxマシン」から「経由するリモートサーバ」を経由して、「目的のサーバ」に辿り着くことです。

まずリモートサーバで接続用のユーザを作成して、そのユーザの公開鍵と秘密鍵を作成します。

秘密鍵の方をローカルマシンのLinuxユーザの~/.ssh以下に設置します。

この時、~/.sshが無ければ作成して、パーミッションを700、秘密鍵のパーミッションを600にします。

またリモートサーバの~/.sshもパーミッションが700、公開鍵のパーミッションも600にしなければなりません。

(※すでにWindows上でPuTTY形式の秘密鍵を持っている場合は、PuTTYgenを使ってOpenSSH形式の秘密鍵に変換して下さい。)

次にローカルサーバ上で

$ ssh (リモートサーバの接続用ユーザ)@(リモートサーバのホスト名) -N -L \
(ポートフォワードに使用するローカルサーバの任意のポート番号):(目的のサーバのホスト名):(目的のサーバのポート番号) \
 -i ~/.ssh/(秘密鍵の名前)

あとは別のターミナルを立ち上げ、

// 例として、SVNのリポジトリをポートフォワードで参照。
$ svn co http://localhost:(ポートフォワードに使用するローカルサーバの任意のポート番号)/svn/testrepos

のように、ポートフォワードを行います。


リンク元