Techioz Blog

「バンドルインストール」CA 証明書

概要

Github Pages Web サイトを作成しようとしていますが、次のことが必要です。

bundle install

これを試してみたところ、次のようなエラーメッセージが表示されました。

Fetching source index from https://rubygems.org/
There is a chance you are experiencing a man-in-the-middle attack, but most likely your system doesn't have the CA certificates needed for verification. For information about OpenSSL certificates, see
https://railsapps.github.com/openssl-certificate-verify-failed.html. To connect without using SSL, edit your Gemfile sources and change 'https' to 'http'

この問題を解決するために「http」を使用することには慎重です。 SSL 証明書ファイルをダウンロードしてこのガイドに従ってみましたが、残念ながら問題を解決できません: https://bundler.io/guides/rubygems_tls_ssl_troubleshooting_guide.html

これらは私が実行した 2 つのコマンドです。

sudo cp ~/GlobalSignRootCA_R3.pem /usr/lib/ruby/vendor_ruby/rubygems/ssl_certs/rubygems.org
sudo cp ~/GlobalSignRootCA_R3.pem /usr/lib/ruby/3.0.0/rubygems/ssl_certs

他にできることはありますか?他の StackExchange の投稿を見てみたところ、これは古いものの解決された問題のようで、途方に暮れています。 Linuxマシンを使用しています。ありがとう!

解決策

どこでそのエラーが発生するのか、正確にどのリクエストが失敗するのかについて詳しく教えていただけますか。ログを見ると、github にあるもののようです。このエラーは、少し前の証明書のローテーションが原因である可能性があります。

RSA SSH ホストキーを更新しました

彼らが説明しているように、古いものを削除します。

ssh-keygen -R github.com

…そして現在のホストを ~/.ssh/known_hosts に追加します。以下を実行して:

ssh-keygen -R github.com
curl -L https://api.github.com/meta | jq -r '.ssh_keys | .[]' | sed -e 's/^/github.com /' >> ~/.ssh/known_hosts

フィンガープリントは SHA256:uNiVztksCsDhcc0u9e8BujQXVUpKZIDTMczCvj3tD2s です。