hibiscus server: Zertifikatimport abgebrochen, Synchronisation bricht komplett ab

 
benD
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 4
Dabei seit: 01 / 2016
Betreff:

hibiscus server: Zertifikatimport abgebrochen, Synchronisation bricht komplett ab

 · 
Gepostet: 06.01.2016 - 15:26 Uhr  ·  #1
Hallo

Server-Version: 2.6.14 [Build: 132]

Hibiscus-Server nutze ich derzeit um etliche Konten abzufragen. Dazu nutze ich auch verschiedene Banken. Bislang klappte das auch sehr gut, aber seit Montag finde ich bei einigen Konten keine neuen Umsätze mehr, die aber da sein müssen (Online-Banking gegengeprüft).

Auf der Suche bemerkte ich, dass bei einem vorherigen Zugang ein problem existiert:
Zitat
import of certificate CN=HBCI-PINTAN.GAD.DE, OU=VR-IDENT, O=FIDUCIA & GAD IT AG, L=FRANKFURT AM MAIN, ST=HESSEN, C=DE-862457438366112537490447222 cancelled by user, NOT trusted

Zitat
org.kapott.hbci.exceptions.HBCI_Exception: error while sending message to HBCI server
at org.kapott.hbci.comm.CommPinTan.ping(CommPinTan.java:160)
at org.kapott.hbci.comm.Comm.pingpong(Comm.java:72)
at org.kapott.hbci.manager.HBCIKernelImpl.rawDoIt(HBCIKernelImpl.java:352)
at org.kapott.hbci.manager.HBCIKernelImpl.rawDoIt(HBCIKernelImpl.java:178)
at org.kapott.hbci.manager.HBCIInstitute.fetchBPD(HBCIInstitute.java:307)
at org.kapott.hbci.manager.HBCIInstitute.register(HBCIInstitute.java:451)
at org.kapott.hbci.manager.HBCIHandler.registerInstitute(HBCIHandler.java:268)
at org.kapott.hbci.manager.HBCIHandler.<init>(HBCIHandler.java:132)
at de.willuhn.jameica.hbci.passports.pintan.server.PassportHandleImpl.open(PassportHandleImpl.java:172)
at de.willuhn.jameica.hbci.synchronize.hbci.HBCISynchronizeBackend$HBCIJobGroup$TaskHandleOpen.internalExecute(HBCISynchronizeBackend.java:534)
at de.willuhn.jameica.hbci.synchronize.hbci.HBCISynchronizeBackend$HBCIJobGroup$TaskHandleOpen.internalExecute(HBCISynchronizeBackend.java:506)
at de.willuhn.jameica.hbci.synchronize.hbci.HBCISynchronizeBackend$HBCIJobGroup$AbstractTaskWrapper.run(HBCISynchronizeBackend.java:643)
at de.willuhn.jameica.hbci.synchronize.hbci.HBCISynchronizeBackend$HBCIJobGroup$AbstractTaskWrapper.execute(HBCISynchronizeBackend.java:619)
at de.willuhn.jameica.hbci.synchronize.hbci.HBCISynchronizeBackend$HBCIJobGroup.sync(HBCISynchronizeBackend.java:274)
at de.willuhn.jameica.hbci.synchronize.AbstractSynchronizeBackend$Worker.run(AbstractSynchronizeBackend.java:388)
at de.willuhn.jameica.system.Server$1.run(Server.java:108)
Caused by: javax.net.ssl.SSLException: de.willuhn.jameica.system.OperationCanceledException: Import des Zertifikats abgebrochen
at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949)
at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1906)
at sun.security.ssl.SSLSocketImpl.handleException(SSLSocketImpl.java:1889)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1410)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)
at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:563)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:153)
at org.kapott.hbci.comm.CommPinTan.ping(CommPinTan.java:150)
... 15 more
Caused by: de.willuhn.jameica.system.OperationCanceledException: Import des Zertifikats abgebrochen
at de.willuhn.jameica.security.SSLFactory.addTrustedCertificate(SSLFactory.java:683)
at de.willuhn.jameica.security.JameicaTrustManager.checkTrusted(JameicaTrustManager.java:270)
at de.willuhn.jameica.security.JameicaTrustManager.checkServerTrusted(JameicaTrustManager.java:169)
at sun.security.ssl.AbstractTrustManagerWrapper.checkServerTrusted(SSLContextImpl.java:922)
at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1479)
at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:212)
at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979)
at sun.security.ssl.Handshaker.process_record(Handshaker.java:914)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062)
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)
... 20 more org.kapott.hbci.manager.HBCIUtils.log(HBCIUtils.java:1120)


Zitat
org.kapott.hbci.exceptions.HBCI_Exception: can not set raw value of MsgHead.dialogid to null
at org.kapott.hbci.manager.HBCIKernelImpl.rawSet(HBCIKernelImpl.java:166)
at org.kapott.hbci.manager.HBCIInstitute.doDialogEnd(HBCIInstitute.java:185)
at org.kapott.hbci.manager.HBCIInstitute.fetchBPD(HBCIInstitute.java:328)
at org.kapott.hbci.manager.HBCIInstitute.register(HBCIInstitute.java:451)
at org.kapott.hbci.manager.HBCIHandler.registerInstitute(HBCIHandler.java:268)
at org.kapott.hbci.manager.HBCIHandler.<init>(HBCIHandler.java:132)
at de.willuhn.jameica.hbci.passports.pintan.server.PassportHandleImpl.open(PassportHandleImpl.java:172)
at de.willuhn.jameica.hbci.synchronize.hbci.HBCISynchronizeBackend$HBCIJobGroup$TaskHandleOpen.internalExecute(HBCISynchronizeBackend.java:534)
at de.willuhn.jameica.hbci.synchronize.hbci.HBCISynchronizeBackend$HBCIJobGroup$TaskHandleOpen.internalExecute(HBCISynchronizeBackend.java:506)
at de.willuhn.jameica.hbci.synchronize.hbci.HBCISynchronizeBackend$HBCIJobGroup$AbstractTaskWrapper.run(HBCISynchronizeBackend.java:643)
at de.willuhn.jameica.hbci.synchronize.hbci.HBCISynchronizeBackend$HBCIJobGroup$AbstractTaskWrapper.execute(HBCISynchronizeBackend.java:619)
at de.willuhn.jameica.hbci.synchronize.hbci.HBCISynchronizeBackend$HBCIJobGroup.sync(HBCISynchronizeBackend.java:274)
at de.willuhn.jameica.hbci.synchronize.AbstractSynchronizeBackend$Worker.run(AbstractSynchronizeBackend.java:388)
at de.willuhn.jameica.system.Server$1.run(Server.java:108) org.kapott.hbci.manager.HBCIUtils.log(HBCIUtils.java:1120)


Zitat
fetching BPD failed: de.willuhn.jameica.system.OperationCanceledException: Import des Zertifikats abgebrochen org.kapott.hbci.manager.HBCIInstitute.fetchBPD(HBCIInstitute.java:334)


Dem Zertifikat von der GLS Bank bzw. GAD wird nicht vertraut. Jetzt habe ich im Forum schon was gefunden, was aber nur für die Desktop-Variante gilt:
http://www.onlinebanking-forum…980&page=1
Was mache ich jetzt in der Server-Variante?

Zweites Problem dadurch bemerkt, leider bricht dann die komplette Synchronisation ab. Also nicht nur der Bankkontakt sondern auch alle folgenden.
Das ist schwierig, da eh nur Umsätze abgerufen werden und dadurch auch andere Konten betroffen werden. Kann man das abstellen? Also das die Synchronisation auch bei Fehler weiterläuft? :)
Die Funktion "Scheduler-Service für Synchronisierung im Fehlerfall stoppen." ist deaktiviert.

Viele Grüße

Ben
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11158
Dabei seit: 03 / 2005
Betreff:

Re: hibiscus server: Zertifikatimport abgebrochen, Synchronisation bricht komplett ab

 · 
Gepostet: 07.01.2016 - 09:52 Uhr  ·  #2
Das ist loesbar - allerdings etwas tricky. Das Problem am Server ist ja, dass der im Hintergrund laeuft und keine direkte Benutzer-Interaktion moeglich ist. Die ist aber eigntlich erforderlich, um dem Server-Zertifikat explizit zu vertrauen. Eine Sonderrolle spielt hierbei der Moment, wenn der User gerade einen Bankzugang neu im Server anlegt. Dort kommt es zwar zur selben Situation - Hibiscus vertraut in diesem Fall aber dem Server-Zertifikat, da sich aus dem Kontext erschliesst, dass das gerade ein vom User explizit gewuenschter Vorgang ist.

Kommt es aber irgendwann im zyklischen Synchronisationsbetrieb zu dem Zertifikatsfehler, dann darf der Server das nicht einfach tolerieren, da es sich hier ja schliesslich um einen Angriff handeln koennte, bei dem das Zertifikat manipuliert wurde. Der Server laeuft hierbei im "Nicht-interaktiven Modus" und kann den User daher nicht um Erlaubnis bitten. Sollte auch daran erkennbar sein, dass im Log unmittelbar vorher die Fehler-Meldung "Jameica läuft im nicht-interaktiven Modus. Beantwortung der Frage "..." nicht möglich" auftaucht.

Du kannst das wie folgt loesen:

1) Stelle sicher, dass du den Server nicht im "Nicht-interaktiven Modus" gestartet hast. Erkennbar am Parameter "-n" im Aufruf von Jameica. Wenn er da drin steht, entferne ihn.
2) Starte Jameica jetzt neu, schicke den Prozess aber nicht mit "&" in den Hintergrund und entferne die Umleitung von STDOUT ("> /dev/null")
3) Starte jetzt ueber das Webfrontend die Synchronsierung manuell. In dem noch offenen Terminal-Fenster mit dem Server-Prozess sollte jetzt die Abfrage fuer das Zertifikat erscheinen. Da stehen erst die Details des Zertifikates und danach: "Das Zertifikat des Systems konnte nicht verifiziert werden. Möchten Sie diesem Zertifikat vertrauen? [J/N]": Tippe "J" im Terminal ein und druecke ENTER. Das Zertifikat ist jetzt importiert.
4) Du kannst den Server jetzzt mit <CTRL><C> beenden, die Aenderungen aus 1 und 2 rueckgaengig machen und den Server wieder starten.



Und jetzt, nachdem ich das alles geschrieben habe, faellt mir eine viel einfachere Variante ein *an die Stirn klatsch*:

1) Oeffne im Browser https://hbci-pintan.gad.de/ und speichere das Server-Zertifikat ab. In Firefox geht das ueber "Rechtsklick->View Page Info->Security->View Certificate->Details->Export"
2) Oeffne das Jameica-Webfrontend unter https://<server>:8080/webadmin
3) Dort findest du die Liste der installierten Zertifikate. Klicke bei "Neues Zertifikat importieren" auf "Browse" und waehle das abgespeicherte Zertifikat aus.
4) Fertig ;)
benD
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 4
Dabei seit: 01 / 2016
Betreff:

Re: hibiscus server: Zertifikatimport abgebrochen, Synchronisation bricht komplett ab

 · 
Gepostet: 07.01.2016 - 17:04 Uhr  ·  #3
Hallo hibiscus

Vielen Dank, das hat sehr geholfen :) Besonders die zweite Möglichkeit, die ich dann gleich mal verwendet habe ;) Jetzt funktioniert es wieder :)
Komisch, an der Stelle gibt es nur ein Update-Zertifikat und das der GAD, von norisbank, comdirect, den Sparkassen und Volksbanken sehe ich da keins, obwohl dort auch Bankkontakte laufen ... Zumindest bei den Sparkassen weiß ich auswendig, dass die nicht in der GAD sitzen.

Zu dem zweiten Problem, die Synchronisation hat dadurch sich komplett beendet. Ich verstehe und finde es gut, wenn das Konto bzw. der Bankkontakt nicht weiter synchronisiert wird, Sicherheit geht vor, aber warum die komplette Synchronisation?
Eine Fehler-E-Mail in den Einstellungen habe ich aktiviert, ich bekomme also die Info dann. Aber die anderen Konten und Bankkontakte können ja trotz Fehler weiterlaufen, weil dort ja nicht der Fehler ist.
Kann ich das irgendwo einstellen?

Da fällt mir ein, wenn ich die PIN ändere bei der Bank, dann ist es ja auch ein Systemänderung mit Fehlerfolge, wird die Synchronisation auch komplett abbrechen?

Viele Grüße

Ben
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11158
Dabei seit: 03 / 2005
Betreff:

Re: hibiscus server: Zertifikatimport abgebrochen, Synchronisation bricht komplett ab

 · 
Gepostet: 08.01.2016 - 12:42 Uhr  ·  #4
Zitat geschrieben von benD

Komisch, an der Stelle gibt es nur ein Update-Zertifikat und das der GAD, von norisbank, comdirect, den Sparkassen und Volksbanken sehe ich da keins, obwohl dort auch Bankkontakte laufen ... Zumindest bei den Sparkassen weiß ich auswendig, dass die nicht in der GAD sitzen.


Der Import von Zertifiikaten ist nicht noetig, wenn Jameica so konfiguriert ist, dass es den Stamm-Zertifikaten von Java selbst vertraut (ist seit einigen Versionen per Default in Jameica aktiviert) und das Server-Zertifikat ueber eines dieser Stammzertifikate verifizierbar ist. Daher fehlen da einige. Es war schlicht nicht noetig, die zu installieren, weil die Echtheit auch ueber die Stammzertifikate geprueft werden konnte.

Zitat geschrieben von benD

Zu dem zweiten Problem, die Synchronisation hat dadurch sich komplett beendet. Ich verstehe und finde es gut, wenn das Konto bzw. der Bankkontakt nicht weiter synchronisiert wird, Sicherheit geht vor, aber warum die komplette Synchronisation?


Die fehlgeschlagene Zertifikatspruefung wird im Code in der selben Form "nach oben" gereicht, wie die Situation, wenn der User im Dialog "Wollen Sie diesem Zertifikat vertrauen?" Dialog auf "Abbrechen" klickt. Wuerde man dann trotzdem den Vorgang fortsetzen, koennte es passieren, dass dann wichtige Fehlermeldungen aus dem sichtbaren Bereich scrollen oder Folgefehler entstehen. Abbruch heisst Abbruch.

Das laesst sich derzeit auch nicht ohne weiteres aendern. Um die Synchronisation auch in diesem Fall weiterlaufen zu lassen, waere einiges an Umbau-Arbeiten noetig. Das ist mit ehrlich gesagt den Aufwand nicht wert. Zumal solche Fehler ja kein Dauerzustand sein sollten. Stattdessen sollte die Ursache behoben werden (durch Import des Zertifikates) anstatt das Problem per "Ignore den Fehler und mach trotzdem weiter" auszusitzen.

Zitat geschrieben von benD

Da fällt mir ein, wenn ich die PIN ändere bei der Bank, dann ist es ja auch ein Systemänderung mit Fehlerfolge, wird die Synchronisation auch komplett abbrechen?


In der Desktop-Version von Hibiscus kommt in dem Fall ein Dialog, in dem der User gefragt wird, ob er die Synchronisierung dennoch fortsetzen moechte. Im Server gibt es diese Rueckfrage-Moeglichkeit nicht. Deshalb bricht auch hier die Synchronisierung komplett ab. Und auch hier halte ich das fuer wichtig. Die Ursache muss behoben werden. Sonst hast du naemlich ganz schnell dein Konto gesperrt, wenn Hibiscus in so einem Fehlerfall einfach weitermachen wuerde (und es im naechsten Synchronisationslauf oder beim naechsten Konto erneut mit der falschen PIN versucht).
benD
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 4
Dabei seit: 01 / 2016
Betreff:

Re: hibiscus server: Zertifikatimport abgebrochen, Synchronisation bricht komplett ab

 · 
Gepostet: 18.04.2016 - 10:28 Uhr  ·  #5
Hallo hibiscus

neue Idee, was wäre, wenn einfach in der Fehler-E-Mail "[Hibiscus Payment-Server] Scheduler-Status: GESTOPPT" die genauen Fehlermeldungen stehen?
Also:
Bankkontakt / Konto: Fehler XXX

Dann ginge der Fehler nicht verloren und gleichzeitig läuft der Import weiter.
Ich hole derzeit mit hibiscus von 50 Konten die Umsätze, wenn da ein Konto Schwierigkeiten macht, bricht alles ab. Das passiert derzeit jede Woche, auch weil die Pin-Konfigurationen regelmäßig verschwinden.

Laut Log gibt es eine Möglichkeit die Werte auf true oder false zu setzen:
18.04.2016 08:36:04 SchedulerServiceImpl stopping scheduler service
18.04.2016 08:36:04 SchedulerErrorMessageConsumer scheduler configured to stop on synchronization errors, stopping scheduler
18.04.2016 08:36:04 SynchronizeErrorMessageConsumer stop sync on error: true

Genau die Stelle brauche ich :)

Viele Grüße

Ben
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 11158
Dabei seit: 03 / 2005
Betreff:

Re: hibiscus server: Zertifikatimport abgebrochen, Synchronisation bricht komplett ab

 · 
Gepostet: 18.04.2016 - 10:37 Uhr  ·  #6
Das Verschwinden der PIN/TAN-Konfigurationen sollte im Nightly-Build nicht mehr auftreten.

Zitat

18.04.2016 08:36:04 SynchronizeErrorMessageConsumer stop sync on error: true
Genau die Stelle brauche ich :)


https://<deinserver>:8080/hibiscus/settings.html

Dort die Option "Scheduler-Service für Synchronisierung im Fehlerfall stoppen" deaktivieren. Das verhindert, dass der Scheduler stoppt.

Ausserdem in der Konfigurationsdatei "cfg/de.willuhn.jameica.hbci.payment.Plugin.properties" im Jameica-Benutzerordner ".jameica" den Parameter:

Code

sync.stoponerror=false


einfuegen.
benD
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 4
Dabei seit: 01 / 2016
Betreff:

Re: hibiscus server: Zertifikatimport abgebrochen, Synchronisation bricht komplett ab

 · 
Gepostet: 26.04.2016 - 10:30 Uhr  ·  #7
Vielen Dank! Jetzt heißt es abwarten, was das System macht :)
Gewählte Zitate für Mehrfachzitierung:   0