Открытые ключи SSH, не работающие; мой корневой каталог шифруется

Оболочка ищет выполнить путь ($PATH) программы, когда Вы даете ему команду для выполнения. Снабжение префиксом команды с путем, таким как./препятствует тому, чтобы оболочка искала, и дает оболочке команду использовать определенную программу, явно указанную.

Если программа находится в каталоге не в пути поиска затем, необходимо явно указать на путь к программе.

6
22.02.2015, 22:25
1 ответ

Вот решение по ссылке, которую я разместил в своем комментарии. Оно пришло по ссылке here, которая ссылается на этот пост суперпользователя.

Создайте папку .ssh в /home для хранения ключей

sudo mkdir /home/.ssh

Переместите существующий файл authorized_keys в dir .ssh в качестве имени пользователя

sudo mv ~/.ssh/authorized_keys /home/.ssh/username

Создайте символическую ссылку на файл authorized_keys в файле пользователя . ssh dir

ln -s /home/.ssh/username ~/.ssh/authorized_keys

Обновите sshd_config файл, чтобы установить новый путь к файлу authorized_keys

sudo vim /etc/ssh/sshd_config

Измените строку AuthorizedKeysFile на:

AuthorizedKeysFile      /home/.ssh/%u

Перезагрузите компьютер

sudo shutdown -r now

Войдите на сервер, и вам будет представлен минимальный нерасшифрованный домашний каталог.... Вам нужно будет создать и отредактировать файл .profile, чтобы получить ecryptfs для монтирования вашей домашней директории.

sudo vim ~/.profile

Добавьте эти строки:

ecryptfs-mount-private
cd /home/username

Выйдите/перезапустите и снова войдите. Вам нужно будет запросить пароль после SSH ключа auth, а затем предъявить расшифрованный домашний каталог.

Теперь вы сможете входить в систему каждый раз, используя SSH-ключи, независимо от того, расшифрована ваша домашняя директория или нет.

5
27.01.2020, 20:28

Теги

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