Мне нужно добавить файл сертификата .pem в мой набор сертификатов CA по умолчанию, но я не знаю, где хранится набор сертификатов CA по умолчанию.
Мне нужно добавить мой новый файл .pem в этот пакет по умолчанию. Я предпочел бы сделать это, чем указать свое собственное местоположение с помощью --capath
cURL четко знает, где искать, но я не вижу никаких команд cURL, которые показывают местоположение. Есть ли команда, которая покажет это местоположение? Как я могу найти это?
Согласно cURL:
добавьте сертификат CA для вашего сервера в существующий пакет сертификатов CA по умолчанию. Путь по умолчанию к используемому комплекту CA можно изменить, запустив configure с параметром --with-ca-bundle, указывающим выбранный вами путь.
Благодарность
ssl-certificate
curl
облегающий
источник
источник
Ответы:
Запуск
curl
сstrace
может дать вам подсказку.Много выходных, но ближе к концу я вижу:
где хранятся мои сертификаты.
источник
strace
!strace
не доступно на macOS, по-видимому. «Эквивалент»dtruss
сказал мне «dtrace: не удалось инициализировать dtrace: DTrace требует дополнительных привилегий». Так что я использовалsudo
с этим. На что он ответил: «dtrace: не удалось выполнить curl: dtrace не может управлять исполняемыми файлами, подписанными с ограниченными правами». Не очень полезно.Должна быть программа 'curl-config' в curl 'bin /', т.е. где находится двоичный файл 'curl'.
./curl-config --ca
дает путь установки пакета.
Я только что сделал whatis curl-config: «Получить информацию об установке libcurl», поэтому я думаю, что она будет доступна только в том случае, если была установлена libcurl, хотя я предполагаю, что она стандартная.
источник
curl-config
Программа не доступна во всех версиях программы или установки. Например, некоторые администраторы могут не понимать цели программы и не устанавливать ее, потому что они думают, что это всего лишь инструмент конфигурации сборки. Кроме того, если пользователь, которому нужна программа, не является администратором системы, он не может установить ее. У меня есть доступ к двум системам, одна не имеет этой программы, а другая не выводит дляcurl-config --ca
.strace
для поиска информации о конфигурации не нужно.Я нашел простой способ: использовать
--cacert
с неправильным именем файла, вывод будет отображать путь.Пример:
источник
Linux (Ubuntu, Debian)
Скопируйте ваш CA в каталог / usr / local / share / ca-Certificates /
Обновите хранилище CA
Удалите свой CA и обновите хранилище CA:
Linux (CentOs 6)
Установите пакет ca-Certificates:
Включите функцию динамического конфигурирования CA: update-ca-trust force-enable Добавьте его в качестве нового файла для
/etc/pki/ca-trust/source/anchors/
:Linux (CentOs 5)
Добавить доверенный сертификат в файл
/etc/pki/tls/certs/ca-bundle.crt
https://manuals.gfi.com/en/kerio/connect/content/server-configuration/ssl-certificates/adding-trusted-root-certificates-to-the-server-1605.html очень хорошая ссылка, которая объясняет, как добавить его в несколько популярных ОС.
источник
Вы можете скачать пакет CA Root Certificates от haxx.se, которые являются создателями curl. затем просто добавьте свой сертификат в их .pem и обратитесь к нему при использовании curl с параметром --cacert
источник
-v
с https в URL.источник
-k
опцию, чтобы увидеть, есть ли разница. Там не было никакой разницы.Расположение пакета CA по умолчанию зависит от ОС. На RHEL5 он находится в /etc/pki/tls/certs/ca-bundle.pem. В других версиях ОС Linux или не Linux они могут находиться в другом месте.
источник