Я пытаюсь найти ответ на несколько простых вопросов.
- Какие сертификаты использует Ruby при работе с SSL?(Я предполагаю, что это относится и к
gem
) - Как добавить корневой сертификат в доверенный набор сертификатов CA.
- Есть ли лучшие практики для этого?Где это задокументировано?
Справочная информация
Я использую mac (в настоящее время Sierra) и rbenv / ruby-build для установки рубинов.Мы создали внутренний репозиторий rubygems, используя Sonatype Nexus.Сертификат сервера подписан внутренним корневым сертификатом компании, копия которого у меня есть.
Как только я попытался добавить наш репозиторий в качестве источника
gem sources --add https://our.repository.com/bla/bla
это говорит о том, что корень сертификата не является доверенным.Это та же проблема, с которой я сталкиваюсь при попытке извлечь из репозитория (в качестве прокси) и будет проблемой для любых других команд, использующих наши гемы.Мне нужно хорошее решение, чтобы посоветовать моей команде и другим.
Очевидно, я смогу использовать его, если я установлю переменную окружения SSL_CERT_FILE=/path/to/root_cert.pem
.Но я бы предпочел разместить файл сертификата в надежном месте и позволить ему работать прозрачно, как в случае хранилищ доверия Java.