Я пытаюсь реализовать многопользовательский встроенный SFTP без пароля с Apache MINA SSHD с помощью этого примера Здесь . Но когда я пытаюсь подключиться к серверу, он всегда требует пароль.
Проблема аутентификации по паролю
SshServer sshd = SshServer.setUpDefaultServer();
sshd.setHost("localhost");
sshd.setPort(2222);
sshd.setKeyPairProvider(new SimpleGeneratorHostKeyProvider());
sshd.setSubsystemFactories(Collections.singletonList(new SftpSubsystemFactory()));
sshd.setPasswordAuthenticator(
(username, password, session) -> username.equals("test") && password.equals("password"));
Path keys = Paths.get(".ssh/authorized_keys");
if (keys.toFile().exists()) {
sshd.setPublickeyAuthenticator(new AuthorizedKeysAuthenticator(keys));
log.info("File exists....");
}
sshd.start();
log.info("SFTP server started");
Я положил авторизованные_каны (опубликованные c файл ключа) внутри папки .s sh в проекте.
s sh папка для проекта сервера sftp