Если бы у Вас есть зашифрованный корневой каталог, способ, которым Ubuntu делает это с EcryptFS, то это объяснило бы, что Вы испытываете. Ваш ~/.ssh/authorized_keys первые становится доступным после того, как Вы заставили свой первый пароль войти в систему.
Одним способом позволить прямой вход в систему ssh ключами является к определенному AuthorizedKeysFile вне дома каталог. Это могло бы быть сделано при помощи %u (пользователь) вместо %h (корневой каталог) в пути. Другая опция состоит в том, чтобы поместить копию ~/.ssh/authorized_keys в Вашей "размонтированной" версии Вашего корневого каталога. Именно это кладет под EcryptFS, монтируются.
Все же, не уверенный, насколько хороший любое из этих решений действительно сделает Вас. Необходимо будет все еще (отчасти) войти в использование пароля, чтобы смочь получить доступ регулярному корневому каталогу. Именно Ваш пароль пользователя используется для разворачивания пароля, должен был монтировать/дешифровать корневой каталог EcryptFS. Да, Вы могли все еще монтировать/дешифровать вручную, но это почти походит на другой вопрос.
Мое предположение - то, что это работает, после того как Вы зарегистрированы с аутентификацией пароля, потому что на стороне клиента Вы установили ControlMaster/ControlPath, которые позволяют повторное использование соединения для последующих соединений.
Попытайтесь увеличить уровень журнала на стороне сервера путем установки LogLevel на DEBUG3 и вырыть журналы (/var/log/auth.log) для наблюдения то, что продолжается.
На стороне клиента добавляют-vvv к ssh командной строке для наблюдения, который вводит клиент использует.
С обоими infos необходимо смочь выяснить то, что является gpoing на.
Ваш authorized_keys файл должен жить в .ssh папке, и это должно иметь 644 полномочий.
CP ~/.ssh/authorized_keys/etc/authorized_keys
и изменение/etc/ssh/sshd_config
AuthorizedKeysFile/etc/authorized_keys
и перезагрузите sshd/etc/init.d/ssh перезапуск