mirror of https://github.com/apache/cassandra
Disable SSLv3 for POODLE
patch by Jeremiah Jordan; reviewed by jasobrown for CASSANDRA-8265
This commit is contained in:
parent
be79142297
commit
b93f48a5db
|
|
@ -1,4 +1,5 @@
|
|||
2.0.12:
|
||||
* Disable SSLv3 for POODLE (CASSANDRA-8265)
|
||||
* Fix millisecond timestamps in Tracing (CASSANDRA-8297)
|
||||
* Include keyspace name in error message when there are insufficient
|
||||
live nodes to stream from (CASSANDRA-8221)
|
||||
|
|
|
|||
|
|
@ -61,6 +61,7 @@ public final class SSLFactory
|
|||
String[] suits = filterCipherSuites(serverSocket.getSupportedCipherSuites(), options.cipher_suites);
|
||||
serverSocket.setEnabledCipherSuites(suits);
|
||||
serverSocket.setNeedClientAuth(options.require_client_auth);
|
||||
serverSocket.setEnabledProtocols(new String[] {"SSLv2Hello", "TLSv1", "TLSv1.1", "TLSv1.2"});
|
||||
serverSocket.bind(new InetSocketAddress(address, port), 500);
|
||||
return serverSocket;
|
||||
}
|
||||
|
|
@ -72,6 +73,7 @@ public final class SSLFactory
|
|||
SSLSocket socket = (SSLSocket) ctx.getSocketFactory().createSocket(address, port, localAddress, localPort);
|
||||
String[] suits = filterCipherSuites(socket.getSupportedCipherSuites(), options.cipher_suites);
|
||||
socket.setEnabledCipherSuites(suits);
|
||||
socket.setEnabledProtocols(new String[] {"SSLv2Hello", "TLSv1", "TLSv1.1", "TLSv1.2"});
|
||||
return socket;
|
||||
}
|
||||
|
||||
|
|
@ -82,6 +84,7 @@ public final class SSLFactory
|
|||
SSLSocket socket = (SSLSocket) ctx.getSocketFactory().createSocket(address, port);
|
||||
String[] suits = filterCipherSuites(socket.getSupportedCipherSuites(), options.cipher_suites);
|
||||
socket.setEnabledCipherSuites(suits);
|
||||
socket.setEnabledProtocols(new String[] {"SSLv2Hello", "TLSv1", "TLSv1.1", "TLSv1.2"});
|
||||
return socket;
|
||||
}
|
||||
|
||||
|
|
@ -92,6 +95,7 @@ public final class SSLFactory
|
|||
SSLSocket socket = (SSLSocket) ctx.getSocketFactory().createSocket();
|
||||
String[] suits = filterCipherSuites(socket.getSupportedCipherSuites(), options.cipher_suites);
|
||||
socket.setEnabledCipherSuites(suits);
|
||||
socket.setEnabledProtocols(new String[] {"SSLv2Hello", "TLSv1", "TLSv1.1", "TLSv1.2"});
|
||||
return socket;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -27,6 +27,8 @@ import java.util.concurrent.ThreadPoolExecutor;
|
|||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
|
||||
import javax.net.ssl.SSLServerSocket;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
|
|
@ -251,6 +253,8 @@ public class CustomTThreadPoolServer extends TServer
|
|||
params.requireClientAuth(true);
|
||||
}
|
||||
TServerSocket sslServer = TSSLTransportFactory.getServerSocket(addr.getPort(), 0, addr.getAddress(), params);
|
||||
SSLServerSocket sslServerSocket = (SSLServerSocket) sslServer.getServerSocket();
|
||||
sslServerSocket.setEnabledProtocols(new String[] {"SSLv2Hello", "TLSv1", "TLSv1.1", "TLSv1.2"});
|
||||
serverTransport = new TCustomServerSocket(sslServer.getServerSocket(), args.keepAlive, args.sendBufferSize, args.recvBufferSize);
|
||||
}
|
||||
else
|
||||
|
|
|
|||
|
|
@ -296,6 +296,7 @@ public class Server implements CassandraDaemon.Server
|
|||
sslEngine.setUseClientMode(false);
|
||||
sslEngine.setEnabledCipherSuites(encryptionOptions.cipher_suites);
|
||||
sslEngine.setNeedClientAuth(encryptionOptions.require_client_auth);
|
||||
sslEngine.setEnabledProtocols(new String[] {"SSLv2Hello", "TLSv1", "TLSv1.1", "TLSv1.2"});
|
||||
|
||||
SslHandler sslHandler = new SslHandler(sslEngine);
|
||||
sslHandler.setIssueHandshake(true);
|
||||
|
|
|
|||
|
|
@ -259,6 +259,7 @@ public class SimpleClient
|
|||
SSLEngine sslEngine = sslContext.createSSLEngine();
|
||||
sslEngine.setUseClientMode(true);
|
||||
sslEngine.setEnabledCipherSuites(encryptionOptions.cipher_suites);
|
||||
sslEngine.setEnabledProtocols(new String[] {"SSLv2Hello", "TLSv1", "TLSv1.1", "TLSv1.2"});
|
||||
ChannelPipeline pipeline = super.getPipeline();
|
||||
|
||||
pipeline.addFirst("ssl", new SslHandler(sslEngine));
|
||||
|
|
|
|||
Loading…
Reference in New Issue