サーバー設定につづいてClientの設定。
今回の構成は、サーバーがLinux、クライアントがWindowsとMacという構成。
WindowsをVPNクライアントとして使う
http://openvpn.se/files/install_packages/openvpn-2.0.5-gui-1.0.3-install.exeをダウンロード。 ダウンロードが終わったら、インストールです。 全部デフォルトでかまいません。ちょっと時間かかります。 インストールが終わったら、OpenVPNインストールディレクトリ/config配下に設定ファイルと鍵を置きます。 まず、鍵をOpenVPNインストールディレクトリ/config/keysに置きます。(ここでなくてもかまいません。) そして設定ファイルを作成。設定が終わったら、タスクトレイに"OpenVPN GUI"というアイコンがあるので、 右クリック -> client1 -> Connectを選択。クライアント証明書を作成したときのパスフレーズを聞かれるので、入力します。 アイコンのPCモニタが緑になれば、接続終了です。 アイコンにマウスカーソルを当てると、割り当てられたIPアドレスが表示されます。 今回の例だと、10.0.1.2が割り当てられています。 Pingをうったり、Webサーバーがあればアクセスしてみてください。繋がっていれば成功です。OpenVPNインストールディレクトリ/config/client1.ovpn
# クライアントであることを指定 ※OpenVPNサーバからパラメータを受け取るために必要 client # 通信に使用するプロトコル proto udp # 使用する仮想ネットワークデバイスの指定 ※OpenVPNサーバと同じにする必要があります。 dev tap0 # 接続するOpenVPNサーバの指定 # 書式:remote [OpenVPNサーバのホスト名またはアドレス] [ポート番号] #一般家庭の場合、ルーターのアドレスを指定して、StaticNAT転送してあげる必要があります。 remote vpn.example.com 5000 # CA証明書、サーバ証明書、サーバ秘密鍵のパス指定 keys/ca ca.crt keys/cert client1.crt keys/key client1.key # OpenVPNサーバの名前解決を継続する resolv-retry infinite # ローカルポート番号をバインドしない nobind # パケット転送の際にLZO圧縮を有効にする comp-lzo # VPNが落ちた場合の再接続設定 persist-key persist-tun # ログの詳細レベルの指定 verb 3 # OpenVPNサーバからパラメータを受け取るための設定 pull # OpenVPNサーバからIPアドレスを受け取るための設定 float
MacをVPNクライアントとして使う
http://www.tunnelblick.net/から、自分の環境にあったファイルをダウンロードしてください。Mac OSX Tigerの場合はhttp://www.tunnelblick.net/Tunnelblick-Tiger-2.0.1.dmgがそうです。 ダウンロードしたらインストール、アプリケーションフォルダにTunnelblickがあるので、実行してください。 "Plese Put your Config file"とかいうアラートがでるので、一端"Continue"をクリックしてください。 勝手にエディタが立ち上がりますが、一端とじてターミナルで作業します。実はWindowsと違いは無かったりします..... 先ほど作成した〜/Library/openvpn/keysのしたに、client2の鍵を置きます。client1.keyだけはパーミッション600にしておいてください。でないと怒られます。 あとは、これまた、クイック起動に居る、黒ずんだアーチ状のアイコンをクリックして、 "Connect Client2"を選択します。パスフレーズを聴かれるので、入力してエンター。 Windowsと同じように、接続確認します。 今回の例だと、10.0.1.3というIPが振られます。 また、VPNに接続しているクライアント同士は、サーバーのserver.confにclinet-clientが設定してあれば通信できます。 ためしにping を10.0.1.2に打ってみてください。設定に問題がなければ返答が帰ってくるはずです。 OpneVPNを使うと、VPN環境が簡単に構築できてしまいますね。# cd 〜/Library/openvpn # mkdir keys # vi client2.conf
# クライアントであることを指定 ※OpenVPNサーバからパラメータを受け取るために必要 client # 通信に使用するプロトコル proto udp # 使用する仮想ネットワークデバイスの指定 ※OpenVPNサーバと同じにする必要があります。 dev tap0 # 接続するOpenVPNサーバの指定 # 書式:remote [OpenVPNサーバのホスト名またはアドレス] [ポート番号] #一般家庭の場合、ルーターのアドレスを指定して、StaticNAT転送してあげる必要があります。 remote vpn.example.com 5000 # CA証明書、サーバ証明書、サーバ秘密鍵のパス指定 keys/ca ca.crt keys/cert client1.crt keys/key client1.key # OpenVPNサーバの名前解決を継続する resolv-retry infinite # ローカルポート番号をバインドしない nobind # パケット転送の際にLZO圧縮を有効にする comp-lzo # VPNが落ちた場合の再接続設定 persist-key persist-tun # ログの詳細レベルの指定 verb 3 # OpenVPNサーバからパラメータを受け取るための設定 pull # OpenVPNサーバからIPアドレスを受け取るための設定 float