Geronimo
  1. Geronimo
  2. GERONIMO-4896

Commands to a Secure JMX Connector require the SSL keyStorePassword to be specified on command line

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.1.5, 2.2, 3.0.0
    • Fix Version/s: 2.1.5, 2.2.1, 3.0.0, Wish List
    • Component/s: None
    • Security Level: public (Regular issues)
    • Labels:
      None

      Description

      To my knowledge, it is not possible to run a Geronimo command (e.g. deploy.sh deploy or gsh geronimo/stop-server) to a server with a secure JMX Connector (running SSL, without specifying the following Java system properties on the command line:
      javax.net.ssl.keyStore and javax.net.ssl.keyStorePassword

      For example:

      export GERONIMO_HOME=~/target/geronimo-jetty6-javaee5-2.2-SNAPSHOT
      export JAVA_OPTS="-Djavax.net.ssl.keyStore=$GERONIMO_HOME/var/security/keystores/geronimo-default -Djavax.net.ssl.keyStorePassword=secret -Djavax.net.ssl.trustStore=$GERONIMO_HOME/var/security/keystores/geronimo-default -Djavax.net.ssl.trustStorePassword=secret"
      $GERONIMO_HOME/bin/deploy.sh -u system -p manager --secure list-modules --stopped
      

      javax.net.ssl.keyStorePassword causes a problem, since this means the keyStorePassword is available, in-the-clear, to someone inspecting executing processes. For example while a deploy command was active, someone could run 'ps auxww | grep deployer.jar' and discover the keyStorePassword for the KeyStore.

      Geronimo should provide a mechanism, whereby users can specify the keyStorePassword without making that secret available to anyone inspecting processes running on the current system. Ideally, the password could be encrypted/obfuscated within a file (just as passwords can be encrypted/obfuscated in var/config/config.xml).

      1. 4896_21.patch
        18 kB
        Ashish Jain
      2. 4896_updated_21.patch
        7 kB
        Ashish Jain
      3. 4896_updated.patch
        4 kB
        Ashish Jain
      4. 4896.patch
        2 kB
        Ashish Jain
      5. JavaAgent.jar
        2 kB
        Ashish Jain
      6. JvmOpts.java
        0.8 kB
        Ashish Jain

        Activity

        Kevan Miller created issue -
        David Jencks made changes -
        Field Original Value New Value
        Fix Version/s Wish List [ 12310202 ]
        Fix Version/s 2.2 [ 12312965 ]
        Ashish Jain made changes -
        Attachment JvmOpts.java [ 12427322 ]
        Ashish Jain made changes -
        Assignee Ashish Jain [ ashishjain ]
        Ashish Jain made changes -
        Attachment JavaAgent.jar [ 12428147 ]
        Ashish Jain made changes -
        Attachment 4896.patch [ 12429524 ]
        Ashish Jain made changes -
        Attachment 4896_updated.patch [ 12429880 ]
        Ashish Jain made changes -
        Attachment 4896_updated_21.patch [ 12431795 ]
        Shawn Jiang made changes -
        Assignee Ashish Jain [ ashishjain ] Shawn Jiang [ genspring ]
        Ashish Jain made changes -
        Attachment 4896_21.patch [ 12437444 ]
        Ashish Jain made changes -
        Attachment 4896_21.patch [ 12437444 ]
        Ashish Jain made changes -
        Attachment 4896_21.patch [ 12437450 ]
        Ashish Jain made changes -
        Attachment 4896_21.patch [ 12437450 ]
        Ashish Jain made changes -
        Attachment 4896_21.patch [ 12437451 ]
        Shawn Jiang made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Fix Version/s 2.2.1 [ 12314336 ]
        Resolution Fixed [ 1 ]
        Rex Wang made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            Shawn Jiang
            Reporter:
            Kevan Miller
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development