Jenkins 407 proxy error
Ich bin mit Jenkins CI in einem Unternehmensnetzwerk verwendet einen proxy für den internet-Zugang.
Ich habe versucht, konfigurieren Sie die proxy-details in Plugins->Advanced, aber obwohl die Zugangsdaten richtig sind (ja, ich habe es ein paar mal), ist es nicht überprüfen kann "Test-URL" noch auf http://google.com und gibt
Failed to connect to http://google.com (code 407).
Seltsam, Jenkins ist immer noch in der Lage, download-plugins selbst (whoa!), aber völlig unfähig, eine Verbindung zu einem HTTP-Ressource. Die Nachricht, dass sich die Ausgaben aus der Konsole:
←[0mApr 16, 2015 1:58:56 PM
org.apache.Unterhaus.httpclient.HttpMethodDirector pro
cessProxyAuthChallenge INFO: Fehler Authentifizierung mit NTLM @proxyrye.asg.com:80 Apr 16, 2015 2:09:09 PM
org.apache.Unterhaus.httpclient.HttpMethodDirector ausführen WithRetry
INFO: I/O exception (java.net.ConnectException) erwischt bei der Verarbeitung
Anfrage: Connection timed out: connect Apr 16, 2015 2:09:09 PM
org.apache.Unterhaus.httpclient.HttpMethodDirector ausführen WithRetry
INFO: Wiederholung verlangen Apr 16, 2015 2:09:10 Uhr
org.apache.Unterhaus.httpclient.auth.AuthChallengeProcesso r
selectAuthScheme INFO: ntlm-Authentifizierung Schema ausgewählt ←[31mApr
16, 2015 2:09:10 PM org.apache.Unterhaus.httpclient.HttpMethodDirector
au thenticate SCHWERER: die Anmeldeinformationen können nicht verwendet werden, für die NTLM
Authentifizierung: org.apache.Unterhaus.h
ttpclient.UsernamePasswordCredentials
org.apache.Unterhaus.httpclient.auth.InvalidCredentialsException:
Anmeldeinformationen cann ot verwendet werden, für die NTLM-Authentifizierung:
org.apache.Unterhaus.httpclient.UsernamePasswo rdCredentials
bei org.apache.Unterhaus.httpclient.auth.NTLMScheme.authentifizieren(NTLMScheme
.java:332)
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hatten wir dieses Problem eine ziemlich lange Zeit mit unseren Jenkins hinter unserer Unternehmens-proxy. Den anderen Tag, Sie verändert die Reihenfolge der Authentifizierungsschemas unser proxy-Wünsche. Dies war der Tag unserer Jenkins beendet die Verbindung zum internet.
Offensichtlich Jenkins ist nicht in der Lage, eine Verbindung über einen proxy-Server, die NTLM Authentifizierung erfordert. Das war es, was mich führen zu Frage eine Verbesserung für Jenkins zu erweitern die proxy-Konfiguration Bildschirm. Während der Arbeit an der Erweiterung habe ich entdeckt, dass Jenkins nicht alle proxy-bezogenen system-Eigenschaften, deswegen kann es nicht funktionieren mit NTLM.
Als solche, die Antwort für ein proxy, der es erlaubt nur NTLM-Authentifizierung ist: es funktioniert nicht über die Jenkins-UI.
Aber wenn der proxy-Server ermöglicht anderen Authentifizierungsschemas, können Sie unsere workaround, es ist ziemlich einfach: fügen Sie die java system property
-Dhttp.auth.preference="basic"
auf Ihre Jenkins-startup-Skript oder einem Ihrer container.Wird dadurch gezwungen, die zugrunde liegenden Bibliotheken und Java-Mechanismen Jenkins nutzt, um eine Verbindung zu Ihrem proxy mit basic-Authentifizierung, nicht die NTLM.
Wurde ich immer diese Fehlermeldung beim ausführen von jenkins mit der jetty-server auf jdk 8.
Zum beheben des Problems befolgen Sie folgende Schritte:
Schritt 1:
URL öffnen https://updates.jenkins.io/ im browser
Schritt 2:
Export der Intermediate-Zertifikat:
Internet Explorer -> Tools -> Internetoptionen -> Inhalt -> Zertifikate ->
Gehen Sie zur Registerkarte Vertrauenswürdige Stammzertifizierungsstellen und finden Sie heraus, DST Root CA X3-Zertifikat. Dann Exportieren Sie das Zertifikat:
Zertifikat auswählen -> Exportieren -> DER-codiert-Binär-Format -> Speichern
speichern Sie das Zertifikat als jenkins.cer (es war für mich gespeichert C:\jenkins\jenkins.cer
( Von Firefox -> Tools -> Optionen -> Erweitert -> Verschlüsselung -> Zertifikate Anzeigen )
Schritt 3:
erstellen keystore mit dem Namen cacertskeystore
JAVA_HOME\bin\keytool -keystore C:\jenkins\cacertskeystore -genkey -alias cacerts
Schritt 4:
Hinzufügen jenkins.cer cacertskeystore mit nachstehenden Befehl
JAVA_HOME\bin\keytool-import -trustcacerts -Keystore C:\jenkins\cacertskeystore -alias jenkins -Datei C:\jenkins\jenkins.cer
Schritt 5: Starten Sie den jetty-server mit dem nachstehenden Befehl
JAVA_HOME\bin\java -DJENKINS_HOME=C:/jenkins/home -Djavax.net.ssl.trustStore=C:/jenkins/cacertskeystore -Djavax.net.ssl.trustStorePassword=Passwort vorausgesetzt-beim-erstellen-keystore -jar jenkins.Krieg --httpPort=8080--httpListenAddress=localhost
Fand ich diese Frage, während betroffene von bug: https://issues.jenkins-ci.org/browse/JENKINS-48775
Die vorübergehende Lösung ist das öffnen der Jenkins script console, und geben Sie
ProxyConfiguration.open(new java.net.URL("http://jenkins.io")).content
Da es eine http-url, und nicht um eine https-url ist, wird Sie aktualisieren, einige caches und machen den plugin-manager arbeiten mit den proxy-Einstellungen, zumindest für einige Zeit. Siehe bug-report für mehr details.
für Java JDK8 und höher, Oracle deaktiviert hat basic-auth Tunnelbau für die Basic-Authentifizierung. Wenn Sie möchten, verwenden Sie den einfachen Modus wieder (Sicherheit beeinträchtigt werden), führen Jenkins hinzufügen dieser parameter in der JAVA_OPTS variable
Standardwert ist
als Grundlegende Schema, das standardmäßig DEAKTIVIERT ist, wird es wieder HTTP 407 Fehler, auch wenn Ihre Anmeldedaten waren OK.
mehr auf den link https://issues.jenkins-ci.org/browse/JENKINS-48775 Dank Israel Romero Fidschi
Wenn Sie analysieren die Ausnahme, heißt es
Also nach https://www.safaribooksonline.com/library/view/jenkins-the-definitive/9781449311155/ch04s09.html möglicherweise benötigen Sie einen domain-Namen als gut.
Vielleicht ist das das Problem?
Ich lief in dieses Problem heute, und es landete schließlich wird ein Leerzeichen am Ende des Spira-URI in der Spira-Konfiguration. Muss schon eine schlechte Kopie und paste.
Bekam ich die Failed to connect to http://google.com (code 407) Fehler im Test. Aber jenkins können überprüfen, neue version und installieren Sie plugins& - updates.
Setzen Sie in Anmeldeinformationen, unabhängig von der Prüfung. Dann Speichern Sie und gehen Sie zu der verfügbaren plugins/check-jenkins-version um zu überprüfen, ob es funktioniert.
Den unten Lösung funktionierte für mich für den 407 Problems in Windows 7-Maschine.
Einfachen Hack:
Versuchen Sie es mit der IP der Domäne anstatt der Adresse.
-Dhttp.auth.preference="basic"
eigentlich hat bei mir nicht funktioniert 🙁PS. Ändern Sie die browser-und proxy-und der Jenkins-proxy die IP -
Habe ich auch konfrontiert derselben Ausgabe von jenkins-proxy-407-Fehler
Habe ich Arbeit gefunden, um für das, ich Hoffe, es wird nützlich sein für andere user :
Können Sie installieren Cntlm Authentication Proxy , es steht zwischen Ihren Anwendungen und der corporate proxy die NTLM-Authentifizierung hinzufügen on-the-fly.
Finden Sie hier http://cntlm.sourceforge.net/
Einmal installieren Sie CNTLM, fügen Sie Ihre NTLM-Anmeldeinformationen in einer Datei cntlm.ini . Sie können auch so konfigurieren, dass Ports, oder standardmäßig 3128 .
Finden ausführliche Anleitung von CNTLM-installation hier
https://vijiboy.wordpress.com/2018/03/14/configure-cntlm-to-generate-hash-for-your-password-h-and-verify-m/
Start CNTLM-service und gehen Sie zu jenkins, fügen Sie
host: Hostnamen oder localhost
port: Listen port angegeben cntlm.ini-oder Standard 3128
halten Sie Benutzername und Kennwort leer, und Sie verwenden Jenkins.