前回に引き続き、AndroidでローカルネットワークのVPNに接続できるようにしてみる。
前回は、VPNに使用するツールの選定と、認証局の作成まで行なった。
OpenVPNの証明書発行
VPNサーバの証明書発行を行う。
cd /usr/share/doc/openvpn/examples/easy-rsa/2.0
./build-key-server OpenVPN-server
このコマンドの、引数がCommon nameのデフォルト値となる。
Common nameは認証局を作成した際のものとは違う名前になるようにする。
Sign the certificate? [y/n]:
1 out of 1 certificate requests certified, commit? [y/n]
この2つに対してはyを入力する。
これでサーバ用の証明書が作成できた。
OpenVPN-server.csr:証明書要求ファイル
OpenVPN-server.crt:証明書ファイル
OpenVPN-server.key:鍵ファイル
証明書要求ファイルは、別のサーバにCAがある場合そのCAに対して証明書を生成してもらう時に使う。
次にDiffieHellmanの設定。
./build-dh
サーバ設定
今まで作成してきたファイルの中から
ca.crt
OpenVPN-server.crt
OpenVPN-server.key
dh2048.pem
を /etc/openvpn にコピーする。
同じディレクトリに、サーバ設定ファイルのサンプルをコピーする。
cp /usr/share/doc/openvpn/examples/sample-config-files/server.config.gz /etc/openvpn
cd /etc/openvpn
gzip -d server.config.gz
OpenVPNには2つのモードルーティング方式(tun)とブリッジ方式(tap)がある。
今回は、ブロードキャストができなければならないも使いたいので、ブリッジ方式で設定していく。
サンプルの設定ファイルから、追記・修正したのをまとめる。
#ブリッジモードを使用するための設定
dev tap0
;dev tun
#証明書ファイルと鍵ファイルの設定<strong></strong>
cert OpenVPN-server.crt
key OpenVPN-server.key
#ルーティングモードの設定をコメントアウト
;server 10.8.0.0 255.255.255.0
#ブリッジ設定
#OpenVPNのIP、サブネットマスク、クライアントに割り当てるスタートIP、エンドIP
server-bridge 192.168.1.251 255.255.255.0 192.168.1.252 192.168.1.253
#ユーザ権限の設定
user nobody
group nogroup
とりあえず、ここまででOpenVPN自体の設定は終了。
長くなってきたので、次回につづく
「AndroidとVPN 2」への1件のフィードバック