вход в систему ssh с помощью ssh ключи только работает однажды после над входом в систему сайта

У меня есть интересная проблема с ssh. Вот установка.

У моего клиента (под управлением Ubuntu 17.04) есть общедоступные и частные ssh ключи. Я скопировал по открытому ключу в сервер (рабочий Сервер Ubuntu 16.04.3 LTS) использование ssh-copy-id команда. Я проверил работавший путем рассмотрения authorized_keys файла на сервере; открытый ключ моего клиента является единственным перечисленным.

Теперь на проблему. Я могу войти в сервер от клиента через ssh, с помощью моего частного ssh-ключа. Но после того, как я выхожу из системы и пытаюсь к ssh снова, я получаю следующую ошибку:

Permission denied (publickey).

Когда я вхожу в сервер в консоли, я использую свой пароль для входа в систему, и это хорошо работает. Затем, когда я пробую к SSH снова от моего клиента, он работает снова. И я могу выйти из системы и входить в систему так много раз, как я хочу. Как только я выхожу из системы от консоли на сервере (как, я физически в сервере, зарегистрированном перед этим), я могу SSH от своего клиента точно Еще раз. Затем, как только та сессия заканчивается, я добираюсь Permission denied (publickey).ошибка снова на всех последующих попытках SSH. Какие-либо идеи?

Вот мой ssh файл конфигурации на моем клиенте:

Host sauron
        HostName 192.168.1.191
        User joe
        PubKeyAuthentication yes
        IdentityFile id_rsa

Еще одна вещь упомянуть, у меня действительно есть весь SSD на сервере зашифрованным. Я должен разблокировать его каждый раз, когда я загружаю сервер с паролем шифрования. Не уверенный, если это релевантно. Я подозреваю, что это могла быть проблема полномочий, хотя я не уверен в этом также. Предложения очень ценились бы, и спросите, нужно ли Вам разъяснение по поводу чего-нибудь.

2
задан 26 August 2017 в 09:15

1 ответ

Благодаря @muru комментируют о зашифрованных корневых каталогах, я велся к этой статье о том, как иметь дело с этим.

TLDR; из той статьи следующим образом и решил мою проблему:

  1. Создайте каталог в /etc/ssh/ с тем же именем как зарегистрированный пользователь Вы используете. В моем случае: /etc/ssh/joe.

  2. Скопируйте authorized_keys файл к этому каталогу.

  3. Набор корректные полномочия этого файла и каталог пользователю.

  4. Добавьте следующую строку к sshd_config файлу:

AuthorizedKeysFile /etc/ssh/%u/authorized_keys

  1. Перезапуск SSH.

Все зафиксированные!

0
ответ дан 2 December 2019 в 08:43

Другие вопросы по тегам:

Похожие вопросы: