LoginSignup
3
1

SSL certificate problem: certificate is not yet valid

Last updated at Posted at 2023-05-18

非常にまれに起こる問題かなと思うけど、時間かかったので、メモする。

問題

WindowsのwslでのLinux環境で、会社のgitlabにアクセスしようとしたとき、下記のエラーが出た。

$ git pull origin main
fatal: unable to access 'http://gitlab.****/***.git/': SSL certificate problem: certificate is not yet valid

いつもの通りの操作だけど、今日突然エラーが出ている...

追記、
gitlabだけでなく、ほかのメンバーも似たようなエラーが出ており、下記の解決策で解決できた。

cause: Error: certificate is not yet valid
      at TLSSocket.onConnectSecure (node:_tls_wrap:1545:34)
      at TLSSocket.emit (node:events:513:28)
      at TLSSocket.emit (node:domain:489:12)
      at TLSSocket._finishInit (node:_tls_wrap:959:8)
      at TLSWrap.ssl.onhandshakedone (node:_tls_wrap:743:12) {
    code: 'CERT_NOT_YET_VALID'
  }

解決策

いろいろ検索してたけど、解決できてなくて、最後にchatGBTに聞いたところ、解決した。

解決方法がすごいシンプルで、ちょっとわけわからないけど、念のため残しておく。

システム時間を正確な時間にすること

  1. いまのシステム時間を確認する

    WSLでの時間が昨日の日付になっていることがわかった。

    $ date
    Wed May 17 12:10:09 JST 2023
    
  2. システム時間を正確な時間に修正する

    sudo timedatectl  set-time 2023-05-18
    sudo timedatectl  set-time 14:17
    
    $ date
    Thu May 18 14:17:01 JST 2023
    

そうしたら、エラーが消えた。

chatGBTの回答によると、システム時間がずれていて、証明書の有効期限外になったことが原因。

しかし、証明書の有効期限を確認したら、問題なさそう。
有効期限が May 8, 2023, at 18:01:02 GMT ~ August 6, 2023, at 18:01:01 GMT なので、
時間がずれていても、有効期限内になっているはず。

$ echo | openssl s_client -servername hostname -connect gitlab.lookingup.co.jp:443 2>/dev/null | openssl x509 -noout -dates
notBefore=May  8 18:01:02 2023 GMT
notAfter=Aug  6 18:01:01 2023 GMT

結論としては、システム時間を修正することで、問題解決したけど、原因はわかんない。謎。

追記

最近社内サービスサーバに接続する時も、似たようなcertificate is not yet validエラーが出ていて、
同じ解決方法でやってみたら、解決した。

今度は手動で時刻修正よりは、NTPサーバー設定をした。

参照:AlmaLinux8:NTPサーバー設定(Chrony)

その他の解決案

stackOverflow上では似たような質問が出ているけど、
Unable to access gitlab: SSL certificate has expired,

一番簡単な方法は、git のssl検証プロセスを禁止することだそう。

git config --global http.sslVerify "false"

すごい乱暴な解決方法だけど、すぐ効いた。

ただこれで一律に禁止するのはセキュリティ上で問題になるので、やめた方がよいだそう。

gitlabのhttps証明書を改めてダウンロードする方法も見かけたけど、うまくいってなくて、あきらめた。

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1