Настройте проверку клиента с помощью Apache Commons FTPSClient - PullRequest
0 голосов
/ 30 апреля 2019

У меня есть следующий код, где я выполняю проверку сервера с помощью TLS1.2 с использованием Apache Commons FTPSClient.

File storeFile = new File("pure-ftpd.jks");
KeyStore keystore = loadKeyStore("JKS", storeFile, "password");
X509TrustManager defaultTM = TrustManagerUtils.getDefaultTrustManager(keystore);
String[] TLSversions = new String[]{"TLSv1.2"};
FTPSClient ftpTLS = new FTPSClient("SSL", false);
ftpTLS.setEnabledProtocols(TLSversions);
ftpTLS.setTrustManager(defaultTM);
ftpTLS.addProtocolCommandListener(new PrintCommandListener(new PrintWriter(System.out), true));
ftpTLS.setRemoteVerificationEnabled(true);
ftpTLS.setDefaultPort(21);
ftpTLS.connect("127.0.0.1", 21);

Это работает, как и ожидалось.Теперь я хотел бы представить подтверждение сертификата клиента, когда мне не требуется пароль, а проверка подлинности выполняется только сертификатом клиента.

Как мне настроить это с помощью Apache Commons FTPSClient?

Я обнаружил следующееПодобный вопрос, однако принятый ответ выглядит точно так же, как Проверка сертификата сервера. Как настроить аутентификацию клиента с помощью сгенерированного сертификата в сети apache-commons net

...