No se pueden instalar gemas de rubí en Mac OS: error de conexión SSL

Mi entorno es Mac OS 10.10.5, ruby versión 2.2.4 (o 2.2.2 o 2.2.0) gem (después de la actualización) es 2.6.7, rvm versión 1.27.0.

Esto tiene varios duplicados incluso en los últimos días, pero esta es más información de la que puedo poner en un comentario.

Al instalar cualquier gema en cualquier versión de ruby obtengo lo siguiente:

$ gem install bundler
ERROR:  Could not find a valid gem 'bundler' (>= 0), here is why:
          Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://api.rubygems.org/specs.4.8.gz)

Hay mucha información sobre esto disponible, especialmente para problemas en Windows. Verhttp://guides.rubygems.org/ssl-certificate-update/ para la solución propuesta. Sigo esto pero sigo recibiendo el mismo error.

El problema parece estar en obtener el archivo GlobalSignRootCA.pem en el lugar apropiado que no está del todo claro. El enlace anterior explica cómo encontrar el directorio ssl_certs apropiado, de los cuales hay 2 en mi sistema, pero ninguno funciona.

Olvidé dónde aprendí lo siguiente:

$ ruby -ropenssl -e 'puts OpenSSL::X509::DEFAULT_CERT_DIR'
/etc/openssl/certs
$ ruby -ropenssl -e 'puts OpenSSL::X509::DEFAULT_CERT_FILE'
/etc/openssl/cert.pem

lo que podría haber dado una pista pero agregar el archivo .pem a este último o copiarlo al primero no tiene ningún efecto.

Cuando reinstalo openssl (homebrew), me ayuda:

A CA file has been bootstrapped using certificates from the system
keychain. To add additional certificates, place .pem files in
  /usr/local/etc/openssl/certs

and run
  /usr/local/opt/openssl/bin/c_rehash

Pero esto tampoco resuelve el problema.

De otra pregunta SO:

rvm osx-ssl-certs update all

no funciona Ni tampoco:

security find-certificate -a -p /Library/Keychains/System.keychain > "$cert_file"
security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain >> "$cert_file"

¿Alguien sabe cómo tener una idea de lo que Rubygems espera aquí? ¿Dónde quiere este archivo o es incluso el archivo que quiere? ¿Debo importar el archivo .pem al llavero OSX? ¿Cómo se hace eso?

¿O hay alguna manera de obtener el archivo de gema e instalarlo localmente? rubygems hace esto útil para rubygems en sí, pero no para las gemas individuales de lo que puedo decir.

- solución alternativa

Bien, la respuesta a la pregunta de dónde obtener la gema: ve ahttps://rubygems.org/gems/[package name] y seleccione una versión y vaya a descargar, actualmente bajo enlaces en el lado derecho. Descargue el archivo ygem install --local [downloaded gem file]. Además de todas las dependencias.

Para automatizar:

# start by adding insecure source for --explain - thanks to @tnum
gem source -a http://rubygems.org/
while read x 
do
wget https://rubygems.org/downloads/$x.gem
gem install --local $x.gem 
rm $x.gem
done < <(gem install --explain [package name] | grep "^  ")
# remove insecure source
gem source -r http://rubygems.org/

Parte de la falta de seguridad podría mitigarse con una mejor expresión de grep, pero aún es insegura. Tenga en cuenta quewget https:// funciona así que el problema de SSL definitivamente es con rubygems.

Respuestas a la pregunta(3)

Su respuesta a la pregunta