前回サーバー側の設定内容を確認したので、今回はクライアント側の設定内容を確認しようと思います。以前利用していたソフトは、WindowsGui for OpenVPNというWindows用のOpenVPNクライアントソフトです。
普通にインストールするとC:program Files\OpenVPN\configフォルダにclient.ovpnという設定ファイルと、認証関連の鍵と証明書を設置することになります。
まずOpenVPNで利用できる認証ですが
- 事前共有秘密鍵 static key
- クライアント/サーバー証明書のSSL/TLS
の利用が可能です。
では、前回と同じようにテキストファイルを見てきます。サーバー側のserver.confとだいたい同じような感じです。
client
TLS認証を有効にします。
tls-auth ta.key 1
トンネリングのデバイスを選択。tunはL3でしたね。
dev tun
プロトコルはサーバーと合わせてUDPになっています。
proto udp
サーバーのIPアドレスとポート番号です。
remote ***.***.***.*** 1194
証明書関連です。サーバーのものと合わせましょう。
ca ca.crt cert client1.crt key client1.key
名前解決に失敗したら・・・ですが、infiniteは永遠に続けます。
resolv-retry infinite
パケットを相手側に送るときに使用するポートを
ず、動的に割り当てます。
nobind
サーバー側にもありましたが、再起動時の為に記憶しておくという設定です。
persist-key persist-tun
LZO圧縮を利用する。サーバー側も同じ設定です。
comp-lzo
ログのレベルです。サーバー側も同じ設定です。
verb 3
こうしてみるとほとんどがサーバー側と同じでしたね。サーバー側とクライアント側で違うところと言うと、接続できた時にどう動くかというものと接続できなかった時にどう動くかの部分が違うだけであとはだいたい同じですね。
後はOpenVPNサーバー側でたとえばファイルにアクセスしたり、インターネットにアクセスしたりという事になると転送の設定が必要になり、/proc/sysでパラメータ変更やFWの転送設定やポートの設定がまた必要になる事でしょう。
細かいとこは今回はやりません。
こんなところかなぁ。03は少ないですがこれで終わります。
最後に設定ファイルを残しておきます。
サーバー
/etc/openvpn/server.conf
port 1194 proto udp dev tun ca ca.crt cert server.crt key server.key # This file should be kept secret dh dh1024.pem server 192.168.2.0 255.255.255.0 ifconfig-pool-persist ipp.txt keepalive 10 120 tls-auth ta.key 0 # This file is secret comp-lzo max-clients 2 user nobody group nobody persist-key persist-tun status openvpn-status.log log-append /var/log/openvpn.log verb 3 push "redirect-gateway def1" push "dhcp-option DNS 8.8.8.8" push "dhcp-option DNS 8.8.4.4" duplicate-cn
クライアント
client tls-auth ta.key 1 dev tun proto udp remote サーバーIP 1194 ca ca.crt cert client1.crt key client1.key resolv-retry infinite nobind persist-key persist-tun comp-lzo verb 3