﻿これは、VMware PlayerとOpenVPNを使いRemote-Handを手軽に実現させる、VMware Appliance用の説明です。

最初に：
OpenVPNの情報サイトは数多あるが、ドキュメントを読み進めないと構築できないのでは無いでしょうか
ややネットワークの知識がいるもの、のWebUIで直感的にサーバ/クライアントの設定を出来るように
初チャレンジのPHPでつくりました。

サーバPC（WindowsXP）とクライアントPCを用意、VMware Playerが事前にインストールされて
いて、満足に操作が出来る、ネットワークの知識があることを前提として下記にリモートハンドの
使用説明をします。

サーバの用意（WindowsXP）
1. URLから別途、PepoLinux-0.34.iso　より大きいバージョンのISOファイルをダウンロードします。
http://pepolinux.sourceforge.jp/download.html

2. 展開した　Remote-Hand2VPN　フォルダへダウンロードした PepoLinux-XX.iso コピーします。
(Remote-Hand2VPN.vmx　をテキストエディタで開き、下記項目をISOイメージ名に合わせ編集します。：2009.4.26現在は不要)
ide1:0.fileName = "PepoLinux-0.34.iso"

3. VMware Playerで Remote-Hand2VPN →開く→展開したフォルダの Remote-Hand2VPN.vmx を選択→開く、起動します。
　　この時、『コピーしました』が選択されている状態で→OK

4. 何も操作しない状態で約２分程で立ち上がります。

5. 立ち上がったら画面の表示に従い→　login　https：//xxx.xxx.xxx.xxx:8443 へアクセスします。

6. Welcome PepoLinuxのHP一番下の『GUIでRemote-Handの設定をします。』を選択します。

7. Web認証画面でユーザー名：remote　パスワード：hand　でログオンします。

8. 『OenVPN管理者パスワード設定』画面で、ユーザー名：root　パスワード：kujira
　　でログインします。（必要であればこの画面でパスワードの変更が出来ます。）

9. 『Remote-Hand Control Pannel』で『Server Make』タブを選択

10. 『OpenVPNサーバの設定をします。』画面で各項目入力し『処理実行』ボタンでサーバの
　　　設定をします。
　　　* クライアント１～５の設定は、クライアント同士の接続する必要がある時に必要、空欄でも可
　　　* 『処理実行』ボタン押下後、約３分程必要です。

11. 『Client Make』タブを選択し『OpenVPNクライアント』の設定を作成します。

12. 『OpenVPNクライアントの設定をします。』画面でで各項目入力し『処理実行』ボタンで
　　　クライアントの設定します。
　　　　* ここでは個別情報（ホスト名、メールアドレス）を変えてクライアント数の設定
　　　　* ここで作成するクライアント名は後程のダウロードに必要です、必ず記録しておく
　　　　* 国名～組織名がサーバの情報と一致しないとここではエラーにならないが、接続出来ない。
13. 『Client Download』タブを選択します。

14. １２項で設定した、クライアント名を入力して『処理実行』ボタンでクライアントの設定を
　　　ダウンロードします。

15. サーバの操作はこれ迄です、『Server Control』タブ選択します。

16. 『Server Control』の画面で『OpenVPN再起動』を選択して『処理実行』ボタンでOpenVPNを起動します。
　　　* メッセージに [ OK ] が表示されたら正常です。
　　　* クライアントがインターネット経由で接続される時にサーバ側では使用するVPNポート番号を
　　　　ブロードバンドルータ等でOpenVPNサーバへポート・フォワーディングさせる設定が必要です。
　　　* VPNポート番号は推奨『443』ですが、これ以外を設定したら別途『Filtering Setup』タブで
　　　　ＩＰフィルタの一時設定を変更します。

クライアントの用意（WindowsXP）
17. １４項でダウンロードしたファイル、例として『pepo1.zip』ファイルを『OpenVPNクライアント』へ
　　アップロードします。

18. サーバと同様にログイン後、『ClientUpload』タブを選択

19. 『クライアントの設定情報をアップロードします。』画面で『参照』ボタンで『pepo1.zip』を
　　選択して、『処理実行』ボタンでアップロードします。

20. サーバの15,16項と同様にOpenVPNを起動します。

21. 『EthernetSetupで』タブでインターフェース『tun0』と10項で設定した『VPNネットワーク』アドレスが
　　表示されたらVPNサーバへ正常に接続されています。
　　* クライアントPCのWindowsのDOSプロント画面から route add コマンドでサーバLAN側のroute情報を追加
　　　例　route add 192.168.123.0 mask 255.255.255.0 192.168.114.128
　　* サーバのLAN側へPINGを飛ばし確認します。

22. １４項でダウンロードした、例『pepo1.zip』はWindows版のOpenVPNのクライアント設定内容も含みます。
　　パスワードで圧縮・暗号化されているのでWindowsXPで所定のフォルダへ移動させて解凍する
　　* パスワードは『ユーザ名：パスワード』ユーザ名とパスワードを：コロンで連結したもの
　　* Windows版のOpenVPNは下記からダウンロードしてください
http://www.plum-systems.co.jp/techinfo/openvpn/21.html

* 接続されない場合などの確認方法
ア）サーバ～クライアント間にIPルートとポートフォワーディングが出来ていることを確認
　　『Server Control』でping、tcptracerouteテスト（テスト時一旦iptablesを停止します。）
イ）アンチウィルスの種類によりファイヤーウォールを無効にする必要がある
ウ）クライアント・サーバが無線LANの場合簡易設定出来ない場合がある(未確認)
エ）『Server Log』でシステムログの確認
オ）iptablesを停止して確認してみる
カ) 既存のIPフィルタ(iptables)の設定は、ICMP(PING等)通信のみ通過する設定となっています。
   希望する通信プロトコル＆ポートを『Filtering Setup』タブで追加しないといけません。

参考）
1. サーバに対してクライアントが2時間程の遅れがあるとNG下記エラーログ
 Apr  3 11:27:17 (none) openvpn[2791]: VERIFY ERROR: depth=1, error=certificate is not yet valid:
2. サーバから接続クライアント単独だけでなくクライント・ネットワーク全体と通信したい場合のオプション
 * クライアント側のネットワークアダプタ３を『ホストオンリー』から『ブリッジ』接続へ変更
 * クライアント側のVPN接続方法を『VPN Client起動』から『VPN Server起動』へ変更して操作する
 * サーバ側の操作は変わりません

その他
材料）
・VMware Player　http://www.vmware.com/jp/products/player/
・PHPマニュアル　http://jp.php.net/manual/ja/index.php
・javascript tabで　http://allabout.co.jp/internet/javascript/closeup/CU20071220A/
・タブでルック&フィールを上げる為　http://jquery.com/
・PepLinux（1CDLINUX）Me

情報源）
http://freescitech.net/2/ovpn2_howto_ja.html
http://www.stackasterisk.jp/tech/systemConstruction/openVpn01_01.jsp
http://openvpn.net/
http://www.plum-systems.co.jp/techinfo/openvpn/21.html

Change tracking） 
2009.4.7 v0.1;ファーストリリース 

2009.4.15 v0.2; 
1. 再起動後も変更したパスワードを保持できるように 
2. tcptracerouteテストでiptablesの自動停止/起動を手動へ 
3. HPの有効でないメニューを削除 
4. 入力されたIPなどを簡易チェック追加

2009.4.26 v0.3;
1. パスワード変更時パスワード１と２のミスマッチチェック追加
2. clientのアップスクリプト(nat無効)修正
3. IPをチェックミス修正(0.0.0.0,255.255.255.255をpreg_match()で検出)
4. サーバからクライアントのネットワーク全体と通信するオプションを追加
5. tabの色変更、他クリーンアップ

→↑→↑→↑→↑→↑→↑→↑人生七転び八起き(^_^;)<m(__)m>(^o^)丿
2009.4.26 Copyright by IZAMUKARERA　http://sourceforge.jp/projects/pepolinux/

