2月 132013
 
シェアする

Webプロキシ配下の環境から外部インターネットに対してSSH接続を行いたい。

TeraTermをWindows上で用いた場合、プロキシの設定を変更して外部インターネットに対してWebプロキシ経由でアクセスできるのは知っていたので、今回はCentOSからWebプロキシ経由で外部インターネットに対してSSH接続できないものか と思い、調べてみた。

すると「corkscrew」というものに出くわした。

To use ssh over a proxy connection,
you need a software called Cocrkscrew.
Download the source and compile/install it.

http://lindesk.com/2007/04/using-ssh-over-a-proxy/

Webプロキシ経由でSSH接続をするためには、「Corkscrew」と呼ばれるプログラムが必要とのこと。

ページに説明されている通りの方法でダウンロード、コンパイル、インストールを行った。

以下にCorkscrewのインストール方法を紹介する。
ここでプロキシサーバとして利用している「your.proxy.server」は実在しない。
設置時には自身の環境において利用しているプロキシサーバを指定すること

1. /tmp/corkscrew というディレクトリを作成し移動する。ここを作業用ディレクトリとする。

# mkdir /tmp/corkscrew
# cd /tmp/corkscrew/

2. wgetを用いてインストール用データを取得する

プロキシサーバの利用がある場合は、http_proxyの設定を忘れずに

# export http_proxy=your.proxy.server:8080
# wget http://www.agroman.net/corkscrew/corkscrew-2.0.tar.gz

3. ダウンロードしたインストールデータの展開、展開されたディレクトリへ移動する

# tar -xzf corkscrew-2.0.tar.gz
# cd corkscrew-2.0

4. ./configure を実施し、Makefileを作成する

# ./configure

ここで、「configure: error: no acceptable cc found in $PATH」などのエラーに遭遇しconfigureが正常終了しない場合は、コンパイルに必要なコマンドなどのセットを以下のコマンドでインストールする

# yum -y groupinstall "Development tools"

5. あとは、makeしてmake installしてインストールする

# make && make install

6. /etc/ssh/ssh_configのバックアップを作成し、設定を変更する

以下の場合、your.proxy.serverがポート8080で接続を待っている場合

# cp /etc/ssh/ssh_config /etc/ssh/ssh_config.back
# echo "ProxyCommand /usr/local/bin/corkscrew your.proxy.server 8080 %h %p" >> /etc/ssh/ssh_config

7. 最後に外部サーバにSSH接続出来るかを確認する

# ssh username@hostname

これで、Webプロキシ経由でSSH接続出来るようになったヽ(・∀・)ノ!

 

このエントリーをはてなブックマークに追加

コメント大歓迎!質問も受け付けておりますヽ(*´∀`)ノ