Получение ошибки в команде curl (curl: (35) ошибка чтения потенциально зашифрованного файла ключа X.509: Ошибка при разборе.) - PullRequest
1 голос
/ 27 января 2020

Я использую приведенную ниже команду

curl   --insecure  --cert 'cert.p12:password'  -X GET   https://serverUrl   -H 'Content-Type: application/json'


curl   --insecure --cert-type P12 --cert 'cert.p12:password'  -X GET   https://serverUrl   -H 'Content-Type: application/json'

она не работает в Ubuntu 16.04.4 LTS \ n \ l (curl 7.47.0 (x86_64-p c - linux -gnu)) (AWS lightsail) и приведенная ниже ошибка

curl: (35) ошибка чтения потенциально зашифрованного файла ключа X.509: Ошибка при синтаксическом анализе.

, но работает в Ubuntu 18.04.3 LTS \ n \ l (ЛОКАЛЬНАЯ СИСТЕМА) (curl 7.58.0 (x86_64-p c - linux -gnu))

1 Ответ

1 голос
/ 27 января 2020

Как и в Ubuntu 16.04.4, файл LTS P12 не поддерживает, поэтому мы можем использовать следующую команду

PKCS # 1 Закрытый ключ

openssl pkcs12 -in cert.p12 -nocerts -out privateKey.pem 

Сертификаты:

openssl pkcs12 -in cert.p12 -clcerts -nokeys -out publicCert.pem

Мы можем использовать следующую команду для вызова API

curl -k --cert ./publicCert.pem --cert-type PEM --key ./privateKey.pem --key-type PEM --pass password  -X GET   https://serverUrl   -H 'Content-Type: application/json'
...