OpenVPNで ID/パスワード認証する為のクライアントの設定方法

ALL
スポンサーリンク

下記記事で説明したOpenVPNサーバへ、Windowsから接続するクライアントソフト vpnux Client と OpenVPN の設定方法を紹介します。

OpenVPNで ID/パスワード認証する

vpnux Client

OpenVPNサーバへの接続や設定を、下図のようにGUIで行えるOpenVPNクライアントです。

vpnux_setting

以降でインストールと設定について説明します。

vpnux Client の使用に際し、事前に OpenVPNサーバ側からCA証明書(/etc/openvpn/ca.crt)、TLS認証鍵(/etc/openvpn/ta.key)を、クライアントにコピーしておきます。
USBメモリや下記で紹介したWinSCP等でコピーします。

リモートのLinuxとWindows間でGUIでファイルコピーするツール WinSCP パソコン鳥のブログ

vpnux Client を下記からダウンロード・インストールします。

vpnux Client – 窓の杜ライブラリ

起動後、次の画面になるので「プロファイル」ボタンを押します。

vpnux_setting_1

「プロファイル」画面になるので、「追加」ボタンを押します。

vpnux_setting_2

「プロファイルの編集」の一般設定画面になるので、赤枠の箇所を設定します。

vpnux_setting_3

「プロファイル名」は、vpnux Client 起動後の画面でプロファイル一覧に出てくる名称になります。
VPNサーバは、OpenVPNサーバのアドレスを指定します。
ポート、プロトコルはOpenVPNサーバの /etc/openvpn/server.conf で指定したものと同じにします。
CA証明書は、OpenVPNサーバからコピーしてきた ca.crt を指定します。
「ID/パスワード認証を使用」にチェックを入れます。
「ユーザID」、「パスワード」にOpenVPNサーバ上のユーザIDとパスワードを設定します。
「ユーザIDとパスワードを保存」にチェックを入れます。

まだ「保存」ボタンを押さずに、画面上部の「詳細設定」を押します。
「プロファイルの編集」の詳細設定画面になるので、赤枠の箇所を設定します。

vpnux_setting_4

OpenVPNサーバの /etc/openvpn/server.conf で tls-auth ta.key 0 を設定した場合は、
「TLS-Auth HMAC署名を使用」にチェックを入れます。
共有鍵は、OpenVPNサーバからコピーしてきた ta.key を指定します。

以上を設定したら「保存」ボタンを押します。

「プロファイル」画面に戻ります。
プロファイルが追加されていることを確認して「閉じる」ボタンを押します。

vpnux_setting_5

起動直後の画面になるので、「プロファイル」から設定したプロファイルを選択します。
ユーザID、パスワードが自動設定されます。

vpnux_setting_6

「接続」ボタンを押すと、接続処理が開始され、次の画面になります。

vpnux_connecting_1

しばらくしてタスクトレイに緑色のアイコンが表示されれば接続完了です。
vpnux_connecting_2

OpenVPN

OpenVPNは、OpenVPNサーバ/クライアント双方の機能を持つソフトウェアです。
ここでは OpenVPNクライアントとしての設定を行い、サーバタスクトレイの下記アイコンの右クリックメニューから、OpenVPNサーバへの接続や切断の操作を行います。

OpenVPN_tasktray

但し、必要な設定はファイルを直接編集して行う必要があります。

以降でインストールと設定について説明します。

OpenVPNクライアントを下記の「Installer (64-bit), Windows Vista and later」の箇所からダウンロード・インストールします。
2015年4月5日時点の最新版は、openvpn-install-2.3.6-I603-x86_64.exe です。

Community Downloads

インストール後、次の手順で設定します。

OpenVPNサーバー側からCA証明書(/etc/openvpn/ca.crt)、TLS認証鍵(/etc/openvpn/ta.key)をクライアント側へコピーしてきます。

コピー元:OpenVPNサーバー上の /etc/openvpn/ca.crt , /etc/openvpn/ta.key
コピー先:C:\Program Files\OpenVPN\config

USBメモリや下記で紹介したWinSCP等でコピーします。

リモートのLinuxとWindows間でGUIでファイルコピーするツール WinSCP パソコン鳥のブログ

クライアント設定のサンプルファイルをコピーします。
コピー元:C:\Program Files\OpenVPN\sample-config\client.ovpn
コピー先:C:\Program Files\OpenVPN\config

client.ovpn 中の次のオプションを設定します。

C:\Program Files\OpenVPN\config\client.ovpn

client
proto udp
remote VPNサーバのアドレス ポート番号
#cert client.crt
#key client.key
#remote-cert-tls server
auth-user-pass

client
OpenVPNはサーバとしてもクライアントとしても動作できます。
設定で client と記述することで、クライアントとして動作します。

proto udp
OpenVPN で使用するプロトコルを tcp / udp いずれかで指定します。
VPNサーバの server.conf の protoオプションで指定したものと一致させる必要があります。

remote VPNサーバのアドレス ポート番号
OpenVPNサーバのアドレスとポート番号を指定します。
ポート番号は、VPNサーバの server.conf の portオプションで指定したものと一致させる必要があります。

#cert server.crt
#key server.key
#remote-cert-tls server
ユーザID/パスワード認証の場合、これらのオプションは必要ないので、コメントアウトします。

auth-user-pass
認証方式が、ユーザID/パスワード認証であることを指定します。

設定後、タスクトレイの下記アイコンを右クリックして「接続」を選択します。
OpenVPN_tasktray

ユーザ名とパスワードを要求されるので、入力します。
OpenVPN_tasktray_connect_idpw

しばらくしてタスクトレイに緑色のアイコンが表示されれば接続完了です。
OpenVPN_tasktray_connected

なお、接続時にユーザ名とパスワードを要求されないようにするには、事前に設定しておく必要があります。

認証用のユーザID/パスワードを記述したファイルを C:\Program Files\OpenVPN\config\ に用意します。
ファイル名は任意で、1行目にユーザID、2行目にパスワードを記述します。

client.ovpn の auth-user-passオプションで、そのファイル名を指定します。
例えばファイル名を auth.txt とすると、次のように指定します。

C:\Program Files\OpenVPN\config\client.ovpn

auth-user-pass auth.txt

これで、接続時にユーザ名とパスワードを要求されないようになります。

参考

WindowsでOpenVPNへのクライアント接続を自動化する | レンタルサーバー・自宅サーバー設定・構築のヒント

Save Password in OpenVPN for Automatic Login – Knowledgebase | HostVPN

コメント