こんにちは、SCSKでAWSの内製化支援『テクニカルエスコートサービス』を担当している貝塚です。
AWS Client VPNの環境を構築する機会がありました。いろいろ試していてそんなに難しいところはないなと思ったのですが、ちょっと注意した方がよいなと感じたことが2点ほどありましたので、それを書き残しておきます。
クライアント証明書失効リスト(CRL)の有効期限が切れるとAWS Client VPNに接続できなくなる
クライアント証明書を使用した相互認証を採用している場合に該当します。
証明書失効リスト(CRL)には、クライアント証明書等と同様に有効期限が設定されています。AWS Client VPNエンドポイントにインポートしたCRLの有効期限が切れると、クライアントVPNに一切接続できなくなります。
恥ずかしながら勉強不足でCRLに有効期限があることを意識できておらず、運用に入ってから冷や汗をかきました。実はAWSのドキュメントにも書いてありましたが、見出しと内容が一致していないのでやや見落としがちです……と言い訳。
CloudWatchのメトリクスCrlDaysToExpiryでCRL有効期限までの日数を取得できるので、CloudWatchアラームで監視するようにしましょう。

ユーザー接続ごとの帯域制限は10Mbps……ではない
次は、ちゃんとトラブルシューティングのセクションも目を通さないとだめだな……と思って心を入れ替えてドキュメントを読んだが故のどっきりです。
「ユーザー接続ごとに 10 Mbps の帯域幅制限があります。」と書かれており、やばっ、顧客の要件にあわないものを提案してしまったか!?と焦りました。
こちらは、ベストプラクティスの項に別の記述がありました。
「ユーザー接続ごとに 10 Mbps の最小帯域幅がサポートされています。」
どちらが正しいのかiperf3を使って検証してみたところ200Mbpsほど出ており、これは私の使用していたインターネット環境の限界速度でしたので、1ユーザ接続だけであればこれ以上は出ると考えてよさそうです。
まとめ
以上、AWS Client VPNに関する小ネタ2点でした。
ドキュメントをちゃんと読むの、重要ですね。見落としなく読むのはなかなか大変ですが、ベストプラクティスやFAQについては一通り目を通すことを心掛けたいです。