• Recent
    • Tags
    • Popular
    • Register
    • Login

    Please Note This forum exists for community support for the Mango product family and the Radix IoT Platform. Although Radix IoT employees participate in this forum from time to time, there is no guarantee of a response to anything posted here, nor can Radix IoT, LLC guarantee the accuracy of any information expressed or conveyed. Specific project questions from customers with active support contracts are asked to send requests to support@radixiot.com.

    Radix IoT Website Mango 3 Documentation Website Mango 4 Documentation Website Mango 5 Documentation Website

    SSL Installation on the mango cloud

    Mango General
    5
    14
    3.1k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      JMbayo
      last edited by JMbayo

      Hi

      I am having issue on installing SSL on my mango hosted in my cloud.
      I've already got the ssl certificate from Domain.co.za and I have created a jdk file that
      I pasted under mango/propertie/override, and I changed the env property according to the notes in your website.
      But everytime I activate the SSL settings from mango, my web page can no longer be reached.
      I went through your forum and I see someone had the same issue and I followed the instruction given and still having the same issue.

      See below log data

      //your code here
      ```INFO  2019-07-08T12:20:35,146 (com.serotonin.m2m2.Main.main:101) - Starting Mango 3.5.6 with Schema Version: 26 
      INFO  2019-07-08T12:20:38,815 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'pop3', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:39,030 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'dataFile', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:39,170 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'excelReports', v3.5.3 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:39,291 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'loggingConsole', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:39,342 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'mangoApi', v3.5.2 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:39,384 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'watchlists', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:39,641 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'advancedScheduler', v3.5.1 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:39,646 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'ssh', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:39,727 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'sstGlobalScripts', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:39,777 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'asciiFile', v3.5.1 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:39,842 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'vmstat', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:39,909 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'virtualDS', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:39,952 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'snmp', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,004 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'dashboardDesigner', v3.5.1 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,012 (com.serotonin.m2m2.util.DocumentationManifest.parseManifestFile:60) - Documentation manifest file not found: /opt/mango/web/modules/dashboardDesigner/web/dox/manifest.xml 
      INFO  2019-07-08T12:20:40,020 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'reports', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,057 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'egauge', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,082 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'sqlConsole', v3.5.1 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,106 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'BACnet', v3.5.3 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,125 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'log4JReset', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,141 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'templateConfig', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,186 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'jsonFileImport', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,204 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'dataImport', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,228 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'deviceConfig', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,243 (com.serotonin.m2m2.util.DocumentationManifest.parseManifestFile:60) - Documentation manifest file not found: /opt/mango/web/modules/deviceConfig/web/dox/manifest.xml 
      INFO  2019-07-08T12:20:40,247 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'maintenanceEvents', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,264 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'modbus', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,300 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'mangoUI', v3.5.5 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,305 (com.serotonin.m2m2.util.DocumentationManifest.parseManifestFile:60) - Documentation manifest file not found: /opt/mango/web/modules/mangoUI/web/dox/manifest.xml 
      INFO  2019-07-08T12:20:40,341 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'log4jDS', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,372 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'graphicalViews', v3.5.3 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,442 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'TCPIP', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,451 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'scripting', v3.5.1 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,472 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'mangoNoSqlDatabase', v3.5.1 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,499 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'pointLinks', v3.5.1 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,524 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'sstGraphics', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,564 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'controlcore', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,575 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'opcda', v3.5.1 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,592 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'mbus', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,625 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'dnp3', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,665 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'persistent', v3.5.6 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,691 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'advancedComponents', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,695 (com.serotonin.m2m2.util.DocumentationManifest.parseManifestFile:60) - Documentation manifest file not found: /opt/mango/web/modules/advancedComponents/web/dox/manifest.xml 
      INFO  2019-07-08T12:20:40,702 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'twilio', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,714 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'envcands', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,758 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'mqttClientDataSource', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,775 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'sqlds', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,785 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'Haystack', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,795 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'onewire', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,804 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'scheduledEvents', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,818 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'meta', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,827 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'pakbus', v3.5.4 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,836 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'http', v3.5.1 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,854 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'dataPointDetailsView', v3.5.0 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,871 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'serial', v3.5.1 by Infinite Automation Systems Inc. 
      INFO  2019-07-08T12:20:40,880 (com.serotonin.m2m2.Main.loadModules:588) - Loading module 'internal', v3.5.0 by Infinite Automation Systems Inc. 
      ERROR 2019-07-08T12:20:50,153 (com.serotonin.m2m2.Main.main:142) - Error during initialization 
      java.io.IOException: Keystore was tampered with, or password was incorrect
      	at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:780) ~[?:1.8.0_171]
      	at sun.security.provider.JavaKeyStore$JKS.engineLoad(JavaKeyStore.java:56) ~[?:1.8.0_171]
      	at sun.security.provider.KeyStoreDelegator.engineLoad(KeyStoreDelegator.java:224) ~[?:1.8.0_171]
      	at sun.security.provider.JavaKeyStore$DualFormatJKS.engineLoad(JavaKeyStore.java:70) ~[?:1.8.0_171]
      	at java.security.KeyStore.load(KeyStore.java:1445) ~[?:1.8.0_171]
      	at org.eclipse.jetty.util.security.CertificateUtils.getKeyStore(CertificateUtils.java:54) ~[jetty-util-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.util.ssl.SslContextFactory.loadKeyStore(SslContextFactory.java:1089) ~[jetty-util-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.util.ssl.SslContextFactory.load(SslContextFactory.java:274) ~[jetty-util-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.util.ssl.SslContextFactory.doStart(SslContextFactory.java:241) ~[jetty-util-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) ~[jetty-util-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:138) ~[jetty-util-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117) ~[jetty-util-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.server.SslConnectionFactory.doStart(SslConnectionFactory.java:94) ~[jetty-server-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) ~[jetty-util-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:138) ~[jetty-util-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:117) ~[jetty-util-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.server.AbstractConnector.doStart(AbstractConnector.java:282) ~[jetty-server-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:81) ~[jetty-server-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:235) ~[jetty-server-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) ~[jetty-util-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.server.Server.doStart(Server.java:395) ~[jetty-server-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68) ~[jetty-util-9.4.12.v20180830.jar:9.4.12.v20180830]
      	at com.serotonin.m2m2.Lifecycle.webServerInitialize(Lifecycle.java:999) ~[ma-priv-3.5.6.jar:?]
      	at com.serotonin.m2m2.Lifecycle.initialize(Lifecycle.java:244) ~[ma-priv-3.5.6.jar:?]
      	at com.serotonin.m2m2.Main.main(Main.java:138) ~[ma-priv-3.5.6.jar:?]
      Caused by: java.security.UnrecoverableKeyException: Password verification failed
      	at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:778) ~[?:1.8.0_171]
      	... 24 more
      INFO  2019-07-08T12:20:50,153 (com.serotonin.m2m2.Lifecycle.terminate:422) - Mango Lifecycle terminating... 
      ERROR 2019-07-08T12:20:50,230 (com.serotonin.m2m2.Lifecycle.terminate:501) - com.serotonin.provider.InputStreamEPollProvider 
      com.serotonin.provider.ProviderNotFoundException: com.serotonin.provider.InputStreamEPollProvider
      	at com.serotonin.provider.Providers.get(Providers.java:30) ~[mango-3.5.6.jar:?]
      	at com.serotonin.provider.Providers.get(Providers.java:20) ~[mango-3.5.6.jar:?]
      	at com.serotonin.m2m2.Lifecycle.terminate(Lifecycle.java:496) ~[ma-priv-3.5.6.jar:?]
      	at com.serotonin.m2m2.Main.main(Main.java:143) ~[ma-priv-3.5.6.jar:?]
      ERROR 2019-07-08T12:20:50,234 (com.serotonin.m2m2.Lifecycle.terminate:509) - com.serotonin.provider.ProcessEPollProvider 
      com.serotonin.provider.ProviderNotFoundException: com.serotonin.provider.ProcessEPollProvider
      	at com.serotonin.provider.Providers.get(Providers.java:30) ~[mango-3.5.6.jar:?]
      	at com.serotonin.provider.Providers.get(Providers.java:20) ~[mango-3.5.6.jar:?]
      	at com.serotonin.m2m2.Lifecycle.terminate(Lifecycle.java:504) ~[ma-priv-3.5.6.jar:?]
      	at com.serotonin.m2m2.Main.main(Main.java:143) ~[ma-priv-3.5.6.jar:?]
      INFO  2019-07-08T12:20:50,300 (com.serotonin.m2m2.Lifecycle.terminate:571) - Mango Lifecycle terminated.[link text]([link url]([link url](```
      link url
      ```)))
      1 Reply Last reply Reply Quote 0
      • CraigWebC
        CraigWeb
        last edited by CraigWeb

        Hi Jerrry

        Welcome to the forum. Please could you edit your post so that the ma.log text is inside a code element. It makes it a lot easier to scroll and copy. Text

        ERROR 2019-07-08T12:20:50,153 (com.serotonin.m2m2.Main.main:142) - Error during initialization
        java.io.IOException: Keystore was tampered with, or password was incorrect
        

        Can you confirm that the keystore password is correct?
        Can you also show us which forum thread you followed.

        1 Reply Last reply Reply Quote 0
        • MattFoxM
          MattFox
          last edited by

          This thread here provides a handy step by step on how to apply the cert given your version of mango. If you upgrade to the latest version you will have the ability to use letsEncrypt certs which can update on the fly. That was implemented from 3.5.3 I believe.

          https://forum.infiniteautomation.com/topic/3725/external-ip/8

          Alternatively if you're running multiple web services on the same server, a proxy might suit you more.

          Fox

          Do not follow where the path may lead; go instead where there is no path.
          And leave a trail - Muriel Strode

          1 Reply Last reply Reply Quote 0
          • J
            JMbayo
            last edited by

            Hi Graig!
            Thanks for your response,I have created my keystore .jdk using windows key tool.and i pasted it in the directory as shown on the mango.i have not use a password to generate my key.
            this is the link i got information from: https://forum.infiniteautomation.com/topic/3725/external-ip/7

            1 Reply Last reply Reply Quote 0
            • CraigWebC
              CraigWeb
              last edited by

              Hi Jerry

              Did you use a password when creating the keystore, not the key? The logs show Mango cannot access the keystore.

              What did you put on this line in your env.properties:

              ssl.keystore.password=morethan6characters
              
              J 1 Reply Last reply Reply Quote 0
              • J
                JMbayo @CraigWeb
                last edited by

                Hi craigweb i did put : ssl.keystore.password=freetextpassword

                1 Reply Last reply Reply Quote 0
                • CraigWebC
                  CraigWeb
                  last edited by

                  @jmbayo said in SSL Installation on the mango cloud:

                  Caused by: java.security.UnrecoverableKeyException: Password verification failed

                  Your logs show that the password is not correct. You need to first test your password on the keystore.

                  J 1 Reply Last reply Reply Quote 0
                  • phildunlapP
                    phildunlap
                    last edited by

                    this is the link i got information from: https://forum.infiniteautomation.com/topic/3725/external-ip/7

                    Did you use the keytool command exactly as it appears in this thread? If so, your keystore password would likely be changei

                    1 Reply Last reply Reply Quote 0
                    • J
                      Jimmy Kabuya
                      last edited by

                      This post is deleted!
                      1 Reply Last reply Reply Quote 0
                      • MattFoxM
                        MattFox
                        last edited by

                        I trust you got things sorted Jimmy? Welcome to message via chat as well if you have any concerns

                        Fox

                        Do not follow where the path may lead; go instead where there is no path.
                        And leave a trail - Muriel Strode

                        1 Reply Last reply Reply Quote 0
                        • CraigWebC
                          CraigWeb
                          last edited by

                          Hi Jimmy

                          The process is as follows:

                          1. Create a keystore.jks to hold your keys
                          2. Import the certificate into the keystore.
                          3. Move the keystore onto your cloud server.
                          4. edit the env.properties folder to point to your keystore.

                          If any passwords were used on either the key or the certificate then add them to the env.properties file

                          J 1 Reply Last reply Reply Quote 0
                          • J
                            Jimmy Kabuya @CraigWeb
                            last edited by

                            This post is deleted!
                            1 Reply Last reply Reply Quote 0
                            • J
                              Jimmy Kabuya @CraigWeb
                              last edited by

                              @craigweb Thanks. Let me try that, will let you know how it goes.

                              1 Reply Last reply Reply Quote 0
                              • J
                                JMbayo
                                last edited by

                                Hi all; the SSL is now working on my cloud. I thought I would share the procedure and challenges encountered.
                                Step 0.
                                Buy a genuine SSL certificate
                                Step 1.
                                Generate a CSR to request a certificate from a recognised CA
                                Step 2
                                Generate a file.jks; on my case I used keystore explore to create a keystore.jks and load all my certificate in it.
                                Setp 3
                                I then imported it into my mango /opt/mango/overrides/properties
                                Challenges:
                                After all these steps, when I edited my env file to activate the SSL, my web page couldn’t be access. The issue was on my env file, I didn’t uncommented the ssl.key.password. I followed the instruction for using certbot which was not the right one for my case. The right is on support under configurationinstallation

                                1. ssl.on=true
                                2. ssl.port=443
                                3. ssl.keystore.location=[YOUR FULL MANGO PATH HERE]/overrides/keystore.jks
                                4. ssl.keystore.password=[leave empty if you didn’t use a password]
                                5. ssl.key.password=[leave empty if you didn’t use a password] (Note that this need to be uncommented as it is initially commented out)
                                  Then I restarted mango, and that’s it
                                1 Reply Last reply Reply Quote 1
                                • First post
                                  Last post