Я использую FTP-сервер на основе Apache MINA/FTP, и я продолжаю получать следующее исключение при попытке подключения в режиме SSL:
javax.net.ssl.SSLHandshakeException: no cipher suites in common
Я проверил, что наборы шифров установлены правильно на стороне клиента, например:
SSLServerSocketFactory serverSocketFactory = (SSLServerSocketFactory)
SSLServerSocketFactory.getDefault();
String[] cipherSuites = serverSocketFactory.getDefaultCipherSuites();
SslConfigurationFactory sslConfigFactory = new SslConfigurationFactory();
sslConfigFactory.setKeystoreFile(keyStoreFile);
sslConfigFactory.setKeystorePassword(keyPass);
sslConfigFactory.setEnabledCipherSuites(cipherSuites);
sslConfigFactory.setSslProtocol("SSL");
SslConfiguration sslConfig = sslConfigFactory.createSslConfiguration();
sslFactory.setSslConfiguration(sslConfig);
Listener listener = sslFactory.createListener();
serverFactory.addListener("SSL-listener", listener);
Итак, как мне убедиться, что наборы шифров, используемые на стороне клиента, совпадают с теми, которые предоставляются на стороне сервера?
Я использую FileZilla и Cyberduck для тестирования, но я не нашел в настройках этих клиентов ничего, что указывало бы, какие наборы шифров поддерживаются.