Как реализовать аутентификацию без пароля для встроенного SFTP с Apache MINA SSHD - PullRequest
0 голосов
/ 18 марта 2020

Я пытаюсь реализовать многопользовательский встроенный 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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...