AWS Client VPN エンドポイントに関連付けられている CRL (証明書失効リスト) の有効期限が近づいているという通知を受け取りたいです。
簡単な説明
CRL は、認証機関 (CA) によって取り消された証明書のリストです。証明書を誤って共有した場合、その証明書が失効する可能性があります。また、誰かが会社を辞めたときに取り消される場合もあります。
CRL は一定期間のみ有効です。認証フェーズ中、クライアント VPN エンドポイントはクライアント証明書をインポートした CRL と照合します。CRL の有効期限が切れていると、クライアント VPN エンドポイントに接続できません。
システムは次のエラーを記録します。
TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
TLS Error: TLS handshake failed
解決策
通常、クライアント VPN サービスは CRL の有効期限が近づいていることを通知しません。ただし、この情報は、クライアント VPN 名前空間にある CRLDaysToExpiry という Amazon CloudWatch メトリクスから取得できます。このメトリクスは、クライアント VPN エンドポイントでCRL の有効期限が切れるまでの残り日数を示します。
Amazon CloudWatch の CRLDaysToExpiry メトリクスを使用する
時間の経過に伴い、CRLDaysToExpiry メトリクスはゼロに達するまで減少を続けます。達した時点で、CRL の有効期限は失効するよう設定されます。有効期限が切れると、CRL はクライアント VPN エンドポイントで認証されなくなります。
メトリクスにカスタムアラームを設定する
このメトリクスにはアラームを設定できます。たとえば、CRL の有効期限が 10 日後に失効するように設定するとします。アラームは、CRL を更新してクライアント VPN エンドポイントにアップロードする時期になると管理者に通知します。Amazon Simple Notification Service (Amazon SNS) トピックの詳細については、「Amazon SNS トピックを作成する」を参照してください。
1 つのメトリクスに対して複数のアラームを作成できます。たとえば、「CRL の有効期限まで 5 日」と「CRL の有効期限まで 1 日」という 2 つのアラームを追加設定できます。管理者が 10 日間の警告通知を見逃した場合でも、5 日と 1 日のアラームで通知されます。管理者は失効した証明書のリストを更新し、新しい CRL ファイル (PEM 形式) を生成して Client VPN エンドポイントにアップロードします。
新しい CRL を生成する
注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI エラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。
Easy RSA 認証期間の場合:
-
次のコマンドを使用して新しい CRL を生成します。
./easyrsa gen-crl
-
次に、CRL をクライアント VPN エンドポイントにインポートします。
-
または、次の AWS CLI コマンドを使用して、クライアント VPN エンドポイントの CRL を更新します。
aws ec2 import-client-vpn-client-certificate-revocation-list --certificate-revocation-list file://crl.pem --client-vpn-endpoint-id your_endpoint_id --region your_region
注: your_endpoint_id は実際のクライアント VPN エンドポイント ID に、your_region はクライアント VPN のあるリージョンに置き換えます。
関連情報
クライアント証明書失効リスト
静的しきい値に基づいて CloudWatch アラームを作成する
Amazon CloudWatch とは