ENGINEER BLOG ENGINEER BLOG
  • 公開日
  • 最終更新日

構築済み AWS Client VPN Endpoint への接続クライアントの追加

この記事を共有する

目次

こんにちは、菅野です。
AWS Client VPN (以下 Client VPN) を使用してお客様環境にセキュアな接続ができるようになったはいいものの、構築した AWS Client VPN Endpoint (以下 Endpoint) に対して、後からユーザーを追加したくなった場合の対応方法について、備忘録も兼ねてご紹介します。

はじめに

今回は、Client VPN を使用して Endpoint を構築したという前提にて手順をご紹介します。また認証方法は相互認証を想定しております。
Client VPN を使用した Endpoint の構築手順につきましては以下をご参照ください。
AWS Client VPN 管理者ガイド


結論

既存の Endpoint に対して Client VPN ユーザーを追加する場合は、以下 3つのステップが必要になります。

  • CA証明書と秘密鍵の置き換え
  • 追加する Client VPN ユーザー用の Client 証明書を発行する
  • Client VPN の接続設定をする

それぞれ詳しく手順をご紹介します。


CA証明書と秘密鍵の置き換え

■ 1. EasyRSA リリースページ(※ 1)から使用する Windows のバージョン用の ZIP ファイルをダウンロードして解凍します。
※ 1 EasyRSA リリースページ

■ 2. コマンドプロンプトを開き、EasyRSA-3.x フォルダが抽出された場所に移動します。

C:\Users\test.user>cd "C:\work\EasyRSA-3.2.2"

■ 3. 以下のコマンドを実行し、Easy-RSA シェルを開始します。

C:\work\EasyRSA-3.2.2>.\EasyRSA-Start.bat

■ 4. 以下のコマンドを実行し、PKI 環境を初期化します。

# ./easyrsa init-pki

■ 5. 以下のコマンドを実行し、新しい認証局(CA)を作成します。

# ./easyrsa build-ca nopass

「Common Name」の入力を求められるので、ホスト名やサーバー名など認証局を識別できる文字列を入力し、「Enter」で続行します。「Common Name」の項目を入力せずに「Enter」で続行した場合、デフォルトのCA証明書(ca.crt)と秘密鍵(ca.key)が作成されます。

Common Name (eg: your user, host, or server name) [Easy-RSA CA]:

■ 6. 接続先の Endpoint 構築時に作成した CA 証明書と秘密鍵を EasyRSA-3.x フォルダの以下パスにコピーして、新しく作成したCA証明書と秘密鍵を現在使用しているものに置き換え(上書き)ます。

  • CA証明書格納パス:<EasyRSA-3.x フォルダ>\pki\
  • CA秘密鍵格納パス:<EasyRSA-3.x フォルダ>\pki\private\

新規クライアント証明書の発行

■ 1. Easy-RSA シェルを開き、新しく追加する Client VPN ユーザー(client-A.test)の Client 証明書を発行します。

# ./easyrsa build-client-full client-A.test nopass

■ 2. 以下コマンドを実行し、ユーザー(client-A.test)の Client 証明書の値(**BEGIN CERTIFICATE ~ END CERTIFICATE** まで)と Client 秘密鍵の値(**BEGIN PRIVATE KEY ~ END PRIVATE KEY** まで)をそれぞれ控えておきます。

# cat <EasyRSA-3.x フォルダ>\pki\client-A.test.crt    ・・・Client 証明書
# cat <EasyRSA-3.x フォルダ>\pki\client-A.test.crt ・・・Client 秘密鍵

■ 3. Easy-RSA シェルを「exit」で終了し、コマンドプロンプトを閉じます。

Client VPN の接続設定

■ 1. AWSマネジメントコンソールを起動し、Endpint を構築したリージョンを選択した状態で画面上部の検索窓にて「VPN」と入力し「Client VPN エンドポイント」をクリックします。

vpn_01.png

■ 2. クライアント VPN エンドポイント画面にて接続先の VPN エンドポイントを選択し、「クライアント設定をダウンロード」をクリックします。

vpn_02.png

■ 3. 「クライアント設定をダウンロード」画面が表示されるので、「クライアント設定をダウンロード」をクリックし、ローカル端末に設定ファイル「downloaded-client-config.ovpn」がダウンロードされることを確認します。

■ 4. ダウンロードした「downloaded-client-config.ovpn」をメモ帳などで開き、「/ca」の下に以下4行を追記します。

<cert>
</cert>
<key>
</key>

■ 5. 「4. 新規クライアント証明書の発行」の■ 2 にて控えていた Client 証明書と Client 秘密鍵の値を以下画像のように「<cert> ~ </cert> (Client 証明書の値)」の間、「<key> ~ </key> (Client 秘密鍵の値)」の間に貼り付けて保存します。

vpn<em>04.jpg
vpn</em>05.jpg

■ 6. ローカル端末上の AWS Client VPN のクライアントアプリケーションを起動し、「ファイル」-「プロファイルを管理」をクリックします。

■ 7. 「プロファイルを管理」画面から「プロファイルを追加」をクリックし、「プロファイルを追加」画面にて、任意の 接続プロファイル表示名を設定し、「VPN 設定ファイル」欄に 編集した「downloaded-client-config.ovpn」を指定します。

vpn_06.png

■ 8. 「プロファイルを管理」画面の「保存されたプロファイル」一覧に追加したプロファイルが表示されていることを確認し、「完了」をクリックします。

■ 9. 「AWS VPN Client」トップページの「接続解除」欄に追加したプロファイルが表示されていることを確認し、 追加したプロファイルの「接続」をクリックし、「接続済み」になることを確認します。

■ 10. 問題無く VPN 接続ができたら、お客様環境にて AWS Client からの接続が許可されているプロトコル( ICMP 、SSH等 )通信を使用してサーバー等のお客様環境リソースに接続可能か確かめます。

まとめ

AWS Client VPN を利用している環境で Endpoint を相互認証にて設定した場合、構築時に作成したCA証明書とその秘密鍵が存在すれば、Client 側の再設定だけで Client VPN ユーザーを新規で追加することができました。
こちらの方法では、接続する Endpoint 側に影響を与えることなく設定することが可能です。
※今回の記事を作成するにあたり、以下の記事を参考にさせていただきました。

複数のユーザーを設定して、同じ Client VPN エンドポイントを使用するにはどうすればよいですか?

この記事は私が書きました

菅野 索

記事一覧

趣味:ジョギング、散歩
最近体重の増加が気になるので、ダイエット頑張ってます。

菅野 索

この記事を共有する

クラウドのご相談

CONTACT

クラウド導入や運用でお悩みの方は、お気軽にご相談ください。
専門家がサポートします。

サービス資料ダウンロード

DOWNLOAD

ビジネスをクラウドで加速させる準備はできていますか?
今すぐサービス資料をダウンロードして、詳細をご確認ください。