fragen stichworte

Redmine Subversion ignoriert den Zertifikatsfehler nicht, auch wenn dies mitgeteilt wird

Ich habe eine Kopie von Redmine über den Bitnami Redmine-Stack eingerichtet und habe Probleme, über HTTPS auf ein entferntes SVN-Repository zuzugreifen. Das Problem scheint mit der Tatsache zu tun zu haben, dass ich kein signiertes Zertifikat habe und dass das bereitgestellte Zertifikat nicht mit dem Hostnamen übereinstimmt (ich greife über mehrere Hostnamen auf denselben Server zu).

Ich bin neu bei Ruby, Mongrel, Rails und Redmine.

Dem Ratschlag in in diesem Forumsthread folgend, änderte ich den Pfad, den Redmine zum Aufrufen des svn -Client in \apps\redmine\lib\ redmine\scm\adapters\subversion_adapter.rb von

verwendet
SVN_BIN = "svn"

bis

SVN_BIN = "svn --trust-server-cert --non-interactive --config-dir c:/user/temp"

Ich hatte gehofft, dass die Option --trust-server-cert das Zertifikatproblem beheben würde. Ich erhalte jedoch immer noch die folgende Fehlermeldung in mongrel.log:

svn: OPTIONS of 'https://server.xyz:8443/svn/reponame': Server certificate verification failed: certificate issued for a different hostname, issuer is not trusted (https://server.xyz:8443)

Weiß jemand, was Sie dagegen tun sollen?

Zusätzliche Informationen:

  • Ich habe den Mongrel-Dienst nach jeder Änderung neu gestartet

  • Ich bin sicher, dass die Konfigurationsänderung wirksam wurde, da Subversion ein vollständiges Konfigurationsverzeichnis in c:\user\temp

  • erstellt hat
  • Ich kann über die Befehlszeile svn auf das Remote-Repository zugreifen, kein Problem

  • Das Remote-Repository wird auf einer Windows-Box mit VisualSVN

  • ausgeführt

antworten

Ich habe es irgendwie sortiert, indem ich den Hostnamen des Subversion-Servers auf den Namen stellte, den ich von der Redmine-Installation abfrage. Es wäre immer noch interessant zu erfahren, wie dies deaktiviert werden könnte.

Mir ist klar, dass dies eine alte Frage ist, aber es ist immer noch eine gewöhnliche Frage. Die Kurzgeschichte ist, dass Sie Subversion dazu bringen müssen, das Serverzertifikat im richtigen Konfigurationsverzeichnis zu speichern.

Führen Sie in der Befehlszeile Folgendes aus:

svn --config-dir c:/user/temp info https://<url_of_subversion_repository>

Sie sollten die folgende Meldung erhalten:

Error validating server certificate for https://<url_of_subversion_repository>:443':
 - The certificate is not issued by a trusted authority. Use the
   fingerprint to validate the certificate manually!
 - The certificate hostname does not match.
Certificate information:
 - Hostname: <url_of_subversion_repository>
 - Valid: from Thu, 10 Dec 2009 04:06:30 GMT until Tue, 09 Dec 2014 04:06:30 GMT
 - Issuer: <Cert Details>, <Cert Details>, <City>, <State>, <Country>
 - Fingerprint: <Finger Print>
(R)eject, accept (t)emporarily or accept (p)ermanently?

Akzeptieren Sie das Zertifikat dauerhaft. Dadurch werden die erforderlichen Informationen in demselben Konfigurationsverzeichnis gespeichert, das Sie für Redmine angegeben haben, und alle sollten in Ordnung sein.