踏み台サーバを利用してサーバ接続を簡単に

IDCのサーバや、運営してるサイトの管理システムには会社の事務所内からアクセス許可しないというのはよくある。
けどどうしても自宅や社外のアクセスポイントから接続したい場合もある。
そういう時にはssh_configを設定しておくとかなり便利で快適な接続が可能。
OSはMac10.6、ブラウザはFirefox3.6を利用する際のメモ。
ここで

hogehoge.com
接続したい目的のサーバ
fugafuga.com
踏み台サーバ

とする。

踏み台サーバを利用したssh接続

基本的にmacssh_configファイルは「~/.ssh/config」になる。
で、そのssh_configファイルに以下を記述

Host hogehoge.com
  HostName hogehoge.com
  User root
  Port 22
  IdentityFile ~/.ssh/id_rsa
  ProxyCommand ssh fugafuga.com nc %h %p
Host
sshで接続する時に指定するホスト名(エイリアスでも可)
HostName
上のHostでエイリアスを記述した場合はここに実際のホスト名かIPアドレス(省略可)
User
ログインする際のユーザ名(省略可)
Port
サーバ接続する際のポート番号(省略可)
IdentityFile
ログインする際に利用する秘密鍵(省略可)
ProxyCommand
サーバに接続する際に使用するコマンド

踏み台サーバに接続する際も細かい設定が必要ならそっちにも上のようなホスト設定をしとけばok。
設定オプションはもっといろいろ指定出来るけど細かいとこは下記サイト参照。

踏み台サーバを利用したHTTP(Firefox)接続

こちらもまずはssh_configファイルを編集。
上の「ssh接続」用の設定と異なり、こちらは踏み台サーバのホスト設定に記述する点に注意。
追記するのは「DynamicForward」の指定のみ。

Host fugafuga.com
  DynamicForward 1080
DynamicForward
ローカルホスト側の動的転送するポート番号

これでssh_configの設定は完了。
次はプロキシの設定だけど、Macデフォルトの環境設定>ネットワークとかからやってるとイチイチ設定を有効にしたり無効にしたりするのもメンドクサイし、有効にしたら通信時に毎回プロキシを経由するから通信速度も落ちるしネットワーク環境によっては接続出来なくなるホストもある。
ので、プロキシの設定はブラウザの拡張機能、今回はFirefoxのアドオンFOXY PROXYでの方法。

ホスト名
localhost
ポート
1080(ssh_configのDynamicForwardで指定したポート番号)

この設定のSOCKS(v5)プロキシを追加。ここまではMacデフォルトのネットワーク設定でもいっしょ。
で、後は踏み台サーバを経由しないと接続出来ないURLをURL Patternsに設定すれば準備は完了。
※実際に接続する際には、追加したプロキシを有効にするのと、sshで踏み台サーバに接続しておく事を忘れずに。


以上