【发布时间】:2014-08-22 01:55:22
【问题描述】:
我正在运行基于 Apache MINA/FTP 的 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 进行测试,但我在这些客户端的设置中没有发现任何可以说明支持哪些密码套件的内容。
【问题讨论】:
-
您是否在服务器上配置了带有服务器证书的密钥库?
标签: ssl encryption ftp apache-mina