Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-7908

using relative truststore path, per client_encryption_options example, throws java.io.FileNotFoundException

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Low
    • Resolution: Unresolved
    • None
    • Local/Config
    • None
    • Low

    Description

      Reading the example given in the default cassandra.yaml, it seems the truststore path accepts relative paths. However, doing so results in a
      file not found exception. Using the absolute path works without issue.

      Config snippet:

      # enable or disable client/server encryption.
      client_encryption_options:
          enabled: true
          #keystore: conf/.keystore
          keystore: /etc/cassandra/conf/cassandra-02/keystore
          #keystore_password: cassandra
          keystore_password: password
          require_client_auth: true
          # Set trustore and truststore_password if require_client_auth is true
          #truststore: conf/.truststore
          #truststore_password: cassandra
          truststore: /etc/cassandra/conf/cassandra-02/truststore
          truststore_password: password
          # More advanced defaults below:
          # protocol: TLS
          # algorithm: SunX509
          # store_type: JKS
          # cipher_suites: [TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]
      
      

      Log snippet:

       INFO [main] 2014-09-10 18:53:24,118 CassandraDaemon.java (line 575) No gossip backlog; proceeding
      DEBUG [main] 2014-09-10 18:53:24,166 Slf4JLogger.java (line 32) Using select timeout of 500
      DEBUG [main] 2014-09-10 18:53:24,166 Slf4JLogger.java (line 32) Epoll-bug workaround enabled = false
       INFO [main] 2014-09-10 18:53:24,201 Server.java (line 147) Enabling encrypted CQL connections between client and server
      ERROR [main] 2014-09-10 18:53:24,255 CassandraDaemon.java (line 513) Exception encountered during startup
      java.lang.RuntimeException: Failed to setup secure pipeline
              at org.apache.cassandra.transport.Server$SecurePipelineFactory.<init>(Server.java:289)
              at org.apache.cassandra.transport.Server.run(Server.java:148)
              at org.apache.cassandra.transport.Server.start(Server.java:108)
              at org.apache.cassandra.service.CassandraDaemon.start(CassandraDaemon.java:443)
              at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:509)
              at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:585)
      Caused by: java.io.IOException: Error creating the initializing the SSL Context
              at org.apache.cassandra.security.SSLFactory.createSSLContext(SSLFactory.java:124)
              at org.apache.cassandra.transport.Server$SecurePipelineFactory.<init>(Server.java:285)
              ... 5 more
      Caused by: java.io.FileNotFoundException: conf/cassandra-02/truststore (No such file or directory)
              at java.io.FileInputStream.open(Native Method)
              at java.io.FileInputStream.<init>(FileInputStream.java:146)
              at java.io.FileInputStream.<init>(FileInputStream.java:101)
              at org.apache.cassandra.security.SSLFactory.createSSLContext(SSLFactory.java:105)
              ... 6 more
       INFO [StorageServiceShutdownHook] 2014-09-10 18:53:24,269 Gossiper.java (line 1279) Announcing shutdown
      DEBUG [GossipTasks:1] 2014-09-10 18:53:24,660 DebuggableThreadPoolExecutor.java (line 245) Task cancelled
      java.util.concurrent.CancellationException
              at java.util.concurrent.FutureTask.report(FutureTask.java:121)
              at java.util.concurrent.FutureTask.get(FutureTask.java:188)
              at org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor.extractThrowable(DebuggableThreadPoolExecutor.java:237)
              at org.apache.cassandra.concurrent.DebuggableThreadPoolExecutor.logExceptionsAfterExecute(DebuggableThreadPoolExecutor.java:201)
              at org.apache.cassandra.concurrent.DebuggableScheduledThreadPoolExecutor.afterExecute(DebuggableScheduledThreadPoolExecutor.java:46)
              at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1153)
              at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
              at java.lang.Thread.run(Thread.java:745)
       INFO [StorageServiceShutdownHook] 2014-09-10 18:53:26,269 MessagingService.java (line 683) Waiting for messaging service to quiesce
      DEBUG [StorageServiceShutdownHook] 2014-09-10 18:53:26,270 MessagingService.java (line 928) Closing accept() thread
      DEBUG [ACCEPT-cassandra-02.adaptiveapps.com/192.168.10.205] 2014-09-10 18:53:26,272 MessagingService.java (line 909) Asynchronous close seen by server thread
       INFO [ACCEPT-cassandra-02.adaptiveapps.com/192.168.10.205] 2014-09-10 18:53:26,272 MessagingService.java (line 923) MessagingService has terminated the accept() thread
      

      Attachments

        Activity

          People

            satishbabu satish babu krishnamoorthy
            knappch Chester Knapp
            satish babu krishnamoorthy
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated: