为什么 Client VPN 没有撤消我指定了我的 CRL 的用户?

1 分钟阅读
0

我吊销了一个证书,生成了证书吊销列表(CRL),然后将 CRL 导入到 AWS Client VPN 中。我完成了这些步骤以撤消特定用户的访问权限。但是,Client VPN 并未撤消指定用户。

简短描述

要撤消访问权限,您必须使用与用于生成用户证书的相同证书颁发机构(CA)。您还必须运行以下命令来吊销证书并生成 CRL:

$ ./easyrsa revoke revoked.learnaws.local

$ ./easyrsa gen-crl

满足这些条件后,请完成以下步骤进行故障排除。

解决方法

**注意:**如果在运行 AWS 命令行界面(AWS CLI)命令时收到错误,请确保您使用的是最新版本的 AWS CLI

1.使用 AWS CLI 导出 CRL。然后,将 CRL 保存为 crl.pem 文件。删除命令输出末尾的 STATUS

$ aws ec2 export-client-vpn-client-certificate-revocation-list --client-vpn-endpoint-id cvpn-endpoint-07ff8ba3d5d3b5188 --output text --region eu-central-1

2.使用 .crt 和 .key 文件为 CA 创建一个.pem 文件:

$ openssl pkcs12 -export -in ca.crt -inkey ca.key -out ca.p12
$ openssl pkcs12 -in ca.p12 -nodes -out ca.pem

3.为要吊销的用户证书创建一个 .pem 文件:

$ openssl pkcs12 -export -in revoked.learnaws.local.crt -inkey revoked.learnaws.local.key -out revoked.learnaws.local.p12
$ openssl pkcs12 -in revoked.learnaws.local.p12 -nodes -out revoked.learnaws.local.pem

4.使用 cat 命令链接 cacrl .pem 文件:

$ cat ca.pem crl.pem > crl_ca.pem

5.验证吊销。

预期输出为 0 深度查找时发生错误 23:证书已吊销。如果输出为 OK,则 Client VPN 未吊销用户证书。

输出示例:

$ openssl verify -crl_check -CAfile crl_ca.pem revoked.learnaws.local.pem
revoked.learnaws.local.pem: CN = revoked.learnaws.local
error 23 at 0 depth lookup:certificate revoked

-或-

检查输出中是否有用户证书的序列号。如果序列号在 CRL 中,则 Client VPN 已吊销证书。

要查找用户证书序列号,请运行以下命令:

$ openssl x509 -in revoked.learnaws.local.crt -noout -serial

要检查序列号是否在 CRL 中,请运行以下命令:

client cert: CN=abc.corp.xyz.com, "CertificateArn": "arn:aws:acm:us-east-1:xxxx:certificate/xxxxx-f692-4026-b26f-cfb361cf1b66", "Serial": "b5:99:e8:b9:5d:39:85:5f:8e:a9:b9:2c:10:9f:8b:c3"

$ cd /home/ec2-user/easy-rsa/easyrsa3/pki$ openssl crl -in crl.pem -text -noout | grep B599E8B95D39855F8EA9B92C109F8BC3
AWS 官方
AWS 官方已更新 7 个月前