Как мне настроить аутентификацию по открытому ключу?[закрыто]

StackOverflow https://stackoverflow.com/questions/7260

Вопрос

Как мне настроить аутентификацию с открытым ключом для SSH?

Это было полезно?

Решение

Если у вас установлен SSH, вы должны быть в состоянии запуститься..

ssh-keygen

Затем выполните следующие действия, и у вас будет два файла, id_rsa и id_rsa.pub (первый - это ваш закрытый ключ, второй - это ваш открытый ключ, который вы копируете на удаленные компьютеры)

Затем подключитесь к удаленному компьютеру, на который вы хотите войти, к файлу ~/.ssh/authorized_keys добавьте содержимое вашего этого id_rsa.pub файл.

О, и еще chmod 600 все эти id_rsa* файлы (как локальные, так и удаленные), чтобы другие пользователи не могли их прочитать:

chmod 600 ~/.ssh/id_rsa*

Аналогичным образом, убедитесь, что удаленный ~/.ssh/authorized_keys файл является chmod 600 также:

chmod 600 ~/.ssh/authorized_keys

Затем, когда вы сделаете ssh remote.machine, он должен запросить у вас пароль ключа, а не у удаленного компьютера.


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

`ssh-agent`

В некоторых дистрибутивах ssh-agent запускается автоматически.Если ты побежишь echo $SSH_AUTH_SOCK и он показывает путь (вероятно, в /tmp/), который уже настроен, так что вы можете пропустить предыдущую команду.

Затем, чтобы добавить свой ключ, вы делаете

ssh-add ~/.ssh/id_rsa

и введите свою кодовую фразу.Он хранится до тех пор, пока вы его не удалите (используя ssh-add -D команда, которая удаляет все ключи из агента)

Другие советы

Для Windows это это хорошее введение и руководство

Вот несколько хороших ssh-агентов для систем, отличных от linux.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top