Atom git Fehler
Problem mit git im Atom Editor durch abgelaufenes DST Root CA X3 Zertifikat
Letzte Tage wollte ich mal wieder den Atom Editor auf Ubuntu nutzen um an einer meiner Webseiten zu arbeiten, aber bereits das “git fetch” des eingebauten git clients schlug fehlt. Das SSL Zertifikat meines gitbucket Servers konnte nicht verifiziert werden. Das “git fetch” auf der Kommandozeile funktionierte problemlos.
Die Fehlerursache
Da nur der integrierte git client im Atom Editor Probleme hatte, aber nicht der normale git client, war klar es war ein Problem des Atom Editors, also schaute ich mir die Fehlermeldung nochmal genau an:
fatal: konnte nicht auf '[url des git repository]' zugreifen:
server certificate verification failed.
CAfile: /usr/share/atom/resources/app.asar.unpacked/node_modules/dugite/git/ssl/cacert.pem
CRLfile: none
Hier haben wir also die Fehlermeldung über die fehlgeschlagene Verifizierung des SSL Zertifikates des Servers, und eben welche Zertifikatsdatei dazu verwendet wurden. Und man sieht dass der Atom Editor eine eigene Datei für die Root Zertifikate und nicht die aus dem System verwendet. Das erklärte dann natürlich warum der normale git client funktioniert.
abgelaufenes DST Root CA X3 Zertifikat
Alle Zertifikate bestehen aus einem private key und einem public key, mit dem private key kann man neue Zertifikate signieren und dann das neue Zertifikat mit dem veröffentlichtem public key verifizieren. So gibt es Root Zertifikate auf denen dann ganze Zertifikatsketten basieren, also ein Anbieter lässt sich von einem Root Zertifikat Inhaber ein Firmenzertifikat erstellen und nutzt dies um SSL Zertifikate für Webseiten zu erstellen.
Und die Datei /usr/share/atom/resources/app.asar.unpacked/node_modules/dugite/git/ssl/cacert.pem enthält eben eine Vielzahl solcher Rootzertifikate die der Atom Editor dann für den integrierten git client nutzt.
Ich nutze die kostenlosen SSL Zertifikate von Let’s Encrypt für meine Webseiten, und eines der Root Zertifikate, das DST Root CA X3 Zertifikat, das Let’s Encrypt nutzte ist im September 2021 abgelaufen, war ab dem Zeitpunkt also ungültig. Zur Verifizierung der Let’s Encrypt SSL Zertifikate kann aber auch das noch aktuelle ISRG Root X1 Zertifikat verwendet werden: Let's Encrypt Certificate Compatibility
Fehlerbehebung
Ich schaute mir dann das CAfile des Atom Editor an, und stellte fest dass sowohl das DST Root CA X3 als auch das ISRG Root X1 Zertifikat enthalten ist, aber aus irgendeinem Grund wohl nur das inzwischen ungültige DST Root CA X3 Zertifikat verwendet wurde.
Also habe ich die cacert.pem Datei als root mit einem Texteditor geöffnet, zum DST Root CA X3 Zertifikat gescrollt und dies dann gelöscht und die Datei wieder gespeichert.
Und schon war das Problem gelöst. Im Grunde ein schnell zu behebendes Problem, daher war ich verwundert dass meine Googlesuche nur Lösungen anbot um die System Zertifikate auf einen neuen Stand zu bringen, aber nicht das cacert.pem für den Atom Editor.
(434 Wörter | 3028 Zeichen)
Share this post
Twitter
Facebook
Reddit
LinkedIn
Pinterest
Email