MacでExploratory Publicのプロジェクトを閉じるときのエラー 'SSL certificate problem: certificate has expired' の解決方法

MacでExploratory Publicのプロジェクトを閉じるときに、 'SSL certificate problem: certificate has expired' というエラーが出る原因と解決方法を説明します。

エラーの原因

2021年9月30日に、exploratory.ioが依存するルートSSL証明書の一つ (DST Root CA X3) の有効期限が切れました。このルートSSL証明書の期限切れの詳細についてはこちらを参照してください。

この証明書期限切れにより、Exploratory Publicがプロジェクトをexploratory.ioに送信するのに利用しているgitコマンドが、Mojave以前のmacOSにおいてexploratory.ioへのSSL接続に失敗するようになったため今回のエラーが起きています。

解決方法

ご使用のMacの、信頼するルートSSL証明書のリストから、今回期限が切れた証明書「DST Root CA X3」を削除すると、このエラーが起きなくなります。

(この作業を行う前に、ファイル /etc/ssl/cert.pemのバックアップコピーを取っておくことをおすすめします。)

ファイル /etc/ssl/cert.pem をエディタで開きます。 削除するべき一連の行は、以下の内容で始まります。

Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number:
            44:af:b0:80:d6:a3:27:ba:89:30:39:86:2e:f8:40:6b
    Signature Algorithm: sha1WithRSAEncryption
        Issuer: O=Digital Signature Trust Co., CN=DST Root CA X3
        Validity
            Not Before: Sep 30 21:12:19 2000 GMT
            Not After : Sep 30 14:01:15 2021 GMT
...

削除するべき一連の行の終わりは以下の内容です。

...
JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo
Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ
-----END CERTIFICATE-----

この範囲の行を削除した上でファイルを上書き保存します。 これで、Exploratory Publicでのプロジェクトのクローズがエラーなくできるようになるはずです。

または、ご使用のmacOSを、Catalina以降にアップグレードしてもこの問題は解決します。