Назад | Перейти на главную страницу

«Невозможно привязать к порту» включение шифрования клиента Cassandra

Я использую Cassandra 1.2 с трехузловым кластером на Debian 7. Кластер работает нормально. Но я хочу включить шифрование для клиентов, как описано здесь: ttp: //www.datastax.com/documentation/cassandra/1.2/webhelp/cassandra/security/secureSSLClientToNode_t.html

Но когда я перезапускаю Cassandra после внесения необходимого изменения конфигурации, я получаю эту ошибку в журнале, и Cassandra вылетает:

 INFO 20:12:16,734 enabling encrypted thrift connections between client and server
java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.apache.commons.daemon.support.DaemonLoader.start(DaemonLoader.java:243)
Caused by: java.lang.RuntimeException: Unable to create thrift socket to /192.168.0.1:9160
        at org.apache.cassandra.thrift.CustomTThreadPoolServer$Factory.buildTServer(CustomTThreadPoolServer.java:267)
        at org.apache.cassandra.thrift.TServerCustomFactory.buildTServer(TServerCustomFactory.java:46)
        at org.apache.cassandra.thrift.ThriftServer$ThriftServerThread.<init>(ThriftServer.java:105)
        at org.apache.cassandra.thrift.ThriftServer.start(ThriftServer.java:52)
        at org.apache.cassandra.service.CassandraDaemon.start(CassandraDaemon.java:400)
        ... 5 more
Caused by: org.apache.thrift.transport.TTransportException: Could not bind to port 9160
        at org.apache.thrift.transport.TSSLTransportFactory.createServer(TSSLTransportFactory.java:117)
        at org.apache.thrift.transport.TSSLTransportFactory.getServerSocket(TSSLTransportFactory.java:103)
        at org.apache.cassandra.thrift.CustomTThreadPoolServer$Factory.buildTServer(CustomTThreadPoolServer.java:257)
        ... 9 more
Caused by: java.lang.IllegalArgumentException: Cannot support TLS_RSA_WITH_AES_256_CBC_SHA with currently installed providers
        at sun.security.ssl.CipherSuiteList.<init>(Unknown Source)
        at sun.security.ssl.SSLServerSocketImpl.setEnabledCipherSuites(Unknown Source)
        at org.apache.thrift.transport.TSSLTransportFactory.createServer(TSSLTransportFactory.java:113)
        ... 11 more
Cannot start daemon
Service exit with a return value of 5

Полный вывод журнала Gist

cassandra.yaml Gist

Что мне не хватает?

Вам необходимо добавить расширение криптографии Java. См. Сообщение в блоге об этой проблеме здесь:

http://www.pathin.org/tutorials/java-cassandra-cannot-support-tls_rsa_with_aes_256_cbc_sha-with-currently-installed-providers/