Я экспортировал существующий certificate+key из 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, но файл является точно тем же.
Поиск с помощью Google для ошибки только говорит, что кодирование файла могло бы быть так или иначе выключено, но никакие определенные детали.
Nke a bụ ihe ijuanya. Enwere m otu nsogbu ahụ wee chọpụta na ajụjụ a enweghị azịza. Emechara m nyocha ọzọ wee hụ yaleman.org nke kwuru na ha chọtara azịza ya ma jikọta ya na ajụjụ a . Ma enweghị azịza ebe a. Retroactively fixing that, full props to yaleman.
Ogologo na mkpụmkpụ: Ikwesiri igbanwe pfx ahụ site na Base64 ka ọ bụrụ usoro ọnụọgụ abụọ nke openssl.
$ openssl enc -base64 -d -in certfile.pfx -out converted.pfx
Mgbe ahụ ị nwere ike tọghata ya na PEM wee nweta igodo ma ọ bụ cert ahụ iche.
$ openssl pkcs12 -in converted.pfx -out bundle.pem -clcerts -nodes
Если у вас возникли проблемы с декодированием, проверьте ваш файл и удалите из него пустые строки. Наш ASA сохранял их с ведущими пустыми строками и openssl это не понравилось.
Столкнулся с той же проблемой, оказалось, что мой сертификат был закодирован в двойном коде base64...
Если вы делаете это в Windows, вы можете попробовать использовать исполняемый файл openSSL, расположенный по адресу "C :\Program Files\Git\usr\bin\openssl.exe"
. Это сработало для меня после того, как я изначально получил эту ошибку при использовании openssl из сеанса Git bash. При использовании openSSL .exe
мне было предложено ввести пароль .pfx, чего раньше не было. (В какой-то момент я также восстановил исходный .pfx на случай, если возникнут проблемы с повреждением).