Git LFS geben x509: Zertifikat, signiert von unbekannter Stelle

Lesezeit: 2 Minuten

Benutzeravatar von EON CTO
EON-CTO

Ich habe gerade einen Ubuntu 18.04 LTS Server mit Gitlab nach den Anweisungen von eingerichtet https://about.gitlab.com/install/#ubuntu.

Ich habe ein SSL-Zertifikat von GoDaddy ausgestellt und bestätigt, dass dies mit dem Gitlab-Server funktioniert.

Ich habe dann gitlab.rb aktualisiert: gitlab_rails[‘lfs_enabled’] = true

Ich habe den GIT LFS Client von installiert https://git-lfs.github.com/.

Ich habe dann versucht, online eine Lösung zu finden, warum ich LFS nicht zum Laufen bekomme. Ich bekomme immer

x509: Zertifikat von unbekannter Stelle signiert

Andere Einstellungen vorgenommen in gitlab.rb:

gitlab_workhorse[‘env’] = {
‘SSL_CERT_DIR’ => ‘/opt/gitlab/embedded/ssl/certs/’
}
nginx[‘redirect_http_to_https’] = true

Ich bin kein Experte für Linux/Unix/git – aber ich benutze Unix/Linux seit über 30 Jahren und Git seit einigen Jahren – habe Git nicht nur selbst mit LFS eingerichtet.

Ich hatte gerade das gleiche Problem beim Laufen git clone ... um Quellcode aus einem privaten Git-Repository in BitBucket in ein Docker-Image herunterzuladen. Ich habe es gelöst, indem ich die SSL-Prüfung wie folgt deaktiviert habe:

GIT_SSL_NO_VERIFY=1 git clone ...

Beachten Sie, dass es keine gibt && zwischen dem Environment arg und dem git clone-Befehl.

Sie können diese Option auch mit festlegen git config:

git config http.sslverify false

Für meinen Anwendungsfall beim Erstellen eines Docker-Images ist es einfacher, die Env-Var festzulegen.

  • Dies behebt das Problem nicht. Dadurch wird SSL deaktiviert. Das ist nicht gut. SSL ist aus einem bestimmten Grund aktiviert.

    – Johannes Rocha

    1. Februar 2022 um 22:55 Uhr

Das Problem ist, dass Git LFS Zertifikate anders findet als der Rest von Git.

Möglicherweise ist etwas Hilfe erforderlich, um das richtige Zertifikat zu finden.

Ich und meine Benutzer haben dies gelöst, indem sie http.sslCAInfo auf den richtigen Speicherort verweisen.

git config http.sslCAInfo ~/.ssh/id_ed25519 wobei id_ed25519 der private Schlüssel des Benutzers für das problematische Repo ist, also entsprechend ändern.

  • Dieser löst das Problem. Ich kann nur sagen, dass es lustig ist – gestern hinzugefügt, heute geholfen. Sieht aus wie ein Zauber!

    – Dmitri

    7. September 2022 um 15:52 Uhr

  • Wie funktioniert das eigentlich? Offensichtlich ist die SSH-Identität nicht dasselbe wie ein CA-Zertifikat (weder das Dateiformat noch sonst etwas). Wie funktioniert das Erzählen? git um diese Datei zu verwenden http.sslCAInfo irgendetwas reparieren? Ich interessiere mich hauptsächlich aus technischer Sicht …

    – 0xC0000022L

    Vor 2 Tagen

Unter Ubuntu aktualisieren Sie einfach Ihren System CA Store

# move your cert into /usr/local/share/ca-certificates
sudo curl -s 'my-pki.de/my-cert.pem' --output /usr/local/share/ca-certificates/my-cert.crt

# update store
sudo update-ca-certificates

1445920cookie-checkGit LFS geben x509: Zertifikat, signiert von unbekannter Stelle

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy