如何在与 Client VPN 端点关联的证书即将到期时收到通知?

1 分钟阅读
0

我希望在 AWS Client VPN 端点上使用的服务器证书即将到期时收到通知,以便当我尝试连接到端点时不会出现错误。

简短描述

要创建 Client VPN 端点,无论您使用哪种身份验证类型,都要在 AWS Certificate Manager (ACM) 中预置服务器证书。端点使用您的 VPC 和基于 OpenVPN 的客户端之间的服务器证书建立安全的传输层安全性协议 (TLS)。

此服务器证书仅在有限的时间内有效。在身份验证阶段,Client VPN 端点会根据您导入的客户端证书吊销列表检查服务器证书。如果客户端证书吊销列表已到期,则无法连接到 Client VPN 端点。

您的系统记录了以下错误:

TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
TLS Error: TLS handshake failed

解决方法

通常,Client VPN 服务不会通知您服务器证书即将到期。但是,您可以使用名为 DaysToExpiry 的 Amazon CloudWatch 指标获取该信息,该指标可在 Certificate Manager 命名空间下找到。该指标为您提供了 Client VPN 端点的服务器证书到期前的剩余天数。

使用 Amazon CloudWatch DaysToExpiry 指标

证书的 CloudWatch 指标 DaysToExpiry 看起来像一个图表。当证书有效期设置为到期时,该指标会在一段时间内不断减少,直到达到零。此时,与 Client VPN 端点关联的证书不再有效。客户端与 Client VPN 端点之间的 TLS 握手失败。因此,客户端无法在 Client VPN 端点上进行身份验证。

为指标设置自定义警报

您可以为此指标设置警报。当计数器达到设定值(例如“10”,即距离证书到期还剩 10 天)时,它会生成警报。警报让管理员知道现在需要更新服务器证书并重新导入。有关 Amazon Simple Notification Service (Amazon SNS) 主题的详细信息,请参阅创建 Amazon SNS 主题

您可以为单个指标创建多个警报。例如,您可以选择另外设置两个警报:距离证书到期还有五天,距离证书到期还有一天。如果管理员错过了前十天的警告通知,他们仍会收到前五天和前一天警报的通知。管理员更新已吊销证书的列表,并生成 PEM 格式的新证书文件。然后,管理员将其重新导入到 Client VPN 端点。

生成新的服务器证书

**注意:**如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI

对于 Easy RSA 证书颁发机构:

  1. 使用以下命令生成新的服务器证书:
    ./easyrsa build-server-full server nopass
    **注意:**将名称服务器替换为所需的证书名称。
  2. 然后,将服务器证书重新导入到 Client VPN 端点。
  3. 或者,使用以下 AWS CLI 命令更新 Client VPN 端点上的 CRL。然后,在 ACM 上重新导入服务器证书。
    **注意:**您必须拥有即将到期的服务器证书的 Amazon 资源名称 (ARN)。
    aws acm import-certificate --certificate fileb://Certificate.pem \
    --certificate-chain file://CertificateChain.pem \
    --private-key file://PrivateKey.pem \
    --certificate-arn arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-12345678901

相关信息

重新导入证书

AWS 官方
AWS 官方已更新 1 年前