Для корректной авторизации по ключу нужно, чтобы в authorized_keys на сервере ключ был в формате, например:
ssh-rsa собственно_ключ пользователь@сервер
В противном случае будет отлуп по причине “Public key for %user% not found”.
Дебаг проблем с подключением через запуск демона вручную на другом порту с ключом “-d”. Указание до трех раз подряд увеличивает уровень информативности.
/usr/sbin/sshd -d -d -d -p 222
Если ключ генерируется через puttygen, рекомендуют вычищать лишние переносы строки в теле ключа. Не знаю насколько актуально. С невычищенным ключом не пробовал.
Если включено шифрование домашних папок пользователей была рекомендация переносить хранилище публичных ключей в /etc/ssh. В противном случае, подключиться в ssh получается только если пользователь уже заавторизован на сервере локально.