SSL-VPN接続#

証明書のダウンロード#

※ 本ガイドの はじめに ー 事前準備(オプション)作成ユーザーの認証方式変更 で証明書を取得、保管してある場合は、「証明書のダウンロード」は必要ありません。次の 証明書の準備へ進んでください。

証明書の発行からインポートまでを説明します。

1 . ポータルにログインし、画面右上のユーザー名をクリックして、 [ 認証方式変更 ] を選択します。
ポータル

2 . [ 証明書発行 ] をクリックします。

3 . 任意のパスフレーズを設定し、 [ 発行 ] をクリックします。 設定したパスフレーズは、証明書のダウンロード・インストールおよびクライアント証明書の形式変換、秘密鍵の抽出の際に使用します。

4 . 本サービスから送付されるメールに従い、証明書をダウンロードします。

5 . メールに記載されている証明書のユーザーIDと、発行時に設定したパスフレーズを入力し、ダウンロードします。

6 . 証明書をインストールします。ダウンロードした証明書ファイルをダブルクリックしてください。
すべてデフォルトの設定でインストールします。パスワードは手順3. で設定したパスフレーズを入力します。



証明書の準備#

opensslコマンドの利用環境を準備#

証明書の型式の変換、秘密鍵抽出のため、本ガイドの例ではopensslを使用します。そのため、以下のいずれかでopenssl利用環境を準備します。
・Windows Subsystem for Linux(WSL)を利用する
・Windows版opensslをインストールする

本ガイドではWindows Subsystem for Linux(WSL)のUbuntuでの利用を例示します。   

  1. Windowsのコマンドプロンプトから以下のコマンドで、Windows Subsystem for Linuxをインストールします。
    クライアントPCの管理者権限で実行します。

       c:\User\xxxxxxx > wsl.exe --install -d Ubuntu
    

実行例

クライアント証明書の形式変換、秘密鍵の抽出#

ダウンロードしたクライアント証明書をOpenVPNクライアントで利用するため、opensslコマンドを用いて秘密鍵を抽出します。

1 . 先ほどインストールしたWSLを起動します。

WSLのコマンド入力画面が起動されます。
※この例では一般ユーザー(プロンプトが"~$")で実行していますが、root(プロンプトが"#")で実行しても構いません

2 . 証明書の形式変換、および秘密鍵抽出の事前準備

クライアント証明書は、実行環境(この例ではUbuntu)のホームディレクトリ(本ガイドのWSLのUbuntuを使用した例では、"/home/ユーザー名")に事前に格納しておきます。

Ubuntuのホームディレクトリ "/home/ユーザー名" は、 下図のようにWindowsのエクスプローラーで"Linux > Ubuntu > home > ユーザー名" のフォルダからアクセスできます。
クライアント証明書をこのフォルダへ格納してください。

Note

  • クライアントPCの設定、実行するユーザーによって異なるフォルダになる場合がありますので、エクスプローラーから確認願います。例えばUbuntuのrootユーザーで実行する場合は、Linux > Ubuntu > root フォルダになります。
  • ダウンロードした証明書ファイルを上記のフォルダへ移動またはコピーする際にクライアントPCの管理者権限のアカウント・パスワードを要求される場合があります。その場合は管理者アカウント・パスワードを入力してください。

3 . WSLのウィンドウからopensslコマンドで証明書のPEM形式への変換、および秘密鍵の抽出を行います。

実行するコマンド(例)

  • 証明書形式の変更
       $ openssl pkcs12 -in <クライアント証明書> -clcerts -nokeys -out client.crt -legacy 
    

実行するとパスワードを要求されます。

パスワードは証明書発行時に設定したパスフレーズを入力してください。

  • 秘密鍵の抽出
       $ openssl pkcs12 -in <クライアント証明書> -clcerts -out client.key -legacy
    

実行すると、パスワードの入力とPEMのパスフレーズの設定を要求されます。

パスワードは証明書発行時に設定したパスフレーズを入力してください。

PEMのパスフレーズには任意の値を設定してください。続けて再入力("Verify")を要求されますが、同じ値を再度入力してください。
ここで設定したPEMのパスフレーズはこの後のOpenVPNからのSSL-VPN接続で必要になります。

ホームディレクトリに、以下の2つのファイルが出力されます。WSLのホームディレクトリおよびWindowsエクスプローラーのフォルダにファイルが作成されていることを確認してください。

  • client.crt : 形式を変換した証明書
  • client.key : クライアント証明書から抽出した秘密鍵

実行後のWSL(Ubuntu)のホームディレクトリ

実行後のWindowsエクスプローラーのフォルダ


CA証明書のダウンロード#

1 . 以下のDigiCertのサイトから、CA証明書としてルート証明書[DigiCert Global Root G2] をダウンロードします。
「Download PEM]をクリックし、PEM形式のルート証明書をダウンロードしてください。
https://www.digicert.com/kb/digicert-root-certificates.htm


2 . ダウンロードしたファイルは以降の手順で利用するため、ファイル名を拡張子も含め「ca.crt」にリネームします。※拡張子は".pem"から".crt"に変更します。


OpenVPNクライアントの導入#

SSL-VPN接続クライアント(OpenVPNクライアント)を接続するクライアント端末にインストールします。

1 . OpenVPNクライアントを以下からダウンロードして、クライアント端末にインストールします。

https://openvpn.net/community-downloads/

バージョンはOpenVPN 2.6.XXをご利用ください。(本ガイドでは 2.6.10 で例示しています。)

2 . クライアントのインストール後、証明書の準備CA証明書のダウンロードで準備した各証明書をOpenVPNクライアントのデフォルトの証明書格納フォルダに格納します。

格納する証明書

  • CA証明書(ca.crt)
  • クライアント証明書(client.crt)
  • クライアント秘密鍵(client.key)

OpenVPNクライアントのデフォルトの証明書格納場所は以下です。

C:\Program Files\OpenVPN\config


OpenVPN接続設定ファイルの作成#

以下のサンプルテンプレートを参照して、接続設定ファイル(拡張子は”.ovpn”)を作成し、C:\Program Files\OpenVPN\config に格納します。

サンプルテンプレート

client  
dev tun  
proto tcp  
remote <SSL-VPN V3のExternal_Address> 443 1  
resolv-retry infinite  
nobind  
auth-user-pass           2  
static-challenge pin otp 2  
persist-key  
persist-tun  
ca ca.crt                3    
cert client.crt          3    
key client.key           3    
remote-cert-tls server  
data-ciphers AES-256-GCM  
http-proxy <proxyサーバーのアドレス> <ポート> stdin basic 4

※1 SSL-VPN V3のExternal_Addressを指定してください。本ガイドのSSL-VPNコネクション(SSL-VPN V3)の External addressを確認するの例の場合は 133.162.70.144 になります。
※2 ワンタイムパスワードを利用しない場合は、該当行を削除してください。
※3 サーバー証明書のCA証明書、クライアント証明書、秘密鍵のファイル名を記載してください。
※4 proxyサーバーのアドレス、ポートを指定してください。proxy経由で接続しない場合は、該当行を削除してください。

C:\Program Files\OpenVPN\configフォルダの例

SSL-VPN接続する#

1 . タスクトレイにあるOpenVPNアイコンを右クリックし、「接続」を選択します。

タスクトレイにOpenVPNアイコンが無い場合は、スタートメニューからOpenVPNを起動します。

以下の認証画面が表示されます。

2 . 以下のパラメーターを入力します。

ユーザー名 : ユーザーIDを入力します。
パスワード: 空欄

このままワンタイムパスワードの取得に進みます。

3 . ワンタイムパスワードの取得

ワンタイムパスワードを取得するため、WinAuthを起動します。

ポップアップが上がります。ポップアップ画面のリロードボタンをクリックするとワンタイムパスワードが表示されます。

ワンタイムパスワードの表示例

4 . ワンタイムパスワード入力

ワンタイムパスワードをレスポンス欄に入力し「OK」ボタンをクリックします。
※ワンタイムパスワードがタイムアウトになる前に入力します。タイムアウトになった場合は再度WinAuthのリロードボタンをクリックして再発行します。

5 . パスワードの入力

以下のポップアップが上がり、パスワード入力を要求されたら、秘密鍵抽出時に設定したPEMのパスフレーズを入力します。パスフレーズを入力すると「OK」ボタンがクリック可能になります。

6 . 「OK」ボタンをクリックしSSL-VPNへ接続します。

Note

プロキシ経由で接続する場合、プロキシのユーザー名とパスワード入力が要求されます。ご利用の環境のプロキシのユーザー名とパスワードを入力してください。

SSL-VPN接続確認#

タスクトレイのアイコンからSSL-VPNの接続を確認できます。以下のように表示されていれば接続済です。