2017-01-30 36 views
6

Otrzymuję poniższy błąd podczas tworzenia zadania od Jenkins. Jak wyłączyć sprawdzanie poprawności certyfikatu w Jenkins?Integracja Jenkins Git - Jak wyłączyć sprawdzanie poprawności certyfikatu SSL

Z Git Bash Mogę użyć polecenia git config --global http.sslVerify false, aby je wyłączyć, ale nie wiem, jak go używać z Jenkins.

Błąd:

Failed to connect to repository : Command "C:\Program Files (x86)\Git\cmd\git.exe ls-remote -h url ofmy repository.git HEAD" returned status code 128: 
stdout: 
stderr: fatal: unable to access 'url of my git/': SSL certificate problem: self signed certificate in certificate chain 

Odpowiedz

10

najlepszym rozwiązaniem jest dodanie certyfikatu z podpisem własnym do magazynu certyfikatów

Uzyskanie certyfikatu serwera drzewa można to zrobić przy użyciu Chrome.

  1. Przejdź do adresu serwera. Kliknij ikonę kłódki i wyświetl certyfikaty. Wyeksportuj cały łańcuch certyfikatów w formacie plików kodowanych base64 (PEM).

  2. Dodaj certyfikaty do łańcucha zaufania swojej GIT zaufania pliku konfiguracyjnym W Git bash na maszynie z systemem zadanie należy wykonać:

"git config --list".

znaleźć konfigurację http.sslcainfo To pokazuje, gdzie znajduje się plik zaufania certyfikatu. 3. Skopiuj wszystkie certyfikaty do pliku łańcucha zaufania, w tym "- -BEGIN- -" i "- -END- -". Pamiętaj, aby dodać certyfikat ROOT Łańcuch do pliku certyfikatów

To powinno rozwiązać problem z samopodpisanymi certyfikatami i korzystaniem z GIT.

NIEZALECANY

Innym sposobem jest zdalny do swojego niewolnika i uruchom następujące:

git config --global http.sslVerify false

Pozwoli to zaoszczędzić do globalnego config, że ten przypadek nie robi weryfikacji SSL, nie jest to zalecane , powinno być używane tylko podczas testowania, a następnie ponownie wyłączone. Należy to zrobić prawidłowo, jak powyżej.

+0

Dzięki certyfikat z podpisem własnym lot.Adding do magazynu certyfikatów rozwiązać ten problem. To było bardzo pomocne –

0

miałem ten sam problem. Najpierw użyłem Git, używając skryptu powłoki, który wyłączył weryfikację SSL przed kopiowaniem lub ściąganiem.

Później przełączyłem się na używanie JGit zamiast tego, który działa zgodnie z oczekiwaniami (choć nie jest zalecany do użycia). Jednak z JGit niektóre funkcje, takie jak płytkie klony, nie są obsługiwane.

Afair nie miałem niczego instalować na używanie JGit

0

Można użyć JGit i można go naprawić, tworząc .gitconfig plik w JENKINS_HOME z tej linii:

[http] 
sslVerify = false