OpenVPN のインストール(共通鍵)
共通鍵を用いたVPNの設定
・LZO(通信圧縮プログラム)のインストール
# cd /usr/local/src # wget http://www.oberhumer.com/opensource/lzo/download/lzo-1.08.tar.gz # tar zvxf lzo-1.08.tar.gz # cd lzo-1.08 # ./configure # make # make install
・TUN/TAPデバイスの確認
特に何も言われなかったらOpenVPNのインストールへ
# modprobe tun
・TUN/TAPデバイスの用意(カーネルに無くてなんか言われた場合)
カーネル設定の"Network device support"の中の"Universal TUN/TAP device driver support"を有効にする
# mknod /dev/net/tun c 10 200
・OpenVPNのインストール
# cd /usr/local/src # wget http://openvpn.net/release/openvpn-2.0.9.tar.gz # tar zvxf openvpn-2.0.9.tar.gz # cd openvpn-2.0.9 # ./configure # make # make install
・起動スクリプトのコピー
# mkdir /etc/openvpn # cp sample-scripts/openvpn.init /etc/openvpn # chmod 755 /etc/openvpn/openvpn.init # cp /usr/local/src/openvpn-2.0.9/sample-scripts/bridge-start /etc/openvpn # chmod 755 /etc/openvpn/bridge-start # cp /usr/local/src/openvpn-2.0.9/sample-scripts/bridge-stop /etc/openvpn # chmod 755 /etc/openvpn/bridge-stop
・共通鍵の作成
作成した鍵はクライアントにも渡しておく
# openvpn --genkey --secret testvpn.key # cp testvpn.key /etc/openvpn
・server.confの設定(サーバ側)
# vim /etc/openvpn/server.conf # タップ(L2)使用 ;dev tun dev tap # 仮想インタフェースのアドレス ifconfig 192.168.200.1 255.255.255.0 # 通信に使用するポート port 5500 # TCPかUDPか proto tcp-server ;proto udp # クライアントのアドレスは限定しない float # 秘密鍵設定 secret /etc/openvpn/testvpn.key # moderate verbosity verb 4 mute 10 # その他 ping 10 ping-restart 60 ping-timer-rem persist-key persist-tun
・openvpn.confの設定(クライアント側)
# タップ(L2)使用 ;dev tun dev tap # 仮想インタフェースのアドレス ifconfig 192.168.200.3 255.255.255.0 # TCPかUDPか proto tcp-client ;proto udp # VPNサーバのアドレス remote VPNサーバのIPアドレスを入力 port 5500 # 秘密鍵設定 secret testvpn.key # moderate verbosity verb 4 mute 10 # その他 ping 60
・OpenVPN の起動
# openvpn --config /etc/openvpn/server.conf &
後はクライアントからつないでみてテスト.
今回は共通鍵を使ったが、CA認証局を使った認証もある.
CA認証でないとクライアント同士の通信ができないので要検討.