BLOG

UT-VPNを用いて物理的に異なる2拠点をL2VPNで接続する

utvpn_wall_2

UT-VPNはSSL-VPNを実現するソフトウェアで、
商用ソフトウェアPacketiXの機能限定オープンソース版です。

インストール方法はクライアントとサーバー側で異なりますが、
ここではサーバーにUT-VPNのLinux版をインストールし、
Windowsから繋ぐ事を想定したいと思います。

 

■ サーバー側(Linux側の構築)

・ファイアウォールの設定
UT-VPNはTCP443、TCP992、TCP5555のいずれかを利用して通信を行いますので、
いずれかのポートを解放して接続できるようにしてください。

・ソースの取得

wget "http://utvpn.tsukuba.ac.jp/files/utvpn/v1.01-7101-public-2010.06.27/Source%20Code%20(Win32%20and%20Unix)/utvpn-src-unix-v101-7101-public-2010.06.27.tar.gz"

・ソースファイルの解凍

tar -xvzf utvpn-src-unix-v101-7101-public-2010.06.27.tar.gz

・前提パッケージのインストール

yum -y install gcc gcc-c++ zlib-devel readline-devel ncurses-devel openssl-devel

・解凍したディレクトリへ移動

cd utvpn-unix-v101-7101-public/

・コンパイルを行いインストールします

./configure
make
make install

・UT-VPNを起動します

/usr/bin/utvpnserver start

※CentOS6などOpenSSLライブラリが1.0以上の場合、
コアダンプが発生して実行ができませんので、ライブラリを修正します

cd src/Mayaqua
mv openssl openssl.old
mkdir openssl
cd openssl
ln -s /usr/include/openssl/* ./
cd ../openssl.old
cp -a * ../openssl/ (ただし上書きはしない)

・再度コンパイルを行います。

cd ~src/utvpn-unix-v101-7101-public/
make clean
make
make install

・動作確認

/usr/bin/utvpnserver start

実行しコアダンプエラー等の問題がなければ作業は終了です。

 

■ クライアント側(Windows側)

・以下URLよりPCの動作OSに応じてクライアントの32bit版/64bit版をインストール

http://utvpn.tsukuba.ac.jp/files/utvpn/v1.01-7101-public-2010.06.27/Binary%20%28Win32%29/Japanese/UT-VPN%20Client/

・UT-VPNサーバーの管理
utvpn1
新しい接続設定で接続先を追加します。
ホスト名は接続するサーバーのIPアドレス、もしくはホスト名を入力します。
初回接続ではパスワードを設定するか聞いてきますので、パスワードを設定するのを忘れないようにしましょう。

utvpn2
無事サーバーに接続すると上に仮想HUBの一覧、下に各種設定のボタンが表示されます。

まずは一番簡単な方法として、
デフォルトの仮想HUBに既存ネットワークを繋げてサーバーをL2スイッチとして動作させたいと思います。

左下にあるローカルブリッジ設定ボタンを押下し、
ローカルブリッジ設定画面を開くと以下のような画面が表示されます。

utvpn3

ここで仮想HUBを選択し、ブリッジ接続を行うLANカードを選択します。
LANカードが一つの場合eth0で選択しますが、
複数ポートが存在する場合、接続したいネットワークに物理的に繋がっているポートを選択します。

最後にローカルブリッジを追加のボタンを押し、閉じるを押すとサーバー管理マネージャーに戻ります。
仮想HUB欄の右にあるMACテーブルやIPテーブルが増えていればL2スイッチとして動作が確認できました。

 

■ 2つの拠点をL2VPNで接続する
物理的に異なる2つの拠点を1つのネットワークとして接続します。

・前提構成
・拠点AのUT-VPNはインターネットに接続が可能で、eth0に既存ネットワークとブリッジ接続がされています。
・拠点BのUT-VPNはeth0にグローバルIPアドレスが固定で付与され、
eth1に既存ネットワークがブリッジ接続されています。
・拠点Aと拠点Bのネットワークは共に同じセグメントに属しています。

・注意点
拠点Bからは拠点AのUT-VPNサーバーを管理する事はできません。
例えば拠点AのUT-VPNサーバーが社内サーバーを兼用している場合、
拠点Bのユーザーは拠点Aの社内サーバーを参照する事ができません。
※拠点Aから拠点BのUT-VPNサーバーを管理する場合、
拠点Bのeth0側のIPアドレスを使って管理する事になります。

・拠点Bでユーザーを作成する

1. 拠点Bの仮想HUB管理画面を開き、左上にあるユーザーの管理を押下します。
utvpn4

2. 以下のユーザー管理画面が表示されます。新規作成ボタンを押下してください。
utvpn5

3. ユーザー作成画面に遷移します。
ここではパスワード認証で拠点間の接続を行いますので、
この状態でユーザー名とパスワードを入力しユーザーの作成を行います。
utvpn7

以上で拠点Bの設定は完了です。

・拠点Aでカスケード接続を行う
次に拠点A側のUT-VPNサーバーの設定画面に移動し、
拠点Bに接続するための設定を行います。

1. 仮想HUB管理画面を表示し、左下にあるカスケード接続の管理を押下します。
utvpn4

2. 上記のようなカスケード接続管理画面が表示されます。
utvpn6

3. 新規作成ボタンを押下するとカスケード接続の管理画面が表示されます。

この画面では拠点Bに接続するための以下の情報を入力します。
【接続設定名】 「拠点A→拠点B」と入力
【ホスト名】 「拠点BのグローバルIPアドレス」を入力
【仮想HUB名】 「拠点Bの仮想HUB名」を入力
【ユーザー名】 「拠点Bで作成したユーザー名」を入力
【パスワード】 「拠点Bで作成したユーザーのパスワード」を入力
utvpn8

4. OKボタンを押下し、カスケード接続管理画面に戻ります。
カスケード管理画面内にある接続先を選択し、オンラインボタンを押下してください。
utvpn6

状態がオフライン→オンライン(接続済み)と変われば無事に接続ができました。
お互いのネットワーク通信ができるか確認してみてください。

Tweet about this on TwitterShare on FacebookShare on Google+