前回サーバー側の設定内容を確認したので、今回はクライアント側の設定内容を確認しようと思います。以前利用していたソフトは、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