Hallo,
ich setze seit ein paar Jahren den Hibiscus Server ein und hatte bisher "nur" das selbsterstellte Zertifikat für den Jameica Webadmin verwendet. Nun möchte ich gerne ein Zertifikat meiner eigenen CA benutzen.
Mit dem KeyStore Explorer (macht quasi das gleiche wie OpenSSL) kann ich den "jameica.keystore" im cfg-Verzeichnis mit meinem Master-Passwort öffnen. Das Einfügen des eigenen Root-Zertifikats/Speichern des Keystores/Neustart Server verursacht noch keine Probleme. Wenn ich nun das Zertifikat "jameica" lösche und ein von meiner CA ausgestelltes Zertifikat samt privatem Schlüssel einfüge (wieder mit dem Master-Passwort gesichert und mit dem Namen "jameica")/Speichern des Keystores/Neustart Server, so startet mindestens der Jameica Webadmin nicht und ich erhalte kurz nach dem Start des Servers auch eine E-Mail, dass der Scheduler-Service gestoppt sei.
Wie kann ich nun das Zertifikat für den Jameica Webadmin austauschen, ohne die gesamte Installation zu zerschießen? Vielen Dank im Voraus!
Grüße, Martin
PS: Die Log-Ausgabe des Servers liefert folgende Fehler:
[Sat Jun 17 12:00:05 CEST 2017][ERROR][main][de.willuhn.jameica.hbci.payment.Settings.initWallet] unable to migrate wallet to AES, keeping RSA
java.lang.IllegalArgumentException: not an RSA key!
at org.bouncycastle.jcajce.provider.asymmetric.rsa.CipherSpi.engineGetKeySize(Unknown Source)
at javax.crypto.Cipher.passCryptoPermCheck(Cipher.java:1067)
at javax.crypto.Cipher.checkCryptoPerm(Cipher.java:1025)
at javax.crypto.Cipher.init(Cipher.java:1245)
at javax.crypto.Cipher.init(Cipher.java:1186)
at de.willuhn.jameica.security.crypto.RSAEngine.decrypt(RSAEngine.java:59)
at de.willuhn.jameica.security.Wallet.read(Wallet.java:267)
at de.willuhn.jameica.security.Wallet.read(Wallet.java:237)
at de.willuhn.jameica.security.Wallet.<init>(Wallet.java:87)
at de.willuhn.jameica.security.Wallet.<init>(Wallet.java:73)
at de.willuhn.jameica.hbci.payment.Settings.initWallet(Settings.java:93)
at de.willuhn.jameica.hbci.payment.Settings.<clinit>(Settings.java:58)
at de.willuhn.jameica.hbci.payment.server.SchedulerServiceImpl.start(SchedulerServiceImpl.java:87)
at de.willuhn.jameica.system.ServiceFactory.install(ServiceFactory.java:169)
at de.willuhn.jameica.system.ServiceFactory.init(ServiceFactory.java:73)
at de.willuhn.jameica.plugin.PluginLoader.initPlugin(PluginLoader.java:399)
at de.willuhn.jameica.plugin.PluginLoader.init(PluginLoader.java:243)
at de.willuhn.jameica.services.PluginService.init(PluginService.java:42)
at de.willuhn.boot.BootLoader.resolve(BootLoader.java:139)
at de.willuhn.boot.BootLoader.resolve(BootLoader.java:119)
at de.willuhn.boot.BootLoader.getBootable(BootLoader.java:72)
at de.willuhn.jameica.system.Application.init(Application.java:106)
at de.willuhn.jameica.system.Application.newInstance(Application.java:90)
at de.willuhn.jameica.Main.main(Main.java:78)
[Sat Jun 17 12:00:05 CEST 2017][ERROR][main][de.willuhn.jameica.system.ServiceFactory.init] error while initializing service,
java.lang.ExceptionInInitializerError
at de.willuhn.jameica.hbci.payment.server.SchedulerServiceImpl.start(SchedulerServiceImpl.java:87)
at de.willuhn.jameica.system.ServiceFactory.install(ServiceFactory.java:169)
at de.willuhn.jameica.system.ServiceFactory.init(ServiceFactory.java:73)
at de.willuhn.jameica.plugin.PluginLoader.initPlugin(PluginLoader.java:399)
at de.willuhn.jameica.plugin.PluginLoader.init(PluginLoader.java:243)
at de.willuhn.jameica.services.PluginService.init(PluginService.java:42)
at de.willuhn.boot.BootLoader.resolve(BootLoader.java:139)
at de.willuhn.boot.BootLoader.resolve(BootLoader.java:119)
at de.willuhn.boot.BootLoader.getBootable(BootLoader.java:72)
at de.willuhn.jameica.system.Application.init(Application.java:106)
at de.willuhn.jameica.system.Application.newInstance(Application.java:90)
at de.willuhn.jameica.Main.main(Main.java:78)
Caused by: java.lang.NullPointerException
at de.willuhn.jameica.hbci.payment.Settings.initWallet(Settings.java:104)
at de.willuhn.jameica.hbci.payment.Settings.<clinit>(Settings.java:58)
... 12 more
[Sat Jun 17 12:00:05 CEST 2017][ERROR][main][de.willuhn.jameica.plugin.PluginLoader.init] unable to init plugin hibiscus.server: Plugin "hibiscus.server" wurde aufgrund eines Fehlers bei der Initialisierung deaktiviert.
Fehlermeldung: java.lang.ExceptionInInitializerError
[...]
[Sat Jun 17 12:00:06 CEST 2017][INFO][pool-1-thread-1][de.willuhn.jameica.messaging.NamedConcurrentQueue.deliver] error while processing message
java.lang.NoClassDefFoundError: Could not initialize class de.willuhn.jameica.hbci.payment.Settings
at de.willuhn.jameica.hbci.payment.WebAdminDeployer.getUserRealm(WebAdminDeployer.java:62)
at de.willuhn.jameica.webadmin.deploy.AbstractWebAppDeployer.deploy(AbstractWebAppDeployer.java:46)
at de.willuhn.jameica.webadmin.messaging.DeployMessageConsumer.handleMessage(DeployMessageConsumer.java:72)
at de.willuhn.jameica.messaging.NamedConcurrentQueue.deliver(NamedConcurrentQueue.java:246)
at de.willuhn.jameica.messaging.NamedConcurrentQueue.access$000(NamedConcurrentQueue.java:26)
at de.willuhn.jameica.messaging.NamedConcurrentQueue$1.run(NamedConcurrentQueue.java:81)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Ebenso kann der Jameica Server seine (verschlüsselten) Backups nicht lesen.
ich setze seit ein paar Jahren den Hibiscus Server ein und hatte bisher "nur" das selbsterstellte Zertifikat für den Jameica Webadmin verwendet. Nun möchte ich gerne ein Zertifikat meiner eigenen CA benutzen.
Mit dem KeyStore Explorer (macht quasi das gleiche wie OpenSSL) kann ich den "jameica.keystore" im cfg-Verzeichnis mit meinem Master-Passwort öffnen. Das Einfügen des eigenen Root-Zertifikats/Speichern des Keystores/Neustart Server verursacht noch keine Probleme. Wenn ich nun das Zertifikat "jameica" lösche und ein von meiner CA ausgestelltes Zertifikat samt privatem Schlüssel einfüge (wieder mit dem Master-Passwort gesichert und mit dem Namen "jameica")/Speichern des Keystores/Neustart Server, so startet mindestens der Jameica Webadmin nicht und ich erhalte kurz nach dem Start des Servers auch eine E-Mail, dass der Scheduler-Service gestoppt sei.
Wie kann ich nun das Zertifikat für den Jameica Webadmin austauschen, ohne die gesamte Installation zu zerschießen? Vielen Dank im Voraus!
Grüße, Martin
PS: Die Log-Ausgabe des Servers liefert folgende Fehler:
[Sat Jun 17 12:00:05 CEST 2017][ERROR][main][de.willuhn.jameica.hbci.payment.Settings.initWallet] unable to migrate wallet to AES, keeping RSA
java.lang.IllegalArgumentException: not an RSA key!
at org.bouncycastle.jcajce.provider.asymmetric.rsa.CipherSpi.engineGetKeySize(Unknown Source)
at javax.crypto.Cipher.passCryptoPermCheck(Cipher.java:1067)
at javax.crypto.Cipher.checkCryptoPerm(Cipher.java:1025)
at javax.crypto.Cipher.init(Cipher.java:1245)
at javax.crypto.Cipher.init(Cipher.java:1186)
at de.willuhn.jameica.security.crypto.RSAEngine.decrypt(RSAEngine.java:59)
at de.willuhn.jameica.security.Wallet.read(Wallet.java:267)
at de.willuhn.jameica.security.Wallet.read(Wallet.java:237)
at de.willuhn.jameica.security.Wallet.<init>(Wallet.java:87)
at de.willuhn.jameica.security.Wallet.<init>(Wallet.java:73)
at de.willuhn.jameica.hbci.payment.Settings.initWallet(Settings.java:93)
at de.willuhn.jameica.hbci.payment.Settings.<clinit>(Settings.java:58)
at de.willuhn.jameica.hbci.payment.server.SchedulerServiceImpl.start(SchedulerServiceImpl.java:87)
at de.willuhn.jameica.system.ServiceFactory.install(ServiceFactory.java:169)
at de.willuhn.jameica.system.ServiceFactory.init(ServiceFactory.java:73)
at de.willuhn.jameica.plugin.PluginLoader.initPlugin(PluginLoader.java:399)
at de.willuhn.jameica.plugin.PluginLoader.init(PluginLoader.java:243)
at de.willuhn.jameica.services.PluginService.init(PluginService.java:42)
at de.willuhn.boot.BootLoader.resolve(BootLoader.java:139)
at de.willuhn.boot.BootLoader.resolve(BootLoader.java:119)
at de.willuhn.boot.BootLoader.getBootable(BootLoader.java:72)
at de.willuhn.jameica.system.Application.init(Application.java:106)
at de.willuhn.jameica.system.Application.newInstance(Application.java:90)
at de.willuhn.jameica.Main.main(Main.java:78)
[Sat Jun 17 12:00:05 CEST 2017][ERROR][main][de.willuhn.jameica.system.ServiceFactory.init] error while initializing service,
java.lang.ExceptionInInitializerError
at de.willuhn.jameica.hbci.payment.server.SchedulerServiceImpl.start(SchedulerServiceImpl.java:87)
at de.willuhn.jameica.system.ServiceFactory.install(ServiceFactory.java:169)
at de.willuhn.jameica.system.ServiceFactory.init(ServiceFactory.java:73)
at de.willuhn.jameica.plugin.PluginLoader.initPlugin(PluginLoader.java:399)
at de.willuhn.jameica.plugin.PluginLoader.init(PluginLoader.java:243)
at de.willuhn.jameica.services.PluginService.init(PluginService.java:42)
at de.willuhn.boot.BootLoader.resolve(BootLoader.java:139)
at de.willuhn.boot.BootLoader.resolve(BootLoader.java:119)
at de.willuhn.boot.BootLoader.getBootable(BootLoader.java:72)
at de.willuhn.jameica.system.Application.init(Application.java:106)
at de.willuhn.jameica.system.Application.newInstance(Application.java:90)
at de.willuhn.jameica.Main.main(Main.java:78)
Caused by: java.lang.NullPointerException
at de.willuhn.jameica.hbci.payment.Settings.initWallet(Settings.java:104)
at de.willuhn.jameica.hbci.payment.Settings.<clinit>(Settings.java:58)
... 12 more
[Sat Jun 17 12:00:05 CEST 2017][ERROR][main][de.willuhn.jameica.plugin.PluginLoader.init] unable to init plugin hibiscus.server: Plugin "hibiscus.server" wurde aufgrund eines Fehlers bei der Initialisierung deaktiviert.
Fehlermeldung: java.lang.ExceptionInInitializerError
[...]
[Sat Jun 17 12:00:06 CEST 2017][INFO][pool-1-thread-1][de.willuhn.jameica.messaging.NamedConcurrentQueue.deliver] error while processing message
java.lang.NoClassDefFoundError: Could not initialize class de.willuhn.jameica.hbci.payment.Settings
at de.willuhn.jameica.hbci.payment.WebAdminDeployer.getUserRealm(WebAdminDeployer.java:62)
at de.willuhn.jameica.webadmin.deploy.AbstractWebAppDeployer.deploy(AbstractWebAppDeployer.java:46)
at de.willuhn.jameica.webadmin.messaging.DeployMessageConsumer.handleMessage(DeployMessageConsumer.java:72)
at de.willuhn.jameica.messaging.NamedConcurrentQueue.deliver(NamedConcurrentQueue.java:246)
at de.willuhn.jameica.messaging.NamedConcurrentQueue.access$000(NamedConcurrentQueue.java:26)
at de.willuhn.jameica.messaging.NamedConcurrentQueue$1.run(NamedConcurrentQueue.java:81)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Ebenso kann der Jameica Server seine (verschlüsselten) Backups nicht lesen.