Windows ServerにPacketiX VPN Serverを構築(クライアント証明書認証)

AWS運用自動化サービス「Cloud Automator」

はじめまして、技術2課の小倉です。札幌在住です。

弊社は札幌にオフィスがありませんので、現在は自宅で1歳の息子と戯れながら仕事をしています。今まで、在宅勤務をしたことがなかったのですが、通勤がないのでとても快適です。

本ブログで、SoftEther VPNの構築手順をご紹介していますが、今回は各クライアントが保持しているクライアント証明書を利用してAWS環境へVPN接続するためのPacketiX VPN Serverの構築手順とPacketiX VPN Clientの設定手順をご紹介します。

PacketiX VPNとは

PacketiX VPNは、ソフトイーサ株式会社が提供している有償のVPNソフトウェアです。複数VPNプロトコルに対応しており、クライアントもマルチプラットフォームに対応しています。また、60 日間体験版 (無料)がありますので、購入前にVPNの動作確認ができます。

PacketiX VPN のフリーウェア版としてSoftEther VPNがありますが、以下の制限事項があり、今回使用するクライアント証明書認証が使用できません(RSA 証明書認証が該当します)。

  • DoS 攻撃防御機能
  • RADIUS / NT ドメインでのユーザー認証
  • RSA 証明書認証
  • 詳細なパケットログ機能
  • 接続元 IP アクセス制御リスト機能
  • syslog 転送機能

ネットワーク構成

ネットワーク構成は以下で、インターネットに接続性のあるサブネットのインスタンスにPacketiX VPN 4.0をWindows Server 2012 R2にインストールしVPNサーバとして動作させます。

各VPNクライアントからVPNサーバで作成したクライアント証明書で認証し、VPNサーバへVPN接続できるようにします。

PacketiX VPN Server構築手順

0. 前提条件

  • Windows Server 2012 R2のEC2インスタンスが作成されていること
  • 上記のインスタンスへ、接続元の拠点からRDP、TCP8888番(※1)のアクセスが可能であること(セキュリティグループの設定等をしていること)
  • 上記のインスタンスにPacketiX VPN 4.0がインストールされていること(※2)。デフォルトインストールした後の状態であること

※1 TCP8888番はリスナーポートで、VPN接続を確立するために使用するポートです。デフォルトでは、TCP443番、TCP992番、TCP1194番、TCP8888番が用意されていて、今回はデフォルトで用意されているTCP8888番を使用しています。

※2 PacketiX VPN 4.0のインストールは7.2 Windows へのインストールと初期設定に従い、インストールしてください。手順上はSoftEtherと記載されていますが、PacketiXでも同様の手順です。また、60 日間体験版 (無料)のパッケージのダウンロードはPacketiX VPN ダウンロードセンターからできます。PacketiX VPN Serverパッケージをダウンロードする際、ベータ版が多数表示されますが、運用で使用する場合は、RTM版をダウンロードする方がよいと思います。今回は、「PacketiX VPN Server and VPN Bridge (Ver 4.25, Build 9656, rtm)​」を使用しました。

1. PacketiX VPN サーバ管理マネージャによるサーバへの接続

PacketiX VPN サーバ管理マネージャを立ち上げ、「接続」を押下します。

初回ログインの際、パスワードの設定を求められますので、パスワードを入力して「OK」を押下します。

簡易セットアップ画面が立ち上がりますが、今回は一旦「閉じる」を押下します。

2. SecureNATの設定

AWS環境でPacketiXを用いてVPNサーバを構築する場合、SecureNAT機能を有効にする必要があります。

「PacketiX VPN サーバ管理マネージャ」画面が表示されますので、「仮想HUBの管理」ボタンを押下します。

「仮想NATおよび仮想DHCPサーバ機能」ボタンを押下します。

「仮想NATおよび仮想DHCP機能(SecureNAT)の設定」画面が表示されますので、「SecureNAT機能を有効にする」を押下します。

確認画面が表示されますので「OK」を押下します。

「仮想NATおよび仮想DHCP機能(SecureNAT)の設定」画面が表示されますので、「閉じる」を押下します。

3. ユーザの管理

「仮想HUBの管理」画面に戻りますので、「ユーザの管理」ボタンを押下します。

「ユーザの管理」画面が表示されますので、「新規作成」ボタンを押下します。

「ユーザの新規作成」画面が表示されますので、「ユーザー名」を入力、「認証方法」を固定証明書認証を選択し、「証明書作成ツール」ボタンを押下します。

「新しい証明書の作成」画面が表示されますので、「OK」を押下します。(「証明書の有効期間」と「暗号強度」は変更可能です)

「証明書と秘密鍵の保存」画面が表示されますので、「PKCS#12ファイル(.P12)として保存する」を選択して、「OK」を押下します。
※「秘密鍵の保護」でパスフレーズを設定することも可能です。パスフレーズを設定した場合は、VPNクライアントの設定時にパスフレーズの入力が必要になります。

証明書と秘密鍵を保存する画面になりますので、「ファイル名」と「保存場所」を指定して、「保存」を押下します。

「証明書と秘密鍵を正しく保存しました。」と表示されるので、「OK」を押下します。

「ユーザーの新規作成」画面に戻りますので、「OK」を押下します。

「ユーザーの管理」画面に戻りますので、作成したユーザーが表示されていることを確認して、「閉じる」を押下する。

すべてのウインドウを閉じ、作成した証明書(PKCS#12ファイル(.P12))をVPNサーバからダウンロードして、クライアントに渡します。

以上で、PacketiX VPN Serverの構築は完了です。

PacketiX VPN Clientの設定手順

PacketiX VPN Severでクライアント証明書認証を利用する場合は、各OS標準機能の設定ではVPN接続ができないため、クライアントでPacketiX VPN Clientが必要です。ここからは、PacketiX VPN Clientの設定手順をご紹介します。

1. PacketiX VPN Clientのダウンロード

PacketiX VPN ダウンロードセンターより、コンポーネントを選択で、「PacketiX VPN Client」を選択してパッケージをダウンロードします(※)。

※PacketiX VPN Clientパッケージをダウンロードする際、ベータ版が多数表示されますが、運用で使用する場合は、RTM版をダウンロードする方がよいと思います。今回は、プラットフォームはWindowsで、「PacketiX VPN Client (Ver 4.25, Build 9656, rtm」を使用しました。

2. PacketiX VPN Clientのインストール

ダウンロードしたexeファイルを実行すると、「PacketiX VPN セットアップ ウィザード」画面が表示されますので、「次へ」を押下します。

「インストールするソフトウェアの選択」画面が表示されますので、「PacketiX VPN Client」を選択し、「次へ」を押下します。

「使用許諾契約書」画面が表示されますので、内容を確認し、「使用許諾契約書に同意します」にチェックを入れて、「次へ」を押下します。

「重要事項説明書」画面が表示されますので、内容を確認し、「次へ」を押下します。

「インストール先ディレクトリ」画面が表示されますので、「次へ」を押下します。
※インストール先を変更したい場合は、「インストール先を変更」を選択します。

「インストール準備の完了」画面が表示されますので、「次へ」を押下します。

「セットアップの進行中」の画面が表示され、インストールが開始します。

「セットアップが完了しました」画面が表示されますので、「完了」を押下します。

3. Packetix VPN Clientの設定

「PacketiX VPN クライアント接続マネージャ」画面が表示されますので、「新しい接続設定の作成」をダブルクリックします。

「仮想LANカードを作成しますか?」と表示されますので、「はい」を押下します。

「新しい仮想LANカードの作成」画面が表示されますので、「仮想LANカードの名前」を入力して「OK」を押下します。
※仮想LANカードの名前は、VPN または VPN2 から VPN127 までが指定可能です。

「PacketiX VPN クライアント接続マネージャ」画面が表示されますので、「新しい接続設定の作成」をダブルクリックします。

「新しい接続設定のプロパティ」が表示されますので、必要項目を入力して「OK」を押下します。

必要項目
・「接続設定名」(サンプル画像では「VPN」)
・「接続先VPN Serverの指定」の「ホスト名」と「ポート番号」(サンプル画像ではポート番号は「8888」)
 ※ポート番号はPacketiX Server構築手順の0. 前提条件に記載したリスナーポートを指定します。
・「ユーザ認証」の認証の種類で「クライアント証明書認証」を選択し、「ユーザー名」を入力し、「クライアント証明書の追加」でPacketiX VPN Serverで作成した証明書(PKCS#12ファイル(.P12))を追加します。
 ※証明書作成時にパスフレーズを設定している場合は、パスフレーズの入力画面が表示されますので、パスフレーズを入力します。

4. VPN接続

「PacketiX VPN クライアント接続マネージャ」で接続したい接続設定名をダブルクリックします。(サンプル画像では「VPN」)

VPN接続が成功すると、状態が「オフライン」から「接続完了」に変わります。

VPN接続を切断するときは、VPN接続している接続名を右クリックして、「切断」を押下します。

以上で、PacketiX VPN Clientの設定は完了です。

まとめ

  • PacketiX VPN Serverではクライアント証明書認証が可能
  • クライアント証明書認証を使うためには、クライアントでPacketiX VPN Clientが必要
AWS運用自動化サービス「Cloud Automator」