ошибка 58 cURL: SSL: не удается загрузить сертификат & quot; … & quot; и его закрытый ключ: OSStatus -25299 на Mac

Код работает на Ubuntu vagrant box, но на локальных MacO он не загружает сертификаты, говорящие

cURL error 58: SSL: Can't load the certificate "..." and its private key: OSStatus -25299

Я исследовал, что у Mac есть точка поддержки родного API OS X вместо OpenSSL.

И мне нужно конвертировать pem + cert в PKCS12 как это.

openssl pkcs12 -export -in ./client.crt -inkey ./client.pem -out client.p12

Но это не работает для меня, потому что мой сервер PHP находится на Ubuntu, и я не хочу ломать то, что работает. Моя задача — заставить его работать на Mac.

Я бы предпочел установить curl с поддержкой openssl. Я попробовал это:

$ brew uninstall curl
$ brew install curl --with-openssl
$ brew link curl --force
$ curl --version

Но это не решило проблему.

Пожалуйста, скажите мне, что я сделал не так.

Спасибо.

1

Решение

установка curl с помощью brew и с поддержкой openssl, как указано в вопросе, является правильным подходом. однако вам нужно явно вызвать его из директории установки /usr/local/opt/curl/bin/curl -v -k --key.. как brew не связывает его с / usr / local, как указано при установке

This formula is keg-only, which means it was not symlinked into /usr/local,
because macOS already provides this software and installing another version in
parallel can cause all kinds of trouble.

If you need to have this software first in your PATH run:
echo 'export PATH="/usr/local/opt/curl/bin:$PATH"' >> ~/.zshrc

For compilers to find this software you may need to set:
LDFLAGS:  -L/usr/local/opt/curl/lib
CPPFLAGS: -I/usr/local/opt/curl/include
For pkg-config to find this software you may need to set:
PKG_CONFIG_PATH: /usr/local/opt/curl/lib/pkgconfig
1

Другие решения

Других решений пока нет …