我已从 ASA 5510 导出现有证书+密钥:
asa5510(config)# crypto ca export MYTRUSTSTORE pkcs12 MYPASSWORD
将输出保存在文件(vpn-cisco.pkcs12)中,现在我试图将证书和密钥提取到单独的文件中,如下所示:
openssl pkcs12 -in cisco-vpn.pkcs12 -nocerts -out privateKey.pem
我收到的错误:
139708630054816:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1319:
139708630054816:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:381:Type=PKCS12
如果我运行openssl pkcs12 -info ...
或任何其他命令,同样的错误。
我尝试再次导出文件并使用 ASDM 而不是 CLI 进行比较,但文件完全相同。
谷歌搜索错误仅表示文件的编码可能以某种方式关闭,但没有具体细节。
编辑(7 年后):我再次遇到了同样的问题,不得不使用相同的证书维护 ASA 和 Zimbra 设置,并且遇到了我自己的问题作为工作答案。
额外感谢所有额外的输入,比如需要清理 p12 文件中的空行等。
编辑 2: 来自 ASA 的 PKCS12 导出加密私钥,ZCS 对此不满意,因此需要删除密码,所以首先提取密钥:
openssl pkcs12 -in cisco-vpn.pkcs12.bin -nocerts -out privateKey.pem
然后删除密码:
openssl rsa -in privateKey.pem -out key_no_pass.txt