Генерация SSH-ключей
Рассмотрим создание SSH-ключей в Linux и Windows для подключения к серверу под управлением ОС Linux.
Использование SSH-ключей не только позволяет подключаться к серверу без пароля, но и повышает уровень безопасности сервера. Причина проста - пароль можно подобрать, а вот на подбор ключа могут уйти десятилетия. Ключ состоит из двух частей - открытой и закрытой. Именно открытый ключ передается на сервер, а закрытый ключ остается на ПК клиента. Если вы опасаетесь за безопасность ключа, его можно защитить парольной фразой при генерации.
Создание ключей выполняется командой
На что стоит обратить внимание.
OpenSSH поддерживает генерацию нескольких типов ключей:
- dsa
- ecdsa
- ed25519
- rsa
- rsa1
Последнее время, надежность DSA-ключей ставится под сомнение и рекомендуют использовать RSA-ключи.
Если отсутствует каталог “.ssh” в каталоге вашей учетной записи (это скрытый каталог), то он будет создан. Так было не всегда и возможно его придется создать вручную. passphrase - парольная фраза для защиты ключа. Если не желаете её задавать, тогда просто нажимаете Enter. Далее вводится подтверждение этой фразы, либо также Enter. В результате выполнения команды, будет показан слепок ключа и его псевдографическое изображение. Открытый ключ располагается по пути /home/administrator/.ssh/id_rsa.pub. Закрытый - /home/administrator/.ssh/id_rsa.
Рассмотрим создание ключа через утилиту PuTTY-Gen.
Скачаем ее с официального сайта, выбрав соответствующую разрядность своей операционной системы (не серверной).
Запускаем программу.
В открывшемся окне проверяем значение переключателя “Type of key to generate”, должно быть RSA, кликаем по кнопке Generate.
В обновленном окне программа нас просит выполнять случайные движения мышью в пустом поле программы. Таким образом программа получит случайные данные и создаст ключи.
Должен получиться примерно такой результат:
Копируем текст открытого ключа из поля “Public key for pasting into OpenSSH authorized_keys file:” временно в любой текстовый файл. Сохраняем закрытый ключ нажав соответствующую кнопку. При необходимости указываем парольную фразу.
Открытый ключ должен начинаться с ssh-rsa.
Добавление ключа.
Для успешного подключения к серверу следует прописать полученный открытый ключ в файл authorized_keys расположенном на сервере по пути:
В данном случае, имя пользователя administrator.
В *nix-подобный операционных системах экспорт открытого ключа на сервер выполняется командой:
remote_user_name - имя пользователя на удаленном сервере, под которым и будет происходить дальнейшее подключение.
10.10.0.1 - адрес сервера, в нашем случае, взят для примера. После выполнения команды, потребуется ввести пароль и более этого делать не придется., при попытках подключения с этого ПК.