Обратите внимание, что параметр PasswordAuthentication не контролирует ВСЕ пароли на основе аутентификации. ChallengeResponseAuthentication обычно также запрашивает пароли.
PasswordAuthentication контролирует поддержку схемы аутентификации по паролю, определенной в RFC-4252 (раздел 8). ChallengeResponseAuthentication контролирует поддержку «интерактивной клавиатуры» схемы аутентификации, определенной в RFC-4256. Схема аутентификации «клавиатурно-интерактивная» теоретически может задавать пользователю любое количество разносторонних вопросов. На практике он часто запрашивает только пароль пользователя.
Если вы хотите полностью отключить аутентификацию на основе паролей, установите BOTH PasswordAuthentication и ChallengeResponseAuthentication в «no». Если вы относитесь к мышлению с поясом и подтяжками, подумайте о том, чтобы установить UsePAM на «нет».
Аутентификация на основе открытого / закрытого ключа (включается параметром PubkeyAuthentication) - это отдельный тип аутентификации, который, конечно, не включает отправку паролей пользователей на сервер.
Некоторые утверждают, что использование ChallengeResponseAuthentication более безопасно, чем PasswordAuthentication, потому что его сложнее автоматизировать. Поэтому они рекомендуют оставить PasswordAuthentication отключенной, а ChallengeResponseAuthentication - включенной. Эта конфигурация также поощряет (но не обязательно предотвращает) использование аутентификации по публичному ключу для любых автоматических входов в систему. Но, поскольку SSH является сетевым протоколом, сервер не может гарантировать, что ответы на ChallengeResponseAuthentication (также называемые «клавиатура-интерактив») фактически предоставляются пользователем, сидящим за клавиатурой, если вызов (-ы) всегда и состоит только в том, чтобы спросить у пользователя ее пароль.