Генерация SSH-ключей

Генерация SSH-ключей

https://t.me/admguides

Рассмотрим создание SSH-ключей в Linux и Windows для подключения к серверу под управлением ОС Linux.


Использование SSH-ключей не только позволяет подключаться к серверу без пароля, но и повышает уровень безопасности сервера. Причина проста – пароль можно подобрать, а вот на подбор ключа могут уйти десятилетия. Ключ состоит из двух частей – открытой и закрытой. Именно открытый ключ передается на сервер, а закрытый ключ остается на ПК клиента. Если вы опасаетесь за безопасность ключа, его можно защитить парольной фразой при генерации.

Создание ключей выполняется командой

ssh-keygen -t rsa


На что стоит обратить внимание.

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.


Скачаем ее с официального сайта, выбрав соответствующую разрядность своей операционной системы (не серверной).


Скриншот №1. Выбор разрядности операционной системы

Запускаем программу.


Скриншот №2. Запуск программы

В открывшемся окне проверяем значение переключателя “Type of key to generate”, должно быть RSA, кликаем по кнопке Generate.


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


Скриншот №3. Создание ключей

Должен получиться примерно такой результат:

Скриншот №4. Сгенерированный ключ

Копируем текст открытого ключа из поля “Public key for pasting into OpenSSH authorized_keys file:” временно в любой текстовый файл. Сохраняем закрытый ключ нажав соответствующую кнопку. При необходимости указываем парольную фразу.


Открытый ключ должен начинаться с ssh-rsa.


Добавление ключа.

Для успешного подключения к серверу следует прописать полученный открытый ключ в файл authorized_keys расположенном на сервере по пути:

/home/<имя_пользователя>/.ssh


В данном случае, имя пользователя administrator.


В *nix-подобный операционных системах экспорт открытого ключа на сервер выполняется командой:

cat ~/.ssh/id_dsa.pub | ssh -l remonet_user_name 10.10.0.1 "cat >> .ssh/authorized_keys"


remote_user_name – имя пользователя на удаленном сервере, под которым и будет происходить дальнейшее подключение.

10.10.0.1 – адрес сервера, в нашем случае, взят для примера. После выполнения команды, потребуется ввести пароль и более этого делать не придется., при попытках подключения с этого ПК.

Источник

Report Page