Я успешно установил Cygwin на свой сервер 2012 года.

Теперь я хочу включить основанный на ключах вход в систему.

Я много искал для этого (я не гуру Linux) и все, что я нашел, вращается вокруг добавления ключа в файл /.ssh/authorized_keys.

Проблема в том, что я не могу найти папку .ssh, чтобы создать файл и добавить ключ к нему.

В некоторых сообщениях предлагается проверить, определена ли домашняя переменная или нет, выполнив

echo $HOME

команду и посмотрим, выведет ли он что-нибудь или нет.

Outpu был

$ echo $HOME
/home/admin

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

Я нашел этот вопрос, но я не мог получить точные шаги от него.

Спасибо

2 ответа2

0

Самый простой способ - запустить ssh-copy-id user@host , который скопирует ваши открытые ключи в правильное расположение на host .

Копирование этого вручную вызывает часто проблемы с правами доступа.

0

Для тех, у кого не установлен «ssh-copy-id», или тех, кто временно не может установить его по какой-либо причине, следующая однострочная строка Bash всегда является допустимой заменой:

$ PUB="$(cat ~/.ssh/id_rsa.pub)"; ssh user@host "mkdir -p ~/.ssh; echo $PUB >> ~/.ssh/authorized_keys; chmod 700 ~/.ssh; chmod 600 ~/.ssh/authorized_keys"

Тильда-слэш (~/) на удаленном хосте, вероятно, не нужна, но я включаю ее на всякий случай, чтобы избежать каких-либо странных и / или непредвиденных сценариев.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .