Как использовать сертификат клиента TLS с реестром RubyGems? - PullRequest
0 голосов
/ 23 апреля 2019

У меня есть внутренний реестр RubyGems, из которого я хочу загрузить несколько Gems. Реестр защищен и требует действительный сертификат клиента TLS.

Я могу получить доступ к реестру в Chrome (импортировал пакет сертификатов в Chrome), но я не могу сделать это с помощью Bundler.

Документация говорит, что ssl_client_cert должно быть:

Путь к указанному файлу, содержащему сертификат клиента X.509 и ключ в формате PEM.

При использовании предоставленного сертификата я получаю следующую ошибку:

either PUB key nor PRIV key: nested asn1 error

Как мне собрать сертификат и ключ?

1 Ответ

0 голосов
/ 23 апреля 2019

Я наконец-то нашел, как собрать файлы:

# Concatenate the key and the certificate
openssl rsa -in key.pem > ruby-bundler-cert.pem 
openssl x509 -in cert.pem >> ruby-bundler-cert.pem
# Tell bundler to use the file 
bundle config ssl_client_cert ~/certs/ruby-bundler-cert.pem

Вы думаете, этого было достаточно? Нет! Вам также нужно указать это значение где-то еще: в вашем файле ~/.gemrc.

:ssl_client_cert: "/full/path/to/the/certs/ruby-bundler-cert.pem"

Надеюсь, это поможет другим людям.

...